製品をチェック

Dynamics 365 Business Central データでアップデートグラムを使用する

アップデートグラムを使用することで、Dynamics 365 Business Central をインサート、アップデート、デリートできます。ここでは、CData BizTalk Adapter for D365BusinessCentral を使用して、アップデートグラムスキーマとインスタンスを作成する方法を説明します。

加藤龍彦
デジタルマーケティング

最終更新日:2022-12-05

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。

この記事では、CData BizTalk Adapter for D365BusinessCentral で実行できるアップデートグラムを作成します。設計したスキーマは、インサート、アップデート、デリートのアップデートグラムを作成するためのテンプレートとして使用します。

プロジェクトにDynamics 365 Business Central 用アダプターを追加する

[Add Adapter] ウィザードから、アダプターをVisual Studio のBizTalk サーバープロジェクトに追加します。アダプターを使って、修正したいテーブルに関するDynamics 365 Business Central のメタデータをクエリします。

  1. [Solution Explorer] の[project] で右クリックし、[Add] -> [Add Generated Items] と進みます。
  2. [resulting dialog box] の[Add Adapter Metadata] を選択します。
  3. 表示される[Add Adapter] ウィザードで、リストからCData BizTalk Adapter for D365BusinessCentral を選択します。
  4. [Port menu] では、選択を空白のままにします。もしくは、アダプターを使用するように構成されている受信場所や送信ポートを選択します。
  5. [Next]をクリックすると、[Schema]ウィザードが表示されます。
CData Data Adapters in the Select Adapter wizard.(Salesforce is shown.)

アップデートグラム用のスキーマを作成する

以下のステップに従って、Visual Studio のBizTalk サーバープロジェクトでスキーマを作成します。

  1. 未追加の場合は、Dynamics 365 Business Central アダプターをプロジェクトに追加します。
  2. 送信ポートや受信場所で、認証資格情報やその他の接続プロパティが未構成の場合、[Add Adapter]ウィザードの[Connection String]ページから入力します。下は一般的な接続文字列です。

    OrganizationUrl=https://myaccount.financials.dynamics.com/;

    Dynamics 365 Business Central 接続プロパティの取得・設定方法

    Dynamics 365 Business Central への認証には、User およびAccessKey プロパティが必要です。

    データに接続するには、OrganizationUrl を指定します。OrganizationUrl は、 http://businesscentral.dynamics.com/abc123/ などのBusiness Central アカウントへのエンドポインであるか、Web サービスのルートを参照する必要があります。OrganizationUrl を指定する方法 および利用可能なエンドポイントについての詳細は、Business Central エンドポイント を参照してください。組織内に複数の会社がある場合は、どの会社に接続するかを特定するためにCompany を指定する必要があります。 会社が1つだけの場合は、Company を指定する必要はありません。

    Dynamics 365 Business Central に認証するには、User およびAccessKey 接続プロパティを指定します。Microsoft では、これらをテストおよび開発目的で推奨します。ただし、運用環境での使用は推奨していません。User およびAccessKey の値を取得するには、Dynamics 365 Business Central の「ユーザー」ページに移動して「編集」をクリックします。User Name および Web Service Access Key の値は、User およびPassword 接続文字列プロパティとして入力する値です。User Name はE メールアドレス ではありません。短縮されたユーザー名です。

    Microsoft では、OAuth 認証を使用する本番ユースケースを推奨します。詳細については、ヘルプドキュメントの「OAuth 認証の使用」を参照してください。

    接続プロパティの詳細は、ヘルプドキュメントの"BizTalk Configuration" チャプターを参照してください。

    The connection string used by the adapter.(Salesforce is shown.)
  3. [Schema Information]ページで、[General Options]セクションの[Send Port]をクリックします。[CommandType]メニューから[Updategram]を選択します。要請応答送信ポートのアダプターを使用している場合、[One-Way]オプションを無効にします。 Schema options that are specific to the adapter configured in a solicit-response send port.(Salesforce is shown.)
  4. 次の[Statement Information]ページでは、アップデートグラムの形式(Insert、Update、Delete)を選択します。 スキーマに含ませたいテーブル名とカラムを選択します。アップデートまたはデリートを行う場合、ID カラムを選択します。

    Noteアップデートグラムを作成する際、修正はスキーマに含ませたカラムに限定されます。

    Schema options that specify the table and columns to be modified.(Salesforce is shown.)
  5. [Next]をクリックしてスキーマの概要を確認してウィザードを終了し、スキーマを作成します。完成した.xsd ファイルがプロジェクトに追加されます。
The resulting updategram instance.(Salesforce is shown.)

インサート、アップデート、デリートのインスタンスメッセージを生成する

アップデートグラムスキーマの作成後、アップデートグラムを生成する.xsd ファイルを使用できます。.xsd ファイルを右クリックし、[Generate Instance]を選択します。このファイルは、アップデートグラムを手動で作成するテンプレートとして使用することもできます。以下は、インサート、アップデート、デリートそれぞれに生成されたアップデートグラムインスタンスの例です。

インサート

まず、インサートの一例です。このインスタンスでは、データの変化を指定するafter ブロックのみを扱います。

<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/D365BusinessCentralProvider"> <ns0:sync> <ns0:before></ns0:before> <ns0:after> <ns0:Accounts accountid="accountid_0" Name="Name_1" /> </ns0:after> </ns0:sync> </ns0:parameters>

アップデート

次に、アップデートの一例です。このインスタンスでは、before ブロック(テーブルに存在するデータ)と、after ブロック(データの変化)の両方を扱います。

<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/D365BusinessCentralProvider"> <ns0:sync> <ns0:before> <ns0:Accounts Id=001d000000YBRseAAH></ns0:Accounts> </ns0:before> <ns0:after> <ns0:Accounts accountid="accountid_0" Name="Name_1" ></ns0:Accounts> </ns0:after> </ns0:sync> </ns0:parameters>

デリート

最後に、デリートの一例です。after ブロックは空になり、アイテムを除去していることを示します。

<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/D365BusinessCentralProvider"> <ns0:sync> <ns0:before> <ns0:Accounts Id=001d000000YBRseAAH></ns0:Accounts> </ns0:before> <ns0:after></ns0:after> </ns0:sync> </ns0:parameters>

スキーマを処理する

Dynamics 365 Business Central レコードのインサート、アップデート、デリートにアップデートグラムを使用するには、こちらのチュートリアルをご覧ください。

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。