►
Description
Watch this cool holiday Secret Santa gift exchange demo utilizing Microsoft Teams and Power Apps integrations by April Dunnam @AprilDunnam.
This video is taken from the December Microsoft Teams community call
https://youtu.be/pYok2qqvsLw
Stay connected
Twitter https://twitter.com/microsoft365dev
YouTube https://aka.ms/M365DevYouTube
Blogs https://aka.ms/M365DevBlog
A
Since
it's
almost
the
holidays
with
the
holiday
theme
here
and
really,
what
I'm
trying
to
do
is
show
like
the
power
of
the
universe
for
team.
So
I
want
to
show
the
three
main
components.
So
I'm
going
to
show
a
power
app
for
a
secret
santa
giveaway
contest
and
I'm
going
to
show
the
backend
of
how
there's
a
power
automate
flow.
That's
going
to
send
notifications
via
teams
to
the
users
to
let
them
know
who
they've
been
matched
with
and
then
also
just
for
a
little
extra
piece
of
functionality.
A
A
So,
first
of
all,
I
thought
I'd
do
a
very
quick
overview
of
like
how
do
you
even
start
building,
say
powerapps
within
this.
So
there
is,
like
wes,
mentioned
a
new
powerapps
application
specifically
for
teams,
so
you
would
go
and
click
on
that.
There
in
the
left,
rail
and
that
will
open
a
fully
baked
powerapps
editor
just
for
building
these
dataverse
for
teams
applications.
A
So
if
we
go
to
the
build
tab,
you
can
see
that
these
environments
get
created
per
team
that
you
associate
it
with
so
I've
created
a
team
here
called
secret
santa.
So
if
I
click
on
that,
I
can
see
on
this
built
by
this
team
tab
everything
that
I've
built
related
to
this
secret
santa
solution
that
I've
built.
So
you
can
see,
I
have
a
secret
santa
canvas
app.
I
have
that
power
virtual
agent
gift
idea
flow.
I
have
my
chat
bot
and
then
here
are
my
tables.
A
So
that's
the
data
source
now
one
of
the
biggest
benefits
of
dataverse
for
teams
is
the
fact
that
we
can
leverage
the
true
relational
database
and
all
the
benefits
we
get
with
the
data
first
for
team
system.
So
I
can
see
I
have
three
tables,
so
it's
a
really
simple
solution
here.
So
I
have
my
events
in
a
table
and
one
of
the
things
I
love
about
this
is
the
editor
is
really
kind
of
modern
sharepoint-esque.
A
So
we
can
see
you
know
the
the
entities
and
the
columns
the
relationships
and
views,
but
if
we
click
edit
data,
I
can
see
all
of
my
data
in
here
for
the
events
that
I
currently
have,
and
it
looks
you
know
I
could
edit
it
in
line.
So
that's
that's
the
power
and
the
benefit
of
that
now.
Let's
just
walk
through
the
solution,
so
you
can
see
that
I
was
able
to
deploy
this
actually
here
in
the
left
rail.
So
I
have
a
secret
santa
application.
A
That's
going
to
load
just
show
some
visuals
like
you
can
move
stuff,
so
santa's
ice
skating
around
here
and
then
that's
going
to
take
us
to
the
management
screen.
So
main
things
we're
trying
to
accomplish
here
is
listing
the
events
that
you
can
be
a
part
of,
because
really
what
I'm
trying
to
do
with
this
is
have
it
as
a
one-stop
shop
to
where
for
different
groups
or
people
organizations
within
your
business.
You
can
have
different
gift
exchange
or
secret
santa
events,
so
you
can
join
different
ones
and
they'll
show
up
here.
A
Under
my
events,
you
can
see
things
like
when
the
event's
going
to
be
what
the
budget
is
for
the
gift
and
if
the
matches
have
been
drawn
yet
and
then
we
can
see
the
different
events
that
we
could
join.
We
get
a
teams,
ask
experience
here
where
we
can
see
well
who's
currently
participating
in
this
event.
So
I
can
see
if
it's
something
I
want
to
join
hover
over,
that
I
can
see
their
names
so
like
bob's
participating
here
on
the
hr
department
gift
exchange.
Now
I
can
go
in
and
join
so.
A
What
I'm
going
to
do
is
I'm
actually
going
to
switch
over
here
to
the
preview
and
we'll
just
walk
through
a
scenario
so
say
I
want
to
join
the
it
department
secret
santa
I
can
go
and
click
our
join
button.
It'll.
Take
me
to
the
screen
where
I
can
sign
up
it's
going
to
pre-fill
some
information
I'll
just
put
in
an
address
and
I'll
put
in
some
things
I
like.
So
this
is
kind
of
what's
going
to
power
that
engine
in
the
back
end,
we
can
give
gif
suggestions.
A
So
I'm
going
to
say
I
like
singing
right.
So
on
the
left
you'll
see
we
have
some
details
about
this
again,
so
I
can
know
what
the
budget
is.
So
I
know
what
to
expect
the
max
participants
when
the
deadline
to
sign
up
is
so.
You
know
it'll
kind
of
restrict,
what's
shown
here
if
it's
past
the
deadline
to
sign
up
and
some
details,
so
I'm
just
going
to
click
this
check
box
and
that's
going
to
register
me
I'll,
see
a
confirmation
that
I'm
all
set
and
know
when
we're
going
to
get
the
match
results.
A
So
now
I'm
going
to
go
home.
So
now
it's
going
to
show
up
here
on
my
my
event
section
now,
I'm
both
participating
in
the
hr
and
the
it
gift
exchanges.
Now
how
do
we
actually
draw
the
matches
and
get
that
notification
so
to
do
that?
We're
going
to
go
here
to
manage
events
and
I'm
going
to
click
on,
say
we'll.
A
Do
this
it1
and
we'll
just
put
this
in
edit
mode
and
I'm
just
going
to
select
this
draw
names
button,
so
this
is
going
to
in
the
background,
do
some
fairly
complex
logic
to
loop
through
everyone.
That
said,
they
want
to
participate
in
this
and
match
them
up.
So
it's
doing
things
like
making
sure
that
you're
not
matched
up
to
yourself
right.
So
that's
gonna
load,
that's
running
in
the
background.
Now
I
should
get
a
notification.
A
You
see
something
popped
up
here
in
the
chat,
so
I'm
gonna
click
on
my
chat
message
and
we
see
I
have
an
adaptive
card
from
the
flowbot,
so
this
is
happening
behind
the
scenes.
I
get
a
notification
that
for
the
it
department
secret
santa
I've,
been
matched
with
henrietta
mueller.
I
can
see
our
contact
information,
so
I
know
who
to
send
my
gift
to
and
I'm
even
getting
a
link
to
some
gift
ideas
to
a
power
virtual
asian
bot.
So
I
can
get
the
gift
ideas.
So
let's
see
how
the
interaction
with
the
bot
works.
A
So
I'm
going
to
click
here
on
the
left,
rail
and
I
see
I
have
this
secret
santa
gift.
Helper
first
thing
I'm
going
to
do.
I
want
to
make
sure
I'm
spelling
her
name
right
because
I'll
need
that
for
my
bot.
So
let
me
just
copy
her
name
there
and
we
will
go
over
here.
Back
to
my
butt,
so
what
I'm
going
to
do?
A
I'm
just
going
to
ask
my
bot
say:
I
want
gift
ideas:
okay,
my
bot's
gonna
call,
it's
gonna
respond
to
me
and
this
is
all
built
with
dataverse
for
teams
and
pva
low
code,
no
code
needed.
So
it's
gonna.
Ask
me
who's
this,
for
who
are
you
trying
to
get
gift
ideas
for
so
I'll
type
in
henrietta's
name,
it's
going
to
call
back,
and
it's
going
to
look
at
that
dataverse
for
teams
tables
that
I
have
it's
going
to
return
the
keywords.
A
So
what
we've
said
that
we
like
when
we
register
for
this
and
return
a
link
to
shop
for
that
in
amazon,
and
actually
I
think
I
forgot
to
put
what
henrietta
liked.
So
let
me
try
someone
else.
I'm
pretty
sure
bob
is
in
there
as
well,
and
I
did
fill
out
a
like
for
him.
So
we're
gonna
do
a
search
for
bob
there
we
go
and
I'll
just
copy
that
amazon
shopping
url
and
I'm
going
to
get
some
instant
gift
ideas
for
bob.
A
I
know
he
likes
guitar
a
lot,
so
I
can
pick
out
some
nice
accessories
for
him
so
kind
of
a
fully
functioning,
fully
baked
solution
that
we
have
here
using
powerapps
power,
automate
power,
virtual
agents,
all
within
microsoft,
dataverse
for
teams
now
we'll
take
a
look
at
some
of
the
backend
and
kind
of
what's
going
on
here.
Some
of
the
the
logic
that
we
see
a
lot
of
this
is
in
the
draw
names
button.
A
So
this
is
where
some
of
that
complex,
how
are
we
deciding,
for
example,
just
to
get
unique
people
and
assign
those?
So
if
I
expand
out
our
formula
bar
here,
we
can
kind
of
see
how
complex
and
you
know
some
of
the
stuff
that
we
can
do
within
powerapps.
That
looks
almost
like
full
code
esque.
The
first
thing
I'm
doing
is
I'm
using
a
for
all,
which
is
a
way
to
do
a
loop
like
we
would
in
traditional
code.
A
So
I
have
a
collection
of
the
people
that
have
signed
up
a
local
collection
for
this
particular
event.
So
I'm
going
to
loop
through
those
and
I'm
going
to
put
that
out
using
the
collect
function
to
another
collection
to
pair
them
up.
So
one
of
the
things
how
I'm
doing
this
is
getting
the
unique
receiver.
So
I
have
you
know
a
database
in
the
background,
if
we
kind
of
pop
back
over
to
this
real
quick
I'll
show
you
the
how
that
works.
A
We
have
those
three
tables,
if
you
recall
so
I'll,
go
back
here
in
the
built
by
this
team.
We
see
we
had
events,
so
those
are
the
events
that
show
we
have
participants.
So
this
is
where,
when
you
click
that
join
button,
it's
going
to
get
outputted
here
to
this
participants
list
or
table
within
dataverse
for
teams.
So
I
can
see
there's
everyone's
that
signed
up
their
mailing
address
and
then
that's
the
like
information.
A
Now
I
have
another
table
for
pairs,
so
this
is
where
I'm
going
to
click
that
button
that
I
was
just
showing
in
powerapps
and
it's
going
to
match
people
up.
So
when
I
ran
that
before
you
see
that
it
took
everyone
that
participated,
it
has
a
giver
column.
So
that's
the
person
that
will
be
giving
their
gift
and
then
it
has
a
receiver,
so
it
paired
them
up.
So
we
each
have
someone
to
give
a
present
to
and
someone
to
receive
one.
So
that's
what's
happening
in
the
background
here.
A
A
We
have
another
function
here,
that's
available
in
power-ups
called
shuffle,
so
we
want
this
to
be
random,
so
shuffle
is
going
to
allow
us
to
pass
it
in
a
data
source
and
it's
going
to
randomly
kind
of
mix
up
the
order
of
that.
So
I
can
combine
that
with
our
first
to
get
one
unique
person
as
the
receiver
from
that
particular
list.
A
So
that's
going
to
add
that
into
a
local
collection
for
me
and
match
those
up
now.
What
I
want
to
do
is
I'm
actually
passing
in
power
automate
this
data
of
the
pairs
to
power
automate.
To
do
that.
I
need
to
convert
this
to
json
because
I'm
going
to
pass
a
json
object
to
power
automate
so
that
it
can
go
and
loop
through
that
and
notify
the
people
via
chat,
like
you
just
saw
so
I'm
going
to
create
a
collection
based
off
of
this
called
collection,
json
pairs
and
format
the
values
as
a
json
object.
A
A
So
I
have
a
flow
called
secret
santa
pair
notification,
so
I'm
going
to
do
a
dot
run
and
I'm
going
to
pass
in
json
using
the
json
function
in
powerapps.
I'm
going
to
take
that
collection
and
just
pass
it
as
a
json
format
of
compact.
So
now
the
flow
can
kick
off
and
kind
of
get
started
with
that,
and
we
can
take
a
quick
look
as
well
at
this
flow
here.
So
I'm
going
to
go
to
power
automate
and
we
will
edit
this
okay
so
now
that
this
is
being
passed
over
as
json
to
this.
A
So
what
this
is
going
to
do
the
trigger
is
going
to
be
for
powerapps,
so
I'm
executing
this
particular
flow
from
powerapps
itself
and
it'll
load
up
there.
We
go
so
I'm
going
to
put
in
that
json
input
into
a
compose
and
then
I'm
going
to
parse
that
json.
So
with
the
parse
action
we
can
pass
it
in
and
inputs
and
we
can
generate
from
a
sample.
So
I
just
kind
of
put
a
sample
of
what
my
json
block
will
look
like
from
the
powerapp
and
now
I'm
just
going
to
loop
through
that.
A
So
it's
really
as
simple
as
that.
That's
what's
going
on
there
we'll
just
go
back
to
the
app
and
look
at
that
draw
names.
So
that's
pretty
much
it.
It's
calling
the
flow
and
clearing
out
some
values.
So
that's
probably
the
most
complex
logic
of
the
entire
application
that
you're
seeing
here
yeah.
So
I
mean
that's
pretty
much
all
that
I
had
for
for
the
demo.
A
Hopefully
you
know
it
kind
of
showed
you
how
all
these
different
pieces
and
dataverse
for
teams
can
mix
and
match
together
and
give
you
some
ideas
of
how
you
can
use
that,
and
one
of
the
cool
things,
too
is,
as
wes
was
saying
before
these
are
kind
of
responsive
out
of
the
box.
So
I
can
see
I
have
it
here
taking
up
the
full
real
estate
of
the
screen,
but
I
can
go
say:
have
this
also
embedded
as
a
tab
within
a
team.
A
So
I
have
my
secret
santa
team
and
the
general
channel,
and
I
have
the
same
app
embedded
here
where
it's
taking
up
slightly
less
real
estate
and
it
still
responds
and
works
correctly
right.
So
I
guess
I'll
give
it
back
to
you
june's.
I
don't
know
if
we
have
any
questions
or
anything,
but
that's
really
all
that
I
I
had
to
show
about
demo.
B
A
Yeah
so
yeah,
I
want
to
just
one
of
the
things
I
want
to
put
in
that
sample
the
repo
that
bob
was
showing.
B
C
Hi,
first
of
all,
thank
you
april.
Thank
you
very
much.
You're
doing
all
the
women
here
proud.
My
question
would
be:
it
was
heavily
based
on
power
apps.
Actually,
I'm
finding
it
really
easy
to
find
very
simple
examples
of
how
it
works
and
very
difficult
ones,
but
nothing
is
good
enough
for
intermediate.
Do
you
have
any
recommendations
where
he
explains
a
bit
in
more
detail
that
the
functions
and
everything
that
you
used
in
there
native
to
to
powerapps,
actually
where
I
could
work
on
this
one
from
an
intermediate
kind
of
standpoint?
A
Thanks
yeah
good
question:
you
know:
there's
lots
of
obviously
the
learn,
documentation
kind
of
walks
you
through
a
lot
of
that.
You
know
a
lot
of
the
the
hard
stuff
is
just
knowing
what
formulas
are
there
and
when
to
use
them.
There's
a
great
resource
on
docs
on
microsoft.com
that
lists
every
single
formula
that
you
could
possibly
use
in
powerapps
and
you
know,
explains
it
at
a
high
level
and
some
shows
you
some
samples
of
how
it's
used
so
to
me
like
that,
would
be
a
good.
A
You
know,
step
for
the
intermediate
levels
to
really
get
a
good
feel
for
the
formulas
and
what's
available
and
like
when
to
use
collections
and
all
that
so
and
then
also
the
power
users
community,
if
you're
wanting
more
like
app
samples
themselves,
if
you
go
to
powerusers.microsoft.com
in
the
powerapps
forum,
people
post
in
the
community
all
kinds
of
app
samples
that
you
can
look
from
and
kind
of
all
from
like
easy
ones
to
hard
to
the
the
middle
of
the
line
type
functionality.
A
So
you
can
install
in
yours
and
kind
of
see
what
they're
doing-
and
you
know
learn
from
that.
So
hopefully,
that's
helpful.
D
A
It's
included
in
your
team's
licensing,
so
you
know
I
say
I
would
say
most
of
your
team's
licensing,
so
I
don't
know
if,
like
the
first
line
workers
that
includes
teams
but
like
your
e3's,
your
business
premiums,
things
like
that
includes
it
now
that
when
we
say
includes
it,
that
means
you
can
you
know,
leverage
the
the
database.
A
You
know
so
like
the
dataverse
for
teams
database
and
all
that,
but
you
still,
if
you're
in
azure
api
management,
but
if
you're
still
wanting
to
do
some
other
things
that
would
be
considered
premium
like
like
a
custom
connector
like
you,
know
those
premium
connectors
that
will
still
require
an
additional
license,
but
just
to
use
you
know,
like
the
data
versus
your
team's
database,
you
don't
have
to
pay
additional
licensing.
It's
included
in
your
team's
licensing.
E
You
know
I'm
preparing
myself
for
a
exam
regarding
power
platform
and
I
found
there
a
lot
of-
or
at
least
one
big
topic
about,
assigning
roles
to
the
cds
command
data
service,
or
now
it
is
called
universe
and
is
it
still
valid
in
a
team's
environment,
or
can
we
just
skip
it
and
we
shouldn't
worry
about
assigning
roles
and
all
those
security
things.
A
Well,
it's
different
in
the
team's
environment
for
dataverse
for
teams,
because
it's
going
to
leverage
natively
like
your
team's
permission
groups.
So
we
have
our
owners,
our
members
and
guests,
so
it
kind
of
out
of
the
box
will
take.
Whoever
is
in
the
team
that
you're
deploying
the
app
to
and
leverage
that
now
you
can
do
some
more
granular
role
stuff
still,
so
I
think
it
still
applies.
A
You
know
in
some
ways
to
data
version
teams,
especially
if
you
know
that
that's
good
concepts
to
know,
especially
if
you
want
to
like
move
it
off
offload
it
to
the
full-fledged
version
of
dataverse
as
well.
F
A
I
I
would
package
everything
I
would
use
the
solutions
mechanism
which
allows
you
to
create
a
package
of
everything
included
in
the
solution.
So
if
that
includes
flows,
if
it
includes
pva
package
that
all
up
together
and
move
it,
you
know
from
your
different
dev
test,
prod
environments
as
one
package
just
for
you
know,
alm
and
keeping
it
all
you
know
separate
would
be
the
best
practice.
In
my
opinion,
awesome.