# はじめに Igniteで発表されましたPower Appsカードを皆さんはご存知でしょうか?
これはIgniteで発表されるちょっと前から画面上に表示されており、カードの作成も行うことができました。
前試したときは、Teamsに送ってもリンクを手動で送り付けて、ユーザはそれを開くだけ。とかいう存在意義がよくわからなかったものだったのですが、(多分)最近か今回の発表に合わせてTeams内のPower Appsアプリが更新されたので、カードをTeamsで表示できるようになりました。
Power Appsカードを作成してみる
「カードを作成する」からカードの名前を設定すると、カード編集画面が表示されます。
すると、キャンバスアプリの編集画面っぽい画面が表示されます。
現在利用できるコントロールは以下があるようですね。
データソースを追加できるけど、Dataverseしか利用できないっぽい(?)
初めからテキストラベルが2つ設定されていますが、邪魔なので消しちゃいましょう。
削除はAdaptive Cards Designerでのようなやり方で削除できるほか、Deleteボタンやツリービューのコントロール一覧から削除することができます。
コントロールは配置したいコントロールを選択するだけでカード内に順に配置されていきますね。
コントロールの順番を変えたいときは、Adaptive Cards Designerと同様にドラッグ & ドロップで変更が可能です。
また、こちらからも変更可能ですね。
配置したコントロールの設定は左側のプロパティペインから変更できる他、上の関数バーから変更することが可能です。
キャンバスアプリと同じですね。
赤枠のラベルには変数の値を設定したいと思います。
変数の利用方法はキャンバスアプリとちょっと異なるようです。
カードで変数を利用する際はまず、変数を作成してあげる必要があります。
numという変数を作成し、初期値0にしました。
ラベルに表示させたいのでラベルのTextに設定します。
設定後カードではこのように表示されます。
キャンバスのようにnumの数値が表示されてくれるわけじゃないようですね。
このnumの値をユーザ操作によって変えられるようにします。
ボタンを追加して、ボタンにはキャンバスアプリ同様OnSelect
があるので、ここにPower Fx式を記載します。
UpdateContext
は利用できないようなのでSet
を利用しました。
これでボタンが押されるたびにnumの値が1ずつ増えていってくれるはずですね。
「再生」を押して動作を確認してみましょう。
保存して再生を行います。
こんな感じの画面が表示されるので、動作確認します。
デバッグ情報をみると入力項目に入力された値や変数の値を確認することができます。
ただ、こちらボタンが押されたとき(というかアクション項目が実施されたとき?)に更新されるようです。
つまり、テキスト入力になにか入力したら即時デバッグ情報に表示されるわけではないということです。
動作に問題がなければ、「送信」を選択して表示されたURLをコピーします。
作成したカードをTeamsで送る
Microsoft Teams でカードを共有する (プレビュー)
作成したカードをTeamsで表示させるにはTeamsにPower Appsアプリが必要なようです。
画像のように検索してPower Appsを選択します。
チャットに送りたい場合は「チャットに追加」、チャネルに送りたい場合は「チームに追加」 でそれぞれ送信したいチャットやチャネルを選択します。
追加しましたら、追加先のチャットやチャネルで先ほど作成したカードのリンクを送ります。
ただ注意が必要な点として、メッセージ送信前の状態で以下のようにカードが表示されていない状態で送ってしまうと、送信後もカードが表示されませんのでご注意ください。
送られたメッセージはこんな感じで、カードの操作もできます。
ただ、ドキュメントのサンプルのようにリンクなしではメッセージ送れないんですよねーー
わかんない。。。
おわりに
こちらだとAdaptive Cardと違い、Power Fxが利用できる他、Dataverseとの接続もできるようなのでAdaptive Cardとは差別化できそうですね。
ただ、Adaptive Card程アクションやトリガーがないのが現時点での難点ですね。。。