Power Automate コネクタを作成する
重要
この機能の一部またはすべては、プレビュー リリースの一部として利用できます。 コンテンツおよび機能は変更される場合があります。
この記事では、Microsoft Sustainability Manager 用の Power Automate コネクターを作成する方法を紹介します。
Power Query テンプレート コネクターを構築する必要がある場合は、 Power Queryテンプレート コネクターの構築 に進んでください。
ステップ 1: 環境の作成
このステップでは、コネクタを使ってデータをインポートする必要がある Sustainability Manager ユーザーに配布するソリューションを作成します。
ソリューションを作成する の手順に従って、Power Apps で新しいアンマネージド ソリューションを作成します。
その 環境 にSustainability Manager をインストールします。
ステップ 2: コネクタ レコードの作成
任意のテキスト エディターで、msdyn_dataconnectors.xml という名前の新しいファイルを作成します。
詳細に合わせて次の XML をコピーして変更します:
<msdyn_dataconnectors> <msdyn_dataconnector msdyn_dataconnectorid="a1a87c17-40f1-ee11-1fd-6045bdef542d"> <iscustomizable>1</iscustomizable> <msdyn_name>Demo 3P Connector</msdyn_name> <msdyn_title>Demo 3P Connector</msdyn_title> <msdyn_connectorstatus>700610001</msdyn_connectorstatus> <msdyn_connectortype>700610006</msdyn_connectortype> <msdyn_description>Demo 3P connector</msdyn_description> <msdyn_supportlinkurl>https://www.microsoft.com</msdyn_supportlinkurl> <msdyn_logo_text> </msdyn_logo_text> <msdyn_parameterconfiguration> </msdyn_parameterconfiguration> </msdyn_dataconnector> </msdyn_dataconnectors>
パラメーター 詳細 msdyn_データコネクタid GUID 形式に従って、コネクタを識別するための新しい GUID を生成します。 この例では、GUID = a1a87c17-40f1-ee11-1fd-6045bdef542d を使用します。 GUID はコネクタ識別子であり、後の手順で必要になります。 msdyn_name
msdyn_title3P コネクタのデモを実行 をコネクタの名前に変更します。 msdyn_コネクタステータス この値は 700610001 のままにしておきます。 この値は公開されたコネクタを表します。 msdyn_コネクタタイプ この値は 700610006 のままにしておきます。 この値はコネクタのタイプを表します。 この場合は、Power Automate コネクタの値です。 msdyn_説明 コネクタの簡単な説明を追加します。 msdyn_supportリンクurl 接続が失敗した場合にユーザーが連絡する URL にテキストを置き換えます。 失敗した接続のテストの詳細については、エラー処理のテストを参照してください。 このURLがないと、コネクタはSustainability Managerに表示されません。 msdyn_logo_text 任意のエンコーダーを使用して、ロゴ画像を Base 64 にエンコードして保存します。 画像は 36 x 36 ピクセルにする必要があります。 このパラメータに Base 64 エンコードを貼り付けます。 msdyn_パラメータ構成 資格情報フォームは JSON で表現され、Sustainability Manager はこれを解析してフォームの UI を表示します。 必要に応じて、この表の後で提供されているサンプル JSON を変更し、このパラメータに追加します。 msdyn_parameterconfiguration の場合、このサンプル JSON を開始点として使用できます。
注意Note
完全なスキーマ定義 msdyn_parameterconfiguration は間もなくリリースされます。
{ "parameterGroups": [ { "label": "Login", "fields": [ { "displayLabel": "Username", "type": "text", "key": "username", "required": true, "description": "Enter the username to login with" }, { "displayLabel": "Password", "type": "text", "key": "password", "mask": true, "required": true } ] }, { "label": "Data extraction parameters", "fields": [ { "displayLabel": "Watermark Date", "type": "datetime", "key": "watermarkDate" }, { "displayLabel": "Organization Unit", "type": "text", "key": "organizationUnit" }, { "displayLabel": "Facility", "type": "text", "key": "facility" }, { "displayLabel": "Installation instructions", "type": "note", "text": "To use this connector, you should first create an environment variable that contains the login credentials. Then create a flow that uses this connector." }, { "displayLabel": "How to create an environment variable in Azure Key Vault", "type": "link", "url": "https://docs.microsoft.com/azure/azure-functions/functions-how-to-use-azure-function-app-settings#settings" } ] } ] };
この JSON は次のように表示されます:
ステップ 3: Power Automate のフローを作成する
このステップでは、Power Automate フローを作成してユーザー資格情報を取得し、データのインポート、変換、保存を行います。
Power Automate で 作成 を選択し、自動化したクラウド フロー を選択します。
フロー名を入力します。 フローのトリガーを選択する で、行が追加、変更、削除された場合 の Dataverse トリガーを選択します。
作成を選択します。
この表に従って、行が追加、変更、または削除された場合のトリガーのプロパティを入力します。
フィールド 価値 種類の変更 追加済み テーブル名 データ インポート ジョブ 範囲 組織 列を選択する N/A 行のフィルター _msdyn_dataconnector_value は、 <先ほど作成した GUID と等しくなります> ID で行を取得 アクションを追加して、Dataverse から資格情報を取得します。 Sustainability Manager で作成した各データインポートには、msdyn_dataconnection テーブルに関連する接続レコードがあります。 そのデータ接続レコードには、msdyn_providercredential へのルックアップがあり、これは資格情報を接続にリンクします。 このアクションは、msdyn_dataconnection テーブルを作成し、msdyn_providercredentialidでクエリを展開します。 また、接続にリンクされた関連資格情報レコードも読み込みます。 接続行 ID はトリガー出力とともに提供されます。
JSON 解析関数 を使用して、資格情報 JSON を解析できるようになりました。
注意Note
Key Vault を使用し、ユーザーに資格情報を格納する環境変数を作成するように求める場合は、この記事を参照して、Key Vault から資格情報を取得する方法を確認してください: Azure Key Vault シークレットに環境変数を使用する。
データ ソースからユーザー データをプルするための認証情報が取得できたので、Power Automate コネクタを使用してソースからデータを取得するアクションを追加する必要があります。 ロジックでは、最後に成功した更新以降の増分データを取得するだけで済みます。 msdyn_dataconnection テーブルの msdyn_lastrefresh 列を使用して、最終更新時刻を確認できます。 値が null または空の場合は、最初の実行であると想定できます。
データを取得したら、それを Cloud for Sustainability データ モデルに変換し、CSV テーブルに保存します。 ひとつの方法は、CSV テーブルの作成 アクションを追加することです。 このテーブルのヘッダは、コネクターがインポートするエンティティの列の論理名です。 値はハードコードされているか、ソースから抽出したデータから取得されます。 例:
持続可能性データ接続マップを作成します。 持続可能性データ接続マップ記録に新しいレコードを作成する Dataverse アクションを追加します。
このレコードを作成する前に、コネクタを使用して取り込むエンティティの持続可能性データ定義 ID を取得します。 持続可能性データ定義IDを取得するには、 Power Apps ポータルで 選択 Tables tab. すべて選択 テーブルを検索し、 持続可能性データ定義 を検索します。
この例では、マップ列とともに必要な列を入力します。 マップ 列に任意の文字列を入力します。 トリガーから接続 ID を取得します。
接続が実行されたインスタンスである接続リフレッシュを作成します。 この例では、msdyn_dataimportjobid と msdyn_dataconnectionid はトリガー出力から取得されます。 msdyn_sustainabilitydataconnectionmapid は、先ほど作成したレコードのIDです。
接続レコードを更新して、データ インポート ジョブに関連付けます。 この例では、 msdyn_dataimportjobid および msdyn_dataconnectionid は、トリガー 出力から取得されます: /msdyn_dataimportjobs(msdyn_dataimportjobid=<データインポート ジョブID>)。
CSV ファイルをデータ接続更新レコードにアップロードします。 Dataverse アクションを使用して、先ほど作成した接続更新レコードに CSV ファイルをアップロードするアクションを追加します。 ファイルのサイズは 2 GB を超えないようにしてください。
トリガー は、インポートをトリガーする Dataverse アクションを使用して、バインドされていないアクションを実行します。 トリガーの一部として受け取った dataimportJobId を指定します。