
SharePointリストは、必ずしもエンティティに関するすべての情報を保存するわけではありません。例えば、売上と手数料を追跡しているものの、手数料率は厳重に保護された別のリストに保存しているとします。時間の経過とともにデータが変化するため、両方のリストを更新し続けるのは面倒な作業になる可能性があります。
参照:採用キット: Microsoft Power BI 開発者(TechRepublic Premium)
このプロセスを簡素化し、データの品質と整合性を向上させるため、このチュートリアルでは、Microsoft Power Automate フローを使用して 2 つの Microsoft SharePoint リストを同期する方法を説明します。ここでは、2 つのシンプルなリストを使用します。1 つは個々の売上金額を保存し、もう 1 つは各従業員のコミッション率を保存します。これにより、売上リストは多くの人が更新できますが、コミッションリストは少数の主要担当者だけが更新できるようになります。
このチュートリアルでは、Windows 10 64 ビット システムのほとんどの Microsoft 365 ライセンスで無料で利用できる Microsoft SharePoint リストと Microsoft Power Automate を使用します。
ジャンプ先:
- 2つのSharePointリストがどのように連携するか
- Power Automateを使用してレコードを更新する方法
- Power Automateフローの使い方
2つのSharePointリストがどのように連携するか
SharePoint リストまたは Microsoft リストを使用できますが、このチュートリアルでは SharePoint リストを使用します。図 A は2 つの SharePoint リストを示しています。Sales リストは、従業員 ID 値ごとに複数のレコードを持つことができます。2 つ目の Commissions リストには、従業員とそのレートがリストされています。各従業員の Commissions リストには、1 つのレコードのみが含まれます。
図A

ここで、私たちが対処しようとしている状況について説明します。売上リストは定期的に更新されます。リストが更新されると、Power Automate はコミッションリストで一致する従業員 ID を検索します。一致する従業員 ID が存在しない場合は、Power Automate は従業員 ID の値をコピーし、デフォルトのコミッション率 0.345 を使用して新しいレコードを作成します。
参照: Microsoft Power Platform: 知っておくべきこと (無料 PDF) (TechRepublic)
これはシンプルなシナリオです。フローはコミッションを計算したり、どちらのリストのレコードを削除したりすることはありませんが、どちらのタスクもこの状況の延長です。現在、「Commissions」リストには5つのレコードがあります。姓がJonesの従業員が2人、Jones001とJones002であることに注目してください。現在、すべての従業員IDの値が両方のリストに含まれています。
Power Automateを使用してレコードを更新する方法
売上リストに新しい従業員ID値が表示されたら、コミッションリストも更新したいとします。Power Automateを使えば、新しい従業員のコミッションレコードを手動で追加する手間を省くことができます。
ここで、「新規」という言葉を定義しておきましょう。ここでの文脈において、「新規」とは従業員が会社に新しく入社したという意味ではありません。従業員IDの値が「コミッション」に含まれていないという意味です。
まず、Salesリストに新しい従業員ID値が追加されたときにCommissionsに新しいレコードを作成するPower Automateフローを作成します。このタスクの唯一の前提条件は、両方のリストで従業員ID列が共有されていることです。SharePointサイトとリスト名を知っておく必要があります。
ここでは、Salesリストに新しいレコードを追加した際に実行されるフローを1つだけ使用します。以下の手順でこのフローを追加してみましょう。
- Microsoft アカウントにサインインし、アプリ ランチャーから Power Automate を選択します。
- 左側のペインで [作成] をクリックします。
- 一番下まで移動して、SharePoint コネクタをクリックします。
- 表示されたリストで、[アイテムが作成されたとき] オプションをクリックします (図 B )。
図B

- 最初のフロー カードのドロップダウンから、SharePoint サイトと Sales リストを選択します (図 C )。
図C

- 次のカードを表示するには、「新しいステップ」をクリックします。
- SharePoint が上部のリストにない場合は、細い灰色の線の [コネクタのリストを展開] 下矢印をクリックします。
- 表示されたリストで、SharePoint をクリックして、使用可能なトリガーとアクションの下部リストを更新します。
- 下部のペインで、[アクション] をクリックします。
- SharePoint サイトと 2 番目のリストの名前 (Commissions) を指定します。
- [詳細オプションを表示]リンクをクリックします。
- タイトル コントロール内をクリックし、従業員 ID ne を入力します。ここで、ne は「等しくない」の略です。
- 必要に応じて、「動的コンテンツの追加」リンクをクリックします。
- 動的コンテンツ リストから、従業員 ID を選択して、タイトル コントロールに追加します (図 D )。
図D

簡単に言うと、最初のカードは2枚目のカードのアクションをトリガーするアクションを識別します。そのトリガーは、Salesリストへの新しいアイテムの追加です。既存のレコードを変更しても、このフローはトリガーされません。新しいレコードを追加した場合にのみトリガーされます。
2枚目のカードは、フローが更新するリストを指定し、従業員IDの値を渡します。従業員IDの値がCommissionsリストにない場合は、Power Automateによってレコードが追加されます。
ここで、Sales リストにいくつかのレコードを追加して、フローがどのように反応するかを確認しましょう。
Power Automateフローの使い方
Power Automateフローをトリガーするために、Salesリストを更新する以外に何もする必要はありません。SharePointインターフェースに移動してSalesを開くだけです。次に、図Eに示すように、 Edington、Edington001、14000というレコードを入力します。
図E

従業員IDの値がまだコミッションリストにないので、式
従業員ID ne 従業員ID
手順11と12で入力した条件が満たされます。新しい従業員IDの値「Edington001」は、Commissionsリストのどの値とも一致しません。そのため、フローは新しい従業員IDをCommissionsリストにコピーします。
図Fに示すように、フローは新しい従業員ID「Edington001」のレコードを追加しました。レートはデフォルト値であり、リストはすべての新規レコードにこのレートを使用します。主要担当者はこのレートを変更できますが、デフォルト値により各レコードにレートが確実に設定されます。
図F

環境によっては、SharePoint が Commissions リストを更新するまでに数秒かかる場合があります。リストを確認しても新しいレコードが表示されない場合は、SharePoint が追いつくまで数秒お待ちください。
次に、図Gに示すように、Edington001のレコードをもう1つ追加します。次に、Commissionsリストを確認します。
図G


このレコードは新しいレコードであるためフローをトリガーしますが、リストには既に Edington001 のレコードがあるため Commission にレコードは追加されません。したがって、Employee ID 式は false になります。
参照:採用キット: データベースエンジニア(TechRepublic Premium)
このようなPower Automateフローでは、他にも様々なことが可能です。例えば、既存のレコードの従業員IDを変更しても何も起こりません。条件やアクションを追加したり、新しいフローを作成してそのチェック項目を追加したりすることも可能です。
次に読む:最高のビジネス インテリジェンス ツール(TechRepublic)