演習 - Dataverse コネクタでクラウド フローを作成する
この演習では、Dataverse コネクタを使用してクラウド フローを作成し、Contoso のイノベーション チャレンジに関連したプロジェクトの状態を監視します。 このフローは、予算の状態やスケジュール パフォーマンスが変化するとトリガーされます。 さらに、このフローは一連の評価を完了し、その結果に基づいて動作します。
いずれかの名前付き列が変更された場合にのみ動作するようにトリガーを定義し、次のように実行されるアクションの条件を構築します。
このプロジェクトが順調な場合は、このアクションを完了します (状態フィールドを変更します)。
プロジェクトが順調でない場合は、さらに評価を続けて次のアクションを決定します。
状態フィールドの更新だけでなく、必要に応じてタスクを追加するようにシステムを設定します。 次に、動的 HTML テーブルを作成し、メール通知に含めます。
前提条件 - サンプル アプリの環境
サンプル アプリがインストールされた環境を必ず使用してください。 これは環境の作成時に発生します。 Power Platform 管理センターから、これらのステップを実行します (既存のサンプル アプリがある場合は "要件" に進んでください)。
環境>新規を順に選択します。
画面の右側に表示される新しい環境パネルで、(少なくとも) 名前を入力して Dataverse データ ストアを追加しますか? をはいに切り替えます。 次へを選択します。
表示される Dataverse の追加パネルで、+ 選択ボタンをクリックしてセキュリティ グループを選び、グループを 1 つ選択します (アクセスを開く / なしと表示されるかもしれませんが、必ず 1 つ選択してください)。 セキュリティ グループを編集するパネルで完了を選択し、続行します。
Dataverse の追加パネルで保存を選択し、このプロセスを完了させます。
Dataverse とサンプルのモデル駆動型アプリで新しい環境を作成する残りの作業は、Power Apps によって実行されます。
要件
プロジェクトは次の要件を満たす必要があります。
予算の状態やスケジュール パフォーマンスの列に値が存在する場合にのみ、フローがトリガーされます。 両方の列が空の場合、フローはトリガーされません。
予算の状態が予算通りまたは予算未満で、スケジュール パフォーマンスが期限内または先行の場合、プロジェクトの状態を正常に設定します。
予算の状態が予算超過の場合や、スケジュール パフォーマンスが遅延の場合は、プロジェクトの状態を危険に設定してタスクを作成し、それをフローをトリガーしたプロジェクトと関連付けます。
それ以外の場合は、プロジェクトの状態を注意に設定してタスクを作成し、それをフローをトリガーしたプロジェクトと関連付けます。
そのフローをトリガーしたプロジェクトのプロジェクト リーダーを見つけ、そのユーザーが所有するプロジェクトをすべて取得します。 プロジェクトの名前と状態 (正常、注意、危険) を含む、自分がリーダーを務めるすべてのプロジェクトの一覧を記載したメールを送信します。 この演習では、代わりにユーザーのメールを使用できます。
環境を準備する
最初のタスクとして、次の手順に従って環境を準備しましょう。
Power Apps Maker Portalに移動します。
正しい環境を選択してからアプリを選択します。
イノベーション チャレンジ アプリケーションを選択し、次に実行を選択します。
イノベーション チャレンジ アプリケーションが起動します。 チーム プロジェクト を選択してから、フリート自動化プロジェクトを開きます。
必要な列はフォームの状態セクションにあります。
プロジェクトの状態はフローによって更新される列です。
予算の状態 と スケジュール パフォーマンス はフローをトリガーします。
プロジェクト リーダー列を見つけます。 このアプリケーションは、プロジェクト リーダーとして所有者ユーザーを使用します。 フローにより、このユーザーにメールが送信されます。 ユーザーのメールも使用できます。 このサンプル アプリケーションでは、サインインしたユーザー、所有者、プロジェクト リーダーは同じです。
アプリケーション ブラウザーのタブまたはウィンドウを閉じます。
Power Apps Maker Portal に戻り、ソリューションを選択して、既定のソリューションを開きます。
チーム プロジェクト を検索して チーム プロジェクト テーブルを展開し、列を選択します。
Budget status 列を見つけて開きます。
選択肢を見つけます。これはフローによって確認される選択肢の値です。 オプション セットの値を見つける方法として、これらの値と対応するラベルに注意してください。
詳細オプションを展開して論理名列を見つけ、そこで列の論理名を確認します。 ここでの名前は "sample_budgetstatus" です。
列エディター パネルを閉じます (またはキャンセル ボタンを選択します)。
スケジュール パフォーマンス 列を見つけて開きます。
選択肢を見つけて詳細オプションを展開し、スケジュール パフォーマンス 列の論理名をメモします。
両方の列に対する詳細を次に示します。 コンマは使用できません。
予算の状態 の論理名 sample_budgetstatus
予算超過 - 727000000
予算どおり - 727000001
予算内 - 727000002
スケジュール パフォーマンス の論理名 sample_scheduleperformance
期限内 - 727000000
先行 - 727000001
遅延 - 727000002
論理名と値をメモし、この演習の次章に進みましょう。
フローの作成
これらの手順に従ってフローを作成します。
Power Automate ポータルにアクセスします。
正しい環境を選択してからマイ フローを選択します。
+ 新しいフローを選択して、自動化クラウド フローを選択します。
フロー名にプロジェクトの状態監視と入力します。 Microsoft Dataverse で新しい行が追加、変更、削除された場合を検索して選択し、作成を選択します。
接続でエラーが発生した場合は、プロンプトに従って解決します。 トリガーを選択して、名前をプロジェクトの予算の状態やスケジュールが変更された場合に変更します。
変更タイプに変更済み、テーブル名にチーム プロジェクト、スコープに組織をそれぞれ選択してから、詳細パラメーターの隣にあるすべて表示を選択します。
取得する必要があるのは、"予算の状態" 列と "スケジュール パフォーマンス" 列のみです。 列の選択フィールドに、次に示す予算の状態とスケジュール パフォーマンスの論理名を、カンマで区切って貼り付けます。
sample_budgetstatus,sample_scheduleperformance
"Budget status" 列と "Schedule performance" 列が空の場合、フローをトリガーする必要はありません。 そのため、行のフィルター フィールドに次のテストを貼り付けます。 列の論理名を再び使用している点に注目してください。
sample_budgetstatus ne null or sample_scheduleperformance ne null
このトリガーは次の図のようになります。 + 新しい手順を挿入を選択してから、アクションの追加を選択します。
初期化を検索して、変数の初期化を選択します。
アクションの名前を進捗を初期化するに変更して名前にOnTrackと入力し、種類にBooleanを、最初の値に true をそれぞれ選択します。
進捗を初期化するステップで + 新しいステップの挿入を選択し、次にアクションの追加を選択します。
コントロールを検索し、条件を選択します。
先ほど追加した条件を選択し、その名前をプロジェクトの状態確認に変更します。
値の選択フィールドにカーソルを合わせて動的コンテンツの挿入オプション ("稲妻") を選択するか、または "/" と入力してオプションの選択を表示させます。
動的コンテンツ パネルで Budget status を検索し、それを選択します。
比較の右側にある 2 つ目の値の選択フィールドに、727000001 と入力します。 この入力は、この列の予算どおりオプションセットの値です。
プロジェクトの状態確認から + 新しい項目ドロップダウン メニューを選択し、+ 行の追加を選択します。
値の選択フィールドにスラッシュ (/) を入力し、動的コンテンツの挿入を選択します。
動的コンテンツ ペインで Budget status を検索し、それを選択します。
2 番目の値の選択フィールドに 727000002 と入力します。 この入力は、この列の予算内オプションセットの値です。
両方のチェックボックスを選択し、...その他のコマンド メニューを選択してから、グループの作成を選択します。
そのグループの条件を OR に変更します。
グループ外で + 新しい項目オプションを選択し、+ 行の追加を選択します。
左側の値の選択フィールドでスラッシュ (/) を選択または入力し、動的コンテンツの挿入を選択します。
動的コンテンツ ペインで Schedule performance を検索し、それを選択します。
2 番目の値の選択フィールドに 727000000 と入力します。 この入力は、この列の期限内オプションセットの値です。
+ 新しい項目を選択してから + 行の追加を選択します。
左側の値の選択フィールドにスラッシュ (/) を入力し、動的コンテンツの挿入を選択します。
動的コンテンツ ペインで Schedule performance を検索し、それを選択します。
2 番目の値の選択フィールドに 727000001 と入力します。 この入力は、この列の先行オプションセットの値です。
追加した 2 つの条件のチェックボックスを選択し、...その他のコマンド メニューを選択してからグループの作成を選択します。
そのグループの条件を OR に変更します。
これで完成した条件は、次の画像のようになります。
プロジェクトの状態を正常に更新する
次のタスクでは、以下の手順に従ってプロジェクトの状態を正常に更新します。
True 分枝の新しいステップの挿入ボタンを選択し、アクションの追加を選択します。
Microsoft Dataverse コネクタで行の更新を検索し、それを選択します。
追加した行の更新アクションを選択します。
ステップの名前を正常に更新するに変更してから、テーブル名に チーム プロジェクト を選択し、行 ID フィールドにスラッシュ (/) を入力して、動的コンテンツの挿入 を選択します。
動的コンテンツ ペインから、Team Project を選択します。
すべて表示を選択します。
下方向にスクロールして、プロジェクトの状態ドロップダウン メニューから正常を選択します。
保存ボタンを選択し、フローが保存されるまで待機します。
このページから移動しないでください。
予算超過や遅延を確認する
次の手順に従って、予算超過と遅延を確認します。
False 分枝の新しいステップの挿入ボタンを選択し、アクションの追加を選択します。
コントロールを検索し、条件を選択します。
追加した条件を選択します。
条件の名前を予算超過や遅延の発生を確認するに変更します。
左側の値の選択フィールドにスラッシュ (/) を入力し、動的コンテンツの挿入を選択します。
動的コンテンツ ペインから Budget status を選択し、右側の値の選択フィールドに 727000000 と入力します。
+ 新しい項目ドロップダウン メニューを選択し、+ 行の追加を選択します。
左側の値の選択フィールドにスラッシュ (/) を入力し、動的コンテンツの挿入を選択します。
動的コンテンツ ペインから Schedule performance を選択し、右側の値の選択フィールドに 727000002 と入力します。
プロジェクトの状態を危険に更新する
次のタスクでは、以下の手順に従ってプロジェクトの状態を危険に更新します。
これで条件は次の画像のようになります。 予算超過や遅延の発生を確認する条件の True 分枝で新しいステップの挿入ボタンを選択し、アクションの追加を選択します。
Microsoft Dataverse コネクタで行の更新を検索し、それを選択します。
追加した行の更新アクションを選択します。
ステップの名前を危険に更新するに変更してから、テーブル名に チーム プロジェクト を選択し、行 ID フィールドにスラッシュ (/) を入力して、動的コンテンツの挿入 を選択します。
動的コンテンツ ペインから、Team Project を選択します。
すべて表示を選択します。
下方向にスクロールして、プロジェクトの状態ドロップダウン メニューから危険を選択します。
プロジェクトの状態を注意に更新する
プロジェクトの状態を注意に更新する場合は、次の手順に従います。
予算超過や遅延の発生を確認する条件の False 分枝で新しいステップの挿入ボタンを選択し、アクションの追加を選択します。
Microsoft Dataverse コネクタで行の更新を検索し、それを選択します。
追加した行の更新アクションを選択します。
ステップの名前を注意に更新するに変更してから、テーブル名に チーム プロジェクト を選択し、行 ID フィールドにスラッシュ (/) を入力して、動的コンテンツの挿入 を選択します。
動的コンテンツ ペインから、Team Project を選択します。
すべて表示を選択します。
下方向にスクロールして、プロジェクトの状態ドロップダウン メニューから注意を選択します。
保存を選択し、フローが保存されるまで待機します。
このページから移動しないでください。
変数の更新と確認
これで次の手順に従い、変数を更新して確認できます。
予算超過や遅延の発生を確認する条件の下にある新しいステップの挿入ボタンを選択し、アクションの追加を選択します。
変数の設定を検索し、それを選択します。
ステップの名前を進捗の設定に変更して名前として OnTrack を選択し、次に値に false を選択します。
プロジェクトの状態確認条件の外側にある新しいステップの挿入ボタンを選択し、アクションの追加を選択します。
コントロールを検索し、条件を選択します。
この条件の名前を順調かどうかを確認するに変更します。
左側の値の選択フィールドにスラッシュ (/) を入力し、動的コンテンツの挿入を選択します。
動的コンテンツ ペインから OnTrack 変数を選択します。
右側の値の選択フィールドにスラッシュ (/) を入力し、式の挿入を選択します。
その式に false と入力し、追加を選択します。
タスクを作成する
次の手順に従ってタスクを作成します。
順調かどうかを確認する条件の True 分枝で新しいステップの挿入ボタンを選択し、アクションの追加を選択します。
Microsoft Dataverse コネクタで新しい行の追加を検索し、それを選択します。
ステップの名前をタスクの作成に変更し、テーブル名としてタスクを選択して、件名にプロジェクトの状態確認と入力します。
下にスクロールして関連 (チーム プロジェクト) フィールドを見つけます。
関連 (チーム プロジェクト) フィールドに sample_teamprojects() と入力します。
かっこ内にスラッシュ (/) を入力してから、動的コンテンツの挿入を選択します。
プロジェクトの予算の状態やスケジュールが変更された場合トリガーで Team Project を選択します。
保存を選択し、フローが保存されるまで待機します。
このページから移動しないでください。
チーム プロジェクトのリストを取得し、レポートを送信する
この次のタスクでは、そのユーザーに対するチーム プロジェクトのリストを取得し、状態のレポートを送信します。
順調かどうかを確認する条件の下にある新しいステップの挿入ボタンを選択し、アクションの追加を選択します。
Microsoft Dataverse コネクタで行の一覧表示を検索し、それを選択します。
ステップの名前をユーザーのプロジェクトを一覧表示するに変更し、テーブル名に チーム プロジェクト を選択してからすべて表示を選択します。
列の選択フィールドに sample_name, sample_projectstatus と入力します。
行のフィルター フィールドに _owninguser_value eq と入力します。
eq の後にスペースを入力して、動的コンテンツの挿入を選択します。
トリガー ステップの動的コンテンツ ペインから Owner (Value) を選択します。
ユーザーのプロジェクトを一覧表示するステップの下にある新しいステップの挿入ボタンを選択してから、アクションの追加を選択します。
HTML テーブルを検索して、HTML テーブルの作成を選択します。
ステップの名前をプロジェクト テーブルの作成に変更します。
元 フィールドにスラッシュ (/) を入力し、動的コンテンツの挿入を選択します。
動的コンテンツ ペインから body/value (項目のリスト) を選択し、次にすべて表示を選択します。
列にカスタムを選択します。
ヘッダーの下に名前と入力し、値の側で動的コンテンツの挿入を選択します。
ユーザーのプロジェクトを一覧表示するステップで名前を選択します。
ヘッダーの下の2 行目に状態と入力し、2 行目の値フィールドにスラッシュ (/) を入力して、式の挿入を選択します。
次の式を貼り付けてから、追加を選択します。
item()?['sample_projectstatus@OData.Community.Display.V1.FormattedValue']
プロジェクトの作成ステップの下にある新しいステップの挿入ボタンを選択してから、アクションの追加を選択します。
メールの送信を検索し、Microsoft Office 365 Outlook にメールの送信 (V2) を選択します。
求められた場合は、サインインします。
このステップの名前をレポートの送信に変更します。
宛先フィールドにユーザーのメールを入力します。
件名に状態のレポートと入力します。
プロジェクトの状態と入力し、その形式を太字にします。
(本文内の) この行の下にスラッシュ (/) を入力し、動的コンテンツの挿入を選択します。 HTML 出力テーブルを追加します。
保存を選択し、フローが保存されるまで待機します。
フローのテスト
この演習の最後のタスクとして、次の手順に従ってフローをテストします。
Power Apps Maker Portalに移動します。
現在の環境が適切であることを確認し、アプリを選択します。
イノベーション チャレンジ アプリケーションを選択し、次に実行を選択します。
チーム プロジェクト を選択してから、フリート自動化プロジェクトを開きます。
Budget status に 予算超過、chedule performance に遅延をそれぞれ選択してから、保存を選択します。
フォームを更新します。 プロジェクトの状態が危険に変わり、プロジェクトの状態確認タスクが表示されます。
Outlook に移動します。 状態のレポート メールが届いているはずです。
これでフローの危険と注意の状態をテストできます。