Dynamics 365 Business Central

Dynamics 365 Business Central コネクタを使用すると、Dynamics 365 Business Central データに対して、挿入、削除、更新、読み取りオペレーションを実行できます。

サポート対象のバージョン

このコネクタは、次のバージョンをサポートしています。

  • Dynamics 365 Business Central Cloud、本番環境バージョン - 24.5.23489.26544
  • Dynamics 365 Business Central、オンプレミス バージョン - Dynamics.365.BC.25445.IN.DVD
  • 始める前に

    Dynamics 365 コネクタを使用する前に、次の作業を行います。

    • Google Cloud プロジェクトで次の操作を行います。
      • ネットワーク接続が設定されていることを確認します。ネットワーク パターンの詳細については、Network Connectivity をご覧ください。
      • 次のサービスを有効にします。
        • secretmanager.googleapis.com(Secret Manager API)
        • connectors.googleapis.com(Connectors API)

        サービスを有効にする方法については、サービスを有効にするをご覧ください。

      以前にプロジェクトでこうしたサービスを有効にしていない場合は、コネクタを構成するときにそれを有効にすることを求められます。

    コネクタを構成する

    接続はデータソースに特有です。つまり、多数のデータソースがある場合は、データソースごとに別々の接続を作成する必要があります。接続を作成する手順は次のとおりです。

    1. Cloud コンソールで、[Integration Connectors] > [接続] ページに移動し、Google Cloud プロジェクトを選択または作成します。

      [接続] ページに移動

    2. [+ 新規作成] をクリックして [接続の作成] ページを開きます。
    3. [ロケーション] セクションで、接続のロケーションを選択します。
      1. リージョン: プルダウン リストからロケーションを選択します

        コネクタをサポートしているリージョンは次のとおりです。

        サポートされているすべてのリージョンの一覧については、ロケーションをご覧ください。

      2. [次へ] をクリックします。
    4. [接続の詳細] セクションで、次の操作を行います。
      1. コネクタ: 使用可能なコネクタのプルダウン リストから [Dynamics 365 Business Central] を選択します。
      2. コネクタのバージョン: 使用可能なバージョンのプルダウン リストからコネクタのバージョンを選択します。
      3. [接続名] フィールドに、接続インスタンスの名前を入力します。

        接続名は次の条件を満たす必要があります。

        • 接続名には英字、数字、ハイフンを使用できます。
        • 文字は小文字のみを使用できます。
        • 接続名の先頭には英字を設定し、末尾には英字または数字を設定する必要があります。
        • 接続名は 49 文字以内で指定してください。
      4. 必要に応じて、接続インスタンスの [説明] を入力します。
      5. 必要に応じて、Cloud Logging を有効にして、ログレベルを選択します。デフォルトのログレベルは Error に設定されています。
      6. サービス アカウント: 必要なロールを持つサービス アカウントを選択します。
      7. (省略可)接続ノードの設定を構成します。
        • ノードの最小数: 接続ノードの最小数を入力します。
        • ノードの最大数: 接続ノードの最大数を入力します。

        ノードは、トランザクションを処理する接続の単位(またはレプリカ)です。1 つの接続でより多くのトランザクションを処理するには、より多くのノードが必要になります。逆に、より少ないトランザクションを処理するには、より少ないノードが必要になります。ノードがコネクタの料金に与える影響については、 接続ノードの料金をご覧ください。値を入力しない場合は、デフォルトで最小ノード数は 2 に設定され(可用性を高めるため)、最大ノード数は 50 に設定されます。

      8. Azure テナント: データへのアクセスに使用されている Microsoft Online テナントを指定します。指定しない場合、デフォルトのテナントが使用されます。
      9. 会社: Dynamics 365 で設定した会社名を指定します。この情報は、Dynamics 365 Business Central の [会社情報] ページで確認できます。
      10. エンドポイントのタイプ: OrganizationUrl が解決するエンドポイントのタイプを指定します。
      11. ナビゲーション プロパティを含める: 列のリストにナビゲーション プロパティを含めるかどうかを指定します。ナビゲーション プロパティを使用すると、2 つのエンティティ タイプ間の関連付けを移動できます。
      12. サンドボックスを使用する: サンドボックスを使用するかどうかを指定します。
      13. ユーザー定義ビュー: カスタムビューを定義する JSON 構成ファイルのファイルパスを指定します。
      14. [+ ラベルを追加] をクリックして、Key-Value ペアの形式で接続にラベルを追加します。
      15. (省略可)SSL を使用する場合は、[SSL を有効にする] を選択します。これにより、SSL 構成の詳細が表示されます。
        1. トラストストアの種類を選択します。[パブリック]、[プライベート]、[安全でない接続] のいずれかになります。
        2. トラストストアの選択に基づいて表示される証明書を選択します。
        3. mTLS を使用している場合は、[Key Store] セクションでキーストア証明書を選択します。
      16. [次へ] をクリックします。
    5. [認証タイプ] を選択し、関連する詳細を入力します。

      Dynamics 365 Business Central 接続でサポートされる認証タイプは次のとおりです。

      • アクセスキー
      • OAuth 2.0 - クライアント認証情報
      • Azure AD
    6. これらの認証タイプの構成方法については、認証を構成するをご覧ください。

    7. [次へ] をクリックします。
  • Review: 接続と認証の詳細を確認します。
  • [作成] をクリックします。
  • 認証を構成する

    使用する認証に基づいて詳細を入力します。

    • アクセスキー
      • ユーザー名: Microsoft Dynamics 365 Business Central サーバーの認証に使用される Dynamics 365 OnPremise アカウントのユーザー名を指定します。
      • パスワード: Dynamics 365 OnPremise アカウントのパスワードを含むシークレットを選択します。
      • シークレットのバージョン: Secret のバージョンを選択します。
      • アクセスキー: Microsoft Dynamics 365 Business Central の認証に使用するアクセスキーを指定します。
    • OAuth 2.0 クライアント認証情報
      • クライアント ID: 作成したアプリのクライアント ID を指定します。
      • クライアント シークレット: 作成した接続されているアプリのクライアント シークレットを含む Secret Manager のシークレットを指定します。
      • シークレットのバージョン: クライアント シークレットのバージョンを選択します。
    • Azure AD
      • クライアント ID: アクセス トークンのリクエストに使用するクライアント ID を指定します。これは、Azure Portal で作成した接続アプリの概要で確認できます。
      • スコープ: 必要なスコープをカンマ区切りのリストで指定します。
      • クライアント シークレット: アカウント アクセスキーを含む Secret Manager のシークレットを指定します。
      • 認可 URL: OAuth クライアントの作成時に生成した認可 URL を入力します。URL は https://login.microsoftonline.com/TENANT_IDENTIFIER/oauth2/v2.0/authorize?prompt=consent の形式で入力します。 例: https://login.microsoftonline.com/9bxxxxxxxxx8112/oauth2/v2.0/authorize?prompt=consent

    接続構成のサンプル

    このセクションでは、接続を作成するときに構成するさまざまなフィールドのサンプル値を示します。

    OAuth 2.0 - クライアント認証情報の接続タイプ

    フィールド名 詳細
    ロケーション europe-west1
    コネクタ Dynamics365BusinessCentral
    コネクタのバージョン 1
    接続名 dynamics-businesscentral-conn
    Cloud Logging を有効にする
    サービス アカウント SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
    Azure テナント c9f472d9-7d8a-44cf-8ee0-458d32e26bce
    会社 Organization_Name
    ノードの最小数 2
    ノードの最大数 50
    組織の URL https://api.businesscentral.dynamics.com/v2.0/c9f472d9-7d8a-44cf-8ee0-458d32e26bce/production/api/v2.0
    認証 OAuth 2.0 - クライアント認証情報
    クライアント ID fd04bae4-c30c-4faf-bbae-9263d4d96d61
    クライアント シークレット projects/617888503870/secrets/businesscentral-client-secret
    シークレットのバージョン 1

    アクセスキーの接続タイプ

    フィールド名 詳細
    ロケーション europe-west1
    コネクタ Dynamics365BusinessCentral
    コネクタのバージョン 1
    接続名 dynamics-businesscentral-on-prem-conn
    Cloud Logging を有効にする
    サービス アカウント SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
    Azure テナント BC250
    会社 Altostart Ltd.
    ノードの最小数 2
    ノードの最大数 50
    組織の URL http://10.128.0.78:7059/BC250/ODataV4
    認証 アクセスキー
    ユーザー名 businesscentral
    パスワード パスワード
    シークレットのバージョン 1
    アクセスキー OQq9qggeWxt9iZPSWrs8wgfNjsAq06PT2uls7Luhbp8=
    シークレットのバージョン 1

    Azure AD 接続の種類

    フィールド名 詳細
    ロケーション europe-west1
    コネクタ Dynamics365BusinessCentral
    コネクタのバージョン 1
    接続名 d365-business-central-oauth
    Cloud Logging を有効にする
    サービス アカウント my-service-account@my-project.iam.gserviceaccount.com
    Azure テナント c9f472d9-7d8a-44cf-8ee0-458d32e26bce
    会社 Altostart Ltd.
    ノードの最小数 2
    ノードの最大数 50
    組織の URL https://api.businesscentral.dynamics.com/v2.0/c9f472d9-7d8a-44cf-8ee0-458d32e26bce/production/api/v2.0
    認証 AzureAD
    クライアント ID fd04bae4-c30c-4faf-bbae-9263d4d96d61
    スコープ https://api.businesscentral.dynamics.com/.default
    クライアント シークレット projects/617888503870/secrets/d365bc-secret
    シークレットのバージョン 3
    認証 URL https://login.microsoftonline.com/c9f472d9-7d8a-44cf-8ee0-458d32e26bce/oauth2/v2.0/authorize

    Dynamics 365 Business Central ワークスペースの作成方法については、Dynamics 365 Business Central へようこそをご覧ください。

    Dynamics 365 Business Central API の詳細については、Dynamics365BusinessCentral API リファレンスをご覧ください。

    システムの上限

    Dynamics 365 Business Central コネクタは、ノードごとに 1 秒あたり最大 25 件のトランザクションを処理することができ、この上限を超えるトランザクションはすべてスロットルされます。デフォルトでは、Integration Connectors は、接続に 2 つのノードを割り当てます(可用性を高めるため)。

    Integration Connectors に適用される上限の詳細については、上限をご覧ください。

    統合で Dynamics 365 Business Central 接続を使用する

    接続を作成すると、Apigee Integration と Application Integration の両方で使用できるようになります。この接続は、コネクタタスクを介して統合で使用できます。

    • Apigee Integration で Connectors タスクを作成して使用する方法については、Connectors タスクをご覧ください。
    • Application Integration で Connectors タスクを作成して使用する方法については、Connectors タスクをご覧ください。

    エンティティ オペレーションの例

    このセクションでは、このコネクタでエンティティ オペレーションの一部を実行する方法について説明します。

    例 - すべての販売注文を一覧表示する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から salesOrders を選択します。
    3. [List] オペレーションを選択し、[完了] をクリックします。
    4. [コネクタ] タスクの [タスク入力] セクションで、filterClause を設定できます。
    5. フィルタ句の値は単一引用符(')で囲む必要があります。フィルタ句を使用すると、列に基づいてレコードをフィルタできます。

    例 - 販売注文を取得する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から salesOrders を選択します。
    3. [Get] オペレーションを選択し、[完了] をクリックします。
    4. エンティティ ID を「841c04f9-3391-ef11-8a6b-002248d4e29e」に設定します。これは渡されるキーです。エンティティ ID を設定するには、[データ マッピング] の [データ マッパー] セクションで [データ マッピング エディタを開く] をクリックし、[入力値] フィールドに "841c04f9-3391-ef11-8a6b-002248d4e29e" を入力し、EntityId をローカル変数として選択します。

      エンティティ ID の値は直接渡す必要があります(「841c04f9-3391-ef11-8a6b-002248d4e29e」など)。ここで、「841c04f9-3391-ef11-8a6b-002248d4e29e」は一意の主キー値です。

      2 つの複合キーが存在するため、単一のエンティティ ID を渡すとエラーが発生する場合は、フィルタ句を使用して値を渡すことができます。

    例 - 販売注文を削除する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から salesOrders を選択します。
    3. [DELETE] オペレーションを選択し、[完了] をクリックします。
    4. エンティティ ID を「841c04f9-3391-ef11-8a6b-002248d4e29e」に設定します。これは渡されるキーです。エンティティ ID を設定するには、[データ マッピング] の [データ マッパー] セクションで [データ マッピング エディタを開く] をクリックし、[入力値] フィールドに "841c04f9-3391-ef11-8a6b-002248d4e29e" を入力し、EntityId をローカル変数として選択します。

      エンティティに 2 つの複合ビジネスキーまたは主キーがあり、entityId を指定する代わりに、filterClauseid='841c04f9-3391-ef11-8a6b-002248d4e29e' に設定することもできます。

    例 - 販売注文を作成する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から salesOrders を選択します。
    3. [Create] オペレーションを選択し、[完了] をクリックします。
    4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload をローカル変数として選択します。
      {
           "orderDate": "2024-10-30",
           "customerNumber": "10000",
           "currencyCode": "INR",
           "paymentTermsId": "590d75c5-f26e-ef11-a678-6045bdc89b07"
           }
           

      統合が成功すると、salesOrders タスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

      {
           "id": "2e048d8a-a796-ef11-8a6b-6045bdae882d"
           }
           

    例 - 販売注文行を作成する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から salesOrderLines を選択します。
    3. [Create] オペレーションを選択し、[完了] をクリックします。
    4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload をローカル変数として選択します。
      {
           "documentId": "b747cc93-c37f-ef11-ac23-7c1e523b4365",
           "sequence": 10014,
           "itemId": "8b0f75c5-f26e-ef11-a678-6045bdc89b07",
           "lineType": "Item",
           "lineObjectNumber": "1996-S"
           }
           

      統合が成功すると、salesOrderLines タスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

      {
           "id": "35535130-d09d-ef11-8a6b-002248d4cc93"
           }
           

    例 - 販売見積もりを作成

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から salesQuotes を選択します。
    3. [Create] オペレーションを選択し、[完了] をクリックします。
    4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload をローカル変数として選択します。
      {
           "paymentTermsId": "590d75c5-f26e-ef11-a678-6045bdc89b07",
           "currencyCode": "INR",
           "customerNumber": "30000"
           }
           

      統合が成功すると、salesQuotes タスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

      {
           "id": "2116bd4e-3ba3-ef11-8a6b-6045bdacfb5e"
           }
           

    例 - 注文書を作成する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から purchaseOrders を選択します。
    3. [Create] オペレーションを選択し、[完了] をクリックします。
    4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload をローカル変数として選択します。
      {
           "vendorId": "7e0f75c5-f26e-ef11-a678-6045bdc89b07",
           "vendorNumber": "10000"
           }
           

      統合が成功すると、purchaseOrders タスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

      {
           "id": "53389ee7-a796-ef11-8a6b-6045bdae882d"
           }
           

    例 - アイテムを作成する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から items を選択します。
    3. [Create] オペレーションを選択し、[完了] をクリックします。
    4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload をローカル変数として選択します。
      {
           "number": "4000-D",
           "displayName": "Charlie Altostrat",
           "type": "Inventory",
           "itemCategoryId": "d61672cb-f26e-ef11-a678-6045bdc89b07",
           "baseUnitOfMeasureCode": "PCS"
           }
           

      統合が成功すると、items タスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

      {
           "id": "fad09437-8d9e-ef11-8a6b-000d3af0e092"
           }
           

    例 - 販売注文を更新する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から salesOrders を選択します。
    3. [Update] オペレーションを選択し、[完了] をクリックします。
    4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload/FilterClause をローカル変数として選択します。
      {
           "phoneNumber": "7764872993"
           }
           
    5. データマッパーでエンティティ ID を salesOrders のエンティティに設定します。エンティティ ID を設定するには、[Open Data Mapping Editor] をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload/FilterClause をローカル変数として選択します。

      [entityId] を指定する代わりに、[filterClause] を id ='5e9226d3-1c7b-ef11-a671-6045bdaef76c' に設定することもできます。

    例 - 販売注文行を更新する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から salesOrderLines を選択します。
    3. [Update] オペレーションを選択し、[完了] をクリックします。
    4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload/FilterClause をローカル変数として選択します。
      {
           "description": "Test from Altostrat"
           }
           
    5. データマッパーでエンティティ ID を salesOrderLines のエンティティに設定します。エンティティ ID を設定するには、[Open Data Mapping Editor] をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload/FilterClause をローカル変数として選択します。

      [entityId] を指定する代わりに、[filterClause] を id ='35535130-d09d-ef11-8a6b-002248d4cc93' に設定することもできます。

    例 - 販売見積もりを更新する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から salesQuotes を選択します。
    3. [Update] オペレーションを選択し、[完了] をクリックします。
    4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload/FilterClause をローカル変数として選択します。
      {
           "currencyCode": "USD"
           }
           
    5. データマッパーでエンティティ ID を salesQuotes のエンティティに設定します。エンティティ ID を設定するには、[Open Data Mapping Editor] をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload/FilterClause をローカル変数として選択します。

      [entityId] を指定する代わりに、[filterClause] を id='2116bd4e-3ba3-ef11-8a6b-6045bdacfb5e' に設定することもできます。

    例 - 注文書を更新する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から purchaseOrders を選択します。
    3. [Update] オペレーションを選択し、[完了] をクリックします。
    4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload/FilterClause をローカル変数として選択します。
      {
           "shipToName": "Charlie Cruz"
           }
           
    5. Data Mapper でエンティティ ID を purchaseOrders のエンティティに設定します。エンティティ ID を設定するには、[Open Data Mapping Editor] をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload/FilterClause をローカル変数として選択します。

      [entityId] を指定する代わりに、[filterClause] を id ='6b88738e-3891-ef11-8a6b-002248d4e29e' に設定することもできます。

    例 - アイテムを更新する

    1. [Configure connector task] ダイアログで、[Entities] をクリックします。
    2. Entity から items を選択します。
    3. [Update] オペレーションを選択し、[完了] をクリックします。
    4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload/FilterClause をローカル変数として選択します。
      {
           "displayName": "Updates Altostrat name"
           }
           
    5. データマッパーでエンティティ ID をアイテムのエンティティに設定します。エンティティ ID を設定するには、[Open Data Mapping Editor] をクリックし、[Input Value] フィールドに次のような値を入力し、EntityId/ConnectorInputPayload/FilterClause をローカル変数として選択します。

      [entityId] を指定する代わりに、[filterClause] を id ='fad09437-8d9e-ef11-8a6b-000d3af0e092' に設定することもできます。

    Google Cloud コミュニティの助けを借りる

    Google Cloud コミュニティの Cloud フォーラムで質問を投稿したり、このコネクタについてディスカッションしたりできます。

    次のステップ