こんにちは、今日もPowerAppsなあんこ先生です。
アプリの操作結果を、ユーザーやグループに通知したいことありませんか?
あわよくばタスクを割り当てられたら便利だなって
でもPowerAutomateは苦手って人多いですよね。
実はそれ、アプリから直接行えますよ。
上司に切り出しにくい案件も、ボタンひとつでアプリが肩代わりしてくれます。
今回はそんな機能を紹介します。
こんな人にオススメ
- PowerAutomateは苦手
- 即時に通知したい
- 気になるあの子にアプローチしたい
今回紹介するのは、PowerAppsからメール送信、チャット投稿、タスク割り当てを行う方法です。
アプリから直接行うため、面倒なPowerAutomateの設定はいりません。
また、面倒なメール作成などから解放されます。
生産性の向上はもちろん、伝達忘却を防げるため、業務品質にも貢献できますね。
きっと上司に評価されることでしょう!
メール送信は別段問題ありませんが、TeamsやPlannerはアプリを操作するユーザーがそのグループの権限を持っていないと機能しません。
権限がない場合は、PowerAutomateで代理操作してください。
01│メール送信で通知
メール送信機能
Office365Outlookコネクタを接続することで、アプリからメールを送信できるようになります。
使うアクションはたったひとつ、SendEmailV2です。
構文とパラメーターは次の通りです。とってもかんたん。
なお、3つのパラメーターはすべてテキストなので二重引用符で括ります。
Office365Outlook.SendEmailV2(“アドレス”,”タイトル”,”本文”)
直接入力すると次の通りです。
Office365Outlook.SendEmailV2(“xxx@xxx.com”,”こしあんについて”,”おいしいですよね?”)
また、汎用性を持たせるためにコントロールや変数を割り当てることもできます。
その場合、二重引用符は不要です。
Office365Outlook.SendEmailV2(TextInput01.Text,_Title,HtmlText1.HtmlText)
本文にHtmlTextコントロールを使うと、色や改行を確認しながら作成できるのでオススメです!
Office365Outlookコネクタの使い方はコチラをご確認ください。
引用元:Office 365 Outlook – Connectors | Microsoft Docs
メールの宛先
毎回特定の人にメールするのであれば、メールアドレスを調べて埋め込みます。
とはいえ、宛先が日によって変わったりするのが実情ですよね。
そんなとき、便利なのがOffice365グループコネクタです。
これをGalleryコントロールと組み合わせれば、グループに参加しているメンバーの一覧をかんたんに作成できます。
その一覧から選択したメンバーのメールアドレスを参照させるだけです。
使うアクションはたったひとつ、ListGroupMembersです。
構文とパラメーターは次の通りです。これまたかんたん。
なお、パラメーターは1つすが、テキスト型なので二重引用符で括ります。
Office365グループ.ListGroupMembers(“グループid”).value
ここで指定するグループidは、TeamsかPlannerをブラウザで開き、アドレスバーから取得します。
下図の例ではgroupid=のあとから、&planidの前までですね。
このidをListGroupMembersに埋め込むと下図右側のギャラリーが作成できます。
そこで、宛先にGallery.Selected.mailを使えば、選択した相手のメールアドレスができますね。
Office365グループコネクタの使い方はコチラをご確認ください。
引用元:Office 365 Groups – Connectors | Microsoft Docs
02│Teamsのチャットに発言
つづいてはTeamsのお話です。
MicrosoftTeamsコネクタを接続することで、アプリからチャットに発言できるようになります。
使うアクションはたったひとつ、PostMessageToChannelV3です。
構文とパラメーターは下記の通りですが、今回はちょっと複雑です。
MicrosoftTeams.PostMessageToChannelV3(
"グループid","チャネルid",
{content:"本文",contentType:"TextかHtml"},
{subject:"タイトル"}
)
グループid=チームidです。チャネルidも必要になります。
下記記事で紹介している方法ならかんたんにidを確認できますので、併せてお読みください。
各種プロパティには、コントロールや変数を割り当てることもできます。
MicrosoftTeams.PostMessageToChannelV3(
"59c9ba54-2dea-4546-acaf-ecc3815a1666",
"19:T0DBChdBA6ubqUfufAj6L5feEujvslO903-x_KeHbR01@thread.tacv2",
{content:HtmlText1.HtmlText,contentType:"Html"},
{subject:TextInput02.Text}
)
これを実行した結果、次のにように発言されます。
なお、発言者はアプリのユーザーになります。
チャット投稿はグループに所属するメンバー全員が確認できるので便利ですよね。
MicrosoftTeamsコネクタの使い方はコチラをご確認ください。
引用元:Microsoft Teams – Connectors | Microsoft Docs
03│Plannerのタスクを割り当て
最後に、Plannerのお話です。
Plannerコネクタを接続することで、アプリからタスクを割り当てることができます。
使うアクションはたったひとつ、CreateTaskV4です。
構文とパラメーターは下記の通りです。
なお、このアクションはパラメータが多数ありますが、今回は最低限のものだけピックアップしています。
Planner.CreateTaskV4(
"グループid",
"プランid",
"タスク名",
{
bucketId:"バケットid",
dueDateTime:"期限",
assignments:"割当者id"
}
);
グループidはブラウザのアドレスバーから確認できます。
プランidとバケットidは下記記事で紹介している方法でかんたんに確認できますので、併せてお読みください。
割当者idはメール送信で紹介したOffice365グループ.ListGroupMembersから取得するとかんたんです。
すべて埋めると下記のようになります。
Planner.CreateTaskV4(
"e45c7a9e-dff2-47c6-8daf-f947305ef263",
"3iqhQ7n06EapJS3cpDmcwvoAGd3Y",
TextInput02.Text,
{
bucketId:"f5jpsl9tLE2v_R-ur5nmBfoAB1_W",
dueDateTime:Today(),
assignments:Gallery2.Selected.id
}
);
実行すると下図にようにタスクが割り当てされます。作成者はアプリのユーザーになります。
タスクに割り当てると、そのあとのアクションが可視化できて追いかけやすいですね。
Plannerコネクタの使い方はコチラをご確認ください。
引用元:Planner – Connectors | Microsoft Docs
04│まとめ
今回の記事では
- アプリ操作だけで、メールやチャット、タスク割り当てまでできる
- idさえ調べてしまえば、設定はとてもかんたん
- PowerAutomateは使わなくても大丈夫
という内容でした。
通知ができるとアプリ作成の幅が広がりますね。
本記事を参考に、さっそく実装してみてください。