SAS xpt のデータで Updategram を使用する
この記事では、CData BizTalk Adapter for SAS xpt で実行できる Updategram を作成します。スキーマを設計し、それをテンプレートとして挿入、更新、削除の Updategram を生成します。
SAS xpt 用アダプターをプロジェクトに追加する
Add Adapter ウィザードを使用して、Visual Studio の BizTalk Server プロジェクトにアダプターを追加します。アダプターを使用して、変更したいテーブルに関するメタデータを SAS xpt に問い合わせます。
- Solution Explorer でプロジェクトを右クリックし、Add -> Add Generated Items をクリックします。
- 表示されるダイアログボックスで Add Adapter Metadata を選択します。
- 表示される Add Adapter Wizard で、リストビューから CData BizTalk Adapter for SAS xpt を選択します。
- Port メニューでは、選択を空白のままにします。または、アダプターを使用するよう構成された Receive Location か Send Port を選択します。
- Next をクリックすると、Schema Wizard が表示されます。
Updategram 用のスキーマを生成する
以下の手順で、Visual Studio の BizTalk Server プロジェクトでスキーマを作成します。
- まだ行っていない場合は、SAS xpt アダプターをプロジェクトに追加します。
- Add Adapter ウィザードの Connection String ページで、Send Port または Receive Location で構成されていない場合は、認証情報やその他の接続プロパティを入力します。一般的な接続文字列は以下のとおりです:
URI=C:/folder;
ローカルSASXpt ファイルへの接続
URI をSASXpt ファイルを格納しているフォルダに設定すると、ローカルのSASXpt ファイルに接続できます。
S3 データソースへの接続
Amazon S3 ソースに接続してSASXpt ファイルを読み込むことができます。以下のプロパティを設定して接続します:
- URI:接続するバケット内のフォルダに設定。
- AWSAccessKey:AWS アカウントのアクセスキーに設定。
- AWSSecretKey:AWS アカウントのシークレットキーに設定。
- TemporaryLocalFolder:SASXptファイルを一時的にダウンロードするために使用するフォルダへのパス、またはURI に設定。
Azure Data Lake Storage Gen2 への接続
ADLS Gen2 に接続してSASXpt ファイルを読み込むことができます。以下のプロパティを設定して接続します:
- URI:ファイルシステムの名前およびSASXpt ファイルにコンタクトするフォルダの名前に設定。
- AzureAccount:Azure Data Lake storage アカウントの名前に設定。
- AzureAccessKey:Azure Data Lake storage Gen 2 ストレージアカウントのアクセスキーに設定。
- TemporaryLocalFolder:SASXptファイルを一時的にダウンロードするために使用するフォルダへのパス、またはURI に設定。
必要な接続プロパティの詳細については、ヘルプドキュメントの "BizTalk Configuration" の章を参照してください。
- Schema Information ページで、General Options セクションの Send Port をクリックします。CommandType メニューから Updategram を選択します。Solicit-Response Send Port でアダプターを使用している場合は、One-Way オプションを無効にします。
次のページ(Statement Information)で、Updategram のタイプ(Insert、Update、Delete)を選択します。テーブル名とスキーマに含めるカラムを選択します。Update または Delete を行う場合は、Id カラムが必要です。
注:Updategram を作成する際、スキーマに含めたカラムのみを変更できます。
- 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/SASXptProvider">
<ns0:sync>
<ns0:before></ns0:before>
<ns0:after>
<ns0:SampleTable_1 Id="Id_0" Column1="Column1_1" />
</ns0:after>
</ns0:sync>
</ns0:parameters>
Update
UPDATE の例を以下に示します。このインスタンスでは、before ブロック(テーブルの現在のデータ)と after ブロック(データがどのように変更されるか)の両方があります。
<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/SASXptProvider">
<ns0:sync>
<ns0:before>
<ns0:SampleTable_1 Id=001d000000YBRseAAH></ns0:SampleTable_1>
</ns0:before>
<ns0:after>
<ns0:SampleTable_1 Id="Id_0" Column1="Column1_1" ></ns0:SampleTable_1>
</ns0:after>
</ns0:sync>
</ns0:parameters>
Delete
DELETE の例を以下に示します。after ブロックは空になり、アイテムが削除されることを示します。
<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/SASXptProvider">
<ns0:sync>
<ns0:before>
<ns0:SampleTable_1 Id=001d000000YBRseAAH></ns0:SampleTable_1>
</ns0:before>
<ns0:after></ns0:after>
</ns0:sync>
</ns0:parameters>
スキーマの処理
Updategram を使用して SAS xpt レコードの挿入、更新、削除を行う方法については、チュートリアルを参照してください。