アクションの作成、更新、削除、関連付け

完了

Dataverse コネクタを使用すると、新しい行の作成、既存の行の変更、定義されたリレーションシップを使用したデータの関連付けを実行できます。 また "削除" アクションにより、必要に応じて行を削除できます。

新しい行の作成

新しい行の追加アクションを使用して、Dataverse テーブルに新しい行を作成します。 テーブル名を選択すると、そのテーブルの上位列がアクションによって動的に表示されます。 列名の横に表示される赤いアスタリスクは、必須の列を表します。 必須の列にすべて入力しない場合は、そのフローを保存できません。 必須の列とは、必須項目として設定されたテーブルに含まれる任意の列です。 フローを作成してから必須項目として他の列をマークした場合、フローを保存するためには、次に列を更新する際にアクションの更新が必要です。

一部の列のみがアクション パラメーター タブに自動で表示され、残りの列は詳細パラメーターに表示されます。

行の更新

行の更新アクションを使用して、既存のデータ行を更新します。 また、既存の行と ID が一致しない場合は、アップサート (更新または挿入) アクションを使用できます。このアクションにより代わりに新しい行が作成されます。

行の更新 アクションには行 ID が必須であり、ここで必要な操作はデータ行の GUID を更新することだけです。 別の Dataverse コネクタのトリガーやアクションから行 ID を取得する場合は、行 ID にテーブルと同じ名前を付ける必要があり、列の説明はそのテーブルの一意識別子になります。 異なった OData ID の列は使用できません。

列が必須である新しい行の追加アクションと異なり、行の更新 アクションは列を必要としません。 ただし、列の値を変更するべきなのは、データが変更された場合のみです。 たとえば、変更されていないときにアカウント名の列を渡すと、他のオートメーションによってアカウント テーブルの変更が検索されます。

既存の列の値をクリアする場合は、アクションの列を null の式を使用するように変更します。

データの関連付け

Dataverse を使用すると、1 対多 (逆方向のリレーションシップを考慮する場合は多対 1) および多対多のリレーションシップを、テーブルの行に対して設定できます。 データの行を関連付ける際は、リレーションシップの種類と操作するリレーションシップの行に応じて、2 つのオプションが用意されています。

新しい行の追加行の更新のアクションを使用すると、追加や更新を行うデータ行のルックアップ列を更新できます。 たとえば、"連絡先" との多対 1 のリレーションシップを表した "取引先責任者の参照" 列が、"アカウント" テーブルに存在します。 アカウントの追加や更新を行う際は、その連絡先とのリレーションシップも同じアクションで確立できます。 "連絡先" 行の追加や更新を行う場合は、ルックアップ列が存在しないため、このリレーションシップを確立できません。 もう 1 つのオプションは、行の関連付けアクションを使用してリレーションシップを個別に確立する方法です。

多対多のリレーションシップを確立する場合は、必ず行の関連付けアクションを使用します。 その理由は、新しい行の追加行の更新 のアクションで値を設定できるルックアップ列が、リレーションシップのどの行にも存在しないためです。

各行の ID を指定する

データの行を関連付ける場合は、その行のグローバル一意識別子 (GUID) または行 URL を指定する必要があります。 その違いに注意してください。不適切な GUID や URL を指定するとエラーが発生します。

フローの前半に含まれるステップの、出力の行に対する GUID (例: fd140aaf-4df4-11dd-bd17-0019b9312238) を取得できます。 これを行うには、名前がテーブルと同じであり「tablename の一意識別子」という説明を含む列を探し、その動的コンテンツから GUID を選択します。

行 URL を取得する際は、OData 行 ID の説明を含む OData ID を、動的コンテンツ リストから検索します。 テーブルの OData エンティティ セット名と GUID を組み合わせて、行 URL を手動で作成できます。 通常、このエンティティ セット名は、テーブルの論理名に文字 "s" を追加したものです。 つまり "Account" テーブルの論理名は "account" であるため、そのエンティティ セット名は "accounts" になります。 テーブルの名前を簡単に見つけるためには、Dataverse アクションを追加し、エンティティ セット名を知りたいテーブルの名前をテーブルに設定してから、コード ビューに切り替えます。 コード ビューに表示される EntityName の値は、OData 行 URL の構築に必要なエンティティ セット名です。 これにより OData 行 URL は、次の例のようになります。

contoso_projects(fd140aaf-4df4-11dd-bd17-0019b9312238)

"行の追加や更新" のアクションを使用する

行の追加や更新 アクションを使用する際は、リレーションシップを構築するべき行の行 URL を必ず指定します。

次のスクリーンショットは、OData IDを使用してアカウント行に取引先責任者を設定する方法を示しています。

OData ID を使用したルックアップを示すスクリーンショット。

次のスクリーンショットは、行 IDを使用してアカウント行に取引先責任者を設定する方法を示しています。

行 ID を使用したルックアップを示すスクリーンショット。

"行の関連付け" アクションを使用して 1 対多のリレーションシップを確立する

行の関連付け アクションを使用して 2 つの行の間にリレーションシップを確立する場合、このアクションで選択するべきテーブルを決定する必要があります。 1 対多のリレーションシップでは、そのリレーションシップの一方でテーブルを使用します。 たとえば、アカウント行に取引先責任者が存在する状態を考えてみましょう。 このリレーションシップでは、1 つの連絡先行のみにアカウント行を関連付けることができるため、リレーションシップの一方に連絡先行が設定されます。

次に、設定するべきテーブルに行 ID を指定します。 この値は URL ではなく行 ID であるため、必ず GUID (例: fd140aaf-4df4-11dd-bd17-0019b9312238) のみを指定します。

テーブルには複数のリレーションシップを設定できるため、次に確立するべきリレーションシップを選択する必要があります。 この名前についてサポートが必要な場合は、リレーションシップのテーブル プロパティを参照し、そのリレーションシップ名を見つけます。

最後のステップは、関連付ける相手 プロパティの設定です。 このプロパティは行 URL であるため、前のステップの OData ID 列を使用するか、または contoso_projects(fd140aaf-4df4-11dd-bd17-0019b9312238) などの完全な URL を手動で指定できます。

"行の関連付け" アクションを使用して多対多のリレーションシップを確立する

多対多のリレーションシップを操作する場合は、そのリレーションシップのテーブル プロパティを確認し、アクションに指定するべきテーブルを決定できます。 リレーションシップのリストの "関連付け" 列に含まれるテーブルは、2 つの行の間に多対多のリレーションシップを確立する際に選択するべきテーブル名を表します。

関連付ける相手オプションには、他のテーブル行の行 URL を使用します。