Shopify のデータで Updategram を使用する

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Updategram を使用してShopify のデータの挿入、更新、削除を行うことができます。このガイドでは、CData BizTalk Adapter for Shopify を使用して Updategram スキーマとインスタンスを生成する方法を説明します。

この記事では、CData BizTalk Adapter for Shopify で実行できる Updategram を作成します。スキーマを設計し、それをテンプレートとして挿入、更新、削除の Updategram を生成します。

Shopify 用アダプターをプロジェクトに追加する

Add Adapter ウィザードを使用して、Visual Studio の BizTalk Server プロジェクトにアダプターを追加します。アダプターを使用して、変更したいテーブルに関するメタデータを Shopify に問い合わせます。

  1. Solution Explorer でプロジェクトを右クリックし、Add -> Add Generated Items をクリックします。
  2. 表示されるダイアログボックスで Add Adapter Metadata を選択します。
  3. 表示される Add Adapter Wizard で、リストビューから CData BizTalk Adapter for Shopify を選択します。
  4. Port メニューでは、選択を空白のままにします。または、アダプターを使用するよう構成された Receive Location か Send Port を選択します。
  5. Next をクリックすると、Schema Wizard が表示されます。

Updategram 用のスキーマを生成する

以下の手順で、Visual Studio の BizTalk Server プロジェクトでスキーマを作成します。

  1. まだ行っていない場合は、Shopify アダプターをプロジェクトに追加します。
  2. Add Adapter ウィザードの Connection String ページで、Send Port または Receive Location で構成されていない場合は、認証情報やその他の接続プロパティを入力します。一般的な接続文字列は以下のとおりです:
    AppId=MyAppId;Password=MyPassword;ShopUrl=https://yourshopname.myshopify.com;
    

    それでは、Shopify への接続・認証について説明していきましょう。Shopify では、アクセストークンとOAuth の2つの接続方法をサポートしています。

    アクセストークンによる接続

    アクセストークン経由の接続には、以下の2つのステップが必要です。

    1. Shopify の管理画面でアクセストークンを作成
    2. アクセストークンを使用して認証

    アクセストークンの作成

    まず、アプリを登録してアクセストークンを取得してみましょう。手順は以下のとおりです。

    1. 管理画面からShopify にログインし、AppsApps and sales channels に進みます
    2. Develop apps をクリックしてCreate an app を選択します
    3. Overview タブのConfiguration で、Admin API integration をクリックし、アプリに許可するストアのアクセス権を選択してください。CData製品が必要とするAdmin API 権限については、 href="/kb/help/" target="_blank">ヘルプドキュメントの「はじめに」セクションをご確認ください
    4. Save をクリックします
    5. Overview タブのConfiguration で、Storefront API integration をクリックし、アプリに許可するストアのアクセス権を選択します。CData製品が必要とするStorefront API 権限は以下のとおりです:
      • unauthenticated_read_content
    6. Save をクリックします
    7. API Credentials を選択します
    8. "Access tokens" の下でInstall app をクリックします。これでアクセストークンが作成されます
    9. Admin API Access token のアクセストークンをコピーします。注意:トークンの公開およびコピーは1回のみ可能ですので、必ず保存してください

    アクセストークンによる認証

    続いて、アクセストークンで認証するには、以下のプロパティを設定してください。

    • AuthSchemeAccessToken に設定
    • AccessToken:カスタムアプリからコピーしたアクセストークンの値に設定

    OAuth 認証を介した接続については、ヘルプドキュメントの「OAuth 認証の使用」をご確認ください。

    必要な接続プロパティの詳細については、ヘルプドキュメントの "BizTalk Configuration" の章を参照してください。

  3. Schema Information ページで、General Options セクションの Send Port をクリックします。CommandType メニューから Updategram を選択します。Solicit-Response Send Port でアダプターを使用している場合は、One-Way オプションを無効にします。
  4. 次のページ(Statement Information)で、Updategram のタイプ(Insert、Update、Delete)を選択します。テーブル名とスキーマに含めるカラムを選択します。Update または Delete を行う場合は、Id カラムが必要です。

    :Updategram を作成する際、スキーマに含めたカラムのみを変更できます。

  5. Next をクリックしてスキーマのサマリーを表示し、ウィザードを終了してスキーマを作成します。生成された .xsd ファイルがプロジェクトに追加されます。

Insert、Update、Delete のインスタンスメッセージを生成する

Updategram スキーマを作成したら、.xsd ファイルを使用して Updategram を生成できます。Solution Explorer で .xsd ファイルを右クリックし、Generate Instance を選択します。このファイルをテンプレートとして、手動で Updategram を作成することもできます。以下は、Insert、Update、Delete 用に生成された Updategram インスタンスの例です:

Insert

INSERT の例を以下に示します。このインスタンスでは、データがどのように変更されるかを指定する after ブロックのみがあります。


<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/ShopifyProvider">
  <ns0:sync>
    <ns0:before></ns0:before>
    <ns0:after>
      <ns0:Customers FirstName="FirstName_0" Id="Id_1" />
    </ns0:after>
  </ns0:sync>
</ns0:parameters>

Update

UPDATE の例を以下に示します。このインスタンスでは、before ブロック(テーブルの現在のデータ)と after ブロック(データがどのように変更されるか)の両方があります。


<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/ShopifyProvider">
  <ns0:sync>
    <ns0:before>
      <ns0:Customers Id=001d000000YBRseAAH></ns0:Customers>
    </ns0:before>
    <ns0:after>
      <ns0:Customers FirstName="FirstName_0" Id="Id_1" ></ns0:Customers>
    </ns0:after>
  </ns0:sync>
</ns0:parameters>

Delete

DELETE の例を以下に示します。after ブロックは空になり、アイテムが削除されることを示します。


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

スキーマの処理

Updategram を使用して Shopify レコードの挿入、更新、削除を行う方法については、チュートリアルを参照してください。

はじめる準備はできましたか?

詳細:

Shopify 連携ソリューション