次の方法で共有


Oracle E-Business Suite を使用してインターフェイス テーブルとインターフェイス ビューを挿入、更新、削除、または選択する

Oracle E-Business アダプターは、インターフェイス テーブルとビューに対する挿入、更新、削除、選択などの一連の標準操作を表します。 このトピックでは、アダプターを使用してこれらの操作を実行する方法について説明します。 アダプターがこれらの操作をサポートする方法の詳細については、「 インターフェイス テーブルとインターフェイス ビューに対する操作」を参照してください。 これらの操作の SOAP メッセージの構造については、「 挿入、更新、削除、および選択操作のメッセージ スキーマ」を参照してください。

Note

アダプターは、BLOB、CLOB、NCLOB、BFILE などの大きなデータ型を含むテーブルとビューに対する特定の操作も公開します。 このような操作の詳細については、「 インターフェイス テーブル、インターフェイス ビュー、テーブル、および LOB データを含むビューに対する操作」を参照してください。 BizTalk Serverを使用して大きなデータ型のテーブルと列に対する操作を実行する方法については、「WCF サービス モデルを使用して Oracle E-Business Suite で大きなデータ型を持つテーブルに対する操作を完了する」を参照してください。

Oracle E-Business Suite で基本的な操作を実行する方法

BizTalk Serverで Oracle E-Business アダプターを使用して Oracle E-Business Suite で操作を実行するには、Oracle E-Business Suite アプリケーションを作成するための構成要素に関するページで説明されている手続き型タスクが含まれます。 Oracle E-Business Suite のテーブルとビューに対して挿入、更新、削除、または選択操作を実行するには、次のタスクを実行します。

  1. BizTalk プロジェクトを作成し、インターフェイス テーブルまたはビューで呼び出す操作のスキーマを生成します。

  2. Oracle E-Business Suite からメッセージを送受信するためのメッセージを BizTalk プロジェクトに作成します。

  3. インターフェイス テーブルまたはビューで操作を呼び出すオーケストレーションを作成します。

  4. BizTalk プロジェクトをビルドして展開します。

  5. 物理送受信ポートを作成して BizTalk アプリケーションを構成します。

  6. BizTalk アプリケーションを起動します。

    このトピックでは、これらのタスクを実行する手順について説明します。

スキーマの生成

このトピックでは、Oracle E-Business Suite の AR_ARCHIVE_PURGE_INTERIM インターフェイス テーブルにレコードを挿入して、基本的な挿入、更新、削除、または選択の各操作を実行する方法について説明します。 このインターフェイス テーブルは、Oracle E-Business Suite の 売掛金 アプリケーションで使用できます。

レコードを挿入する方法を示すために、AR_ARCHIVE_PURGE_INTERIM テーブルの挿入操作のスキーマが生成されます。 BizTalk プロジェクトを作成し、アダプター サービス アドインを使用してスキーマを生成する必要があります。 スキーマの生成方法の詳細については、「 Visual Studio での Oracle E-Business Suite 操作のメタデータの取得 」を参照してください。

メッセージとメッセージの種類の定義

先に生成したスキーマは、オーケストレーションのメッセージに求められる "型" を記述します。 メッセージは通常、対応するスキーマによって定義された型の変数です。 オーケストレーションのメッセージを作成し、前の手順で生成したスキーマにリンクする必要があります。

  1. BizTalk プロジェクトにオーケストレーションを追加します。 ソリューション エクスプローラーで、BizTalk プロジェクト名を右クリックし、[追加] をポイントして、[新しい項目] をクリックします。 BizTalk オーケストレーションの名前を入力し、[ 追加] をクリックします。

  2. BizTalk プロジェクトの [オーケストレーションの種類] ウィンドウを開きます (まだ表示されていない場合)。 これを行うには、[ 表示] をクリックし、[ その他のウィンドウ] をポイントして、[ オーケストレーション ビュー] をクリックします。

  3. [オーケストレーション ビュー] で、[ メッセージ] を右クリックし、[ 新しいメッセージ] をクリックします。

  4. 新しく作成したメッセージを右クリックし、[ プロパティ ウィンドウ] を選択します。

  5. Message_1[プロパティ] ウィンドウで、次の操作を行います。

    プロパティ 目的
    識別子 Request」と入力します
    メッセージ型 ドロップダウン リストから [ スキーマ] を展開し、 InsertInterfaceTable.OracleEBSBinding.Insert を選択します。InsertInterfaceTable は BizTalk プロジェクトの名前です。 OracleEBSBinding は、AR_ARCHIVE_PURGE_INTERIM テーブルに対する挿入操作に対して生成されるスキーマです。
  6. 手順 2 を繰り返して、新しいメッセージを作成します。 新しいメッセージの [プロパティ ] ウィンドウで、次の操作を行います。

    プロパティ 目的
    識別子 Response」と入力します
    メッセージ型 ドロップダウン リストから [ スキーマ] を展開し、[ InsertInterfaceTable.OracleEBSBinding.InsertResponse] を選択します。

オーケストレーションの設定

Oracle E-Business Suite で操作を実行するためにBizTalk Serverを使用するには、BizTalk オーケストレーションを作成する必要があります。 このオーケストレーションでは、定義された受信場所に要求メッセージをドロップします。 Oracle E-Business アダプターはこのメッセージを使用し、Oracle E-Business Suite に渡します。 Oracle E-Business Suite からの応答は、別の場所に保存されます。 Oracle データベースで基本的なテーブル操作を実行するための一般的なオーケストレーションには、次のものが含まれます。

  • Oracle データベースにメッセージを送信し、応答を受信する図形を送受信します。

  • Oracle データベースに送信する要求メッセージを受信する一方向の受信ポート。

  • Oracle データベースに要求メッセージを送信し、応答を受信する双方向送信ポート。

  • Oracle データベースからフォルダーに応答を送信する一方向送信ポート。

    Select 操作のサンプル オーケストレーションは、次のようになります。

    インターフェイス テーブルにデータを挿入するオーケストレーション

メッセージ図形の追加

メッセージ図形ごとに次のプロパティを指定してください。 [図形] 列に表示される名前は、前述のオーケストレーションに表示されるメッセージ図形の名前です。

図形 図形の種類 プロパティ
ReceiveMessage 受信 - 名前を ReceiveMessage に設定する
- アクティブ化True に設定する
SendMessage Send - 名前SendMessage に設定する
ReceiveResponse 受信 - 名前ReceiveResponse に設定する
- アクティブ化False に設定する
SendResponse Send - 名前SendResponse に設定する

ポートの追加

論理ポートごとに次のプロパティを指定してください。 [ポート] 列に表示される名前は、オーケストレーションに表示されるポートの名前です。

Port プロパティ
MessageIn - 識別子MessageIn に設定する
- TypeMessageInType に設定する
- 通信パターン一方向に設定する
- 通信方向受信に設定する
LOBPort - 識別子LOBPort に設定する
- LOBPortType に設定する
- 通信パターンRequest-Response に設定する
- [通信の方向][送受信] に設定する
ResponseOut - 識別子ResponseOut に設定する
- TypeResponseOutType に設定する
- 通信パターン一方向に設定する
- [通信の方向] を [送信] に設定する

アクション 図形のメッセージを指定し、ポートに接続する

次の表では、アクション図形のメッセージを指定し、メッセージをポートにリンクするために設定するプロパティとその値を指定します。 [図形] 列に表示される名前は、前述のオーケストレーションに表示されるメッセージ図形の名前です。

図形 プロパティ
ReceiveMessage - メッセージ要求に設定する
- 操作MessageIn.Insert.Request に設定する
SendMessage - メッセージ要求に設定する
- 操作LOBPort.Insert.Request に設定する
ReceiveResponse - メッセージ応答に設定する
- 操作LOBPort.Insert.Response に設定する
SendResponse - メッセージ応答に設定する
- 操作ResponseOut.Insert.Request に設定する

これらのプロパティを指定すると、メッセージの図形とポートが接続され、オーケストレーションが完了します。

BizTalk ソリューションをビルドし、BizTalk Serverに展開する必要があります。 詳細については、「オーケストレーションの ビルドと実行」を参照してください。

BizTalk アプリケーションの構成

BizTalk プロジェクトを展開すると、先ほど作成したオーケストレーションが、BizTalk Server管理コンソールの [オーケストレーション] ウィンドウの下に一覧表示されます。 アプリケーションを構成するには、BizTalk Server管理コンソールを使用する必要があります。 チュートリアルについては、「 チュートリアル: 基本的な BizTalk アプリケーションの展開」を参照してください。

アプリケーションの構成には、次の作業が含まれます。

  • アプリケーションのホストの選択。

  • オーケストレーションで作成したポートを、BizTalk Server管理コンソールの物理ポートにマッピングします。 このオーケストレーションでは、次の操作を行う必要があります。

    • ハード ディスク上の場所と、要求メッセージをドロップする対応するファイル ポートを定義します。 BizTalk オーケストレーションは要求メッセージを使用し、Oracle E-Business Suite に送信します。

    • ハード ディスク上の場所と、BizTalk オーケストレーションが Oracle E-Business Suite からの応答を含む応答メッセージをドロップする対応するファイル ポートを定義します。

    • Oracle E-Business Suite にメッセージを送信する物理 WCF-Custom または WCF-OracleEBS 送信ポートを定義します。 また、送信ポートでアクションを指定する必要があります。 ポートを作成する方法については、「Oracle E-Business Adapter への物理ポート バインディングの手動構成」を参照してください。

      Oracle E-Business アダプターを使用してインターフェイス テーブルまたはインターフェイス ビューに対して操作を実行するには、操作が呼び出される適切なアプリケーション コンテキストを設定する必要があります。 Oracle E-Business アダプターには、任意の操作のアプリケーション コンテキストを指定するための特定のバインディング プロパティが用意されています。 これらのバインディング プロパティは、インターフェイス テーブルに対する操作の実行に使用される WCF-Custom または WCF-OracleEBS ポートに設定する必要があります。

      • ClientCredentialType バインド プロパティが Database に設定されている場合は、次のバインド プロパティを指定してアプリケーション コンテキストを設定する必要があります。

        Binding プロパティ
        OracleUserName Oracle E-Business Suite ユーザーの名前を指定します。 Oracle E-Business アダプターは、Oracle E-Business Suite に接続するときに OracleUserName バインディング プロパティに入力した値の大文字と小文字は保持されません。 ユーザー名は、SQL*Plus の標準規則を使用して Oracle E-Business Suite に渡されます。 ただし、ユーザー名の大文字と小文字を保持する場合、または特殊文字を含むユーザー名を入力する場合は、値を二重引用符で囲んで指定する必要があります。
        OraclePassword Oracle E-Business Suite ユーザーのパスワード。 Oracle E-Business アダプターは、Oracle E-Business Suite に接続するときに OraclePassword バインディング プロパティに入力した値の大文字と小文字は保持されません。 パスワードは、SQL*Plus の標準規則を使用して Oracle E-Business Suite に渡されます。 ただし、パスワードの大文字と小文字を保持する場合、または特殊文字を含むパスワードを入力する場合は、値を二重引用符で囲んで指定する必要があります。
        OracleEBSResponsibilityName Oracle E-Business Suite ユーザーに関連する責任。
      • ClientCredentialType バインド プロパティが EBusiness に設定されている場合は、接続の確立時に Oracle E-Business 資格情報を既に指定している必要があります。 このような場合は、 OracleEBSResponsibilityName バインディング プロパティの値のみを指定する必要があります。

        さまざまなバインド プロパティの詳細については、「 BizTalk Adapter for Oracle E-Business Suite のバインド プロパティ」を参照してください。 アダプターがアプリケーション コンテキストの設定をサポートする方法の詳細については、「アプリケーション コンテキストの 設定」を参照してください。

      Note

      アプリケーション コンテキストは、バインド プロパティを指定するか、Oracle E-Business アダプターによって公開されるメッセージ コンテキスト プロパティを設定することによって設定できます。 バインド プロパティを設定する方法については、「 Oracle E-Business Suite のバインド プロパティを構成する」を参照してください。 メッセージ コンテキスト プロパティを使用してアプリケーション コンテキストを設定する方法については、「 Oracle E-Business Suite でメッセージ コンテキスト プロパティを使用してアプリケーション コンテキストを構成する」を参照してください。

      Note

      アダプター サービス BizTalk プロジェクト アドインを使用してスキーマを生成すると、ポートに関する情報と、それらのポートに設定するアクションを含むバインド ファイルも作成されます。 BizTalk Server管理コンソールからこのバインド ファイルをインポートして、送信ポート (送信呼び出しの場合) または受信ポート (受信呼び出し用) を作成できます。 詳細については、「 ポート バインド ファイルを使用して Oracle E-Business Suite に物理ポート バインドを構成する」を参照してください。

アプリケーションの起動

AR_ARCHIVE_PURGE_INTERIM インターフェイス テーブルにレコードを挿入するには、BizTalk アプリケーションを起動する必要があります。 BizTalk アプリケーションを起動する手順については、「オーケストレーションを 開始する方法」を参照してください。

この段階で、次のことを確認します。

  • オーケストレーションの要求メッセージを受信する FILE 受信ポートが実行されています。

  • オーケストレーションからの応答メッセージを受信する FILE 送信ポートが実行されています。

  • Oracle E-Business Suite にメッセージを送信するための WCF-Custom または WCF-OracleEBS 送信ポートが実行されています。

  • 操作の BizTalk オーケストレーションが実行されています。

操作の実行

アプリケーションを実行した後、FILE 受信場所に要求メッセージをドロップする必要があります。 要求メッセージのスキーマは、前に生成した挿入操作のスキーマに準拠している必要があります。 たとえば、AR_ARCHIVE_PURGE_INTERIM インターフェイス テーブルからすべてのレコードを選択するための要求メッセージは次のとおりです。

<Insert xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/InterfaceTables/AR/AR/AR_ARCHIVE_PURGE_INTERIM">  
  <RECORDSET>  
    <InsertRecord xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/TableViewRecord/AR/AR_ARCHIVE_PURGE_INTERIM">  
      <TRX_ID>001</TRX_ID>  
      <RELATED_ID>002</RELATED_ID>  
    </InsertRecord>  
  </RECORDSET>    
</Insert>  

この要求メッセージは、AR_ARCHIVE_PURGE_INTERIM インターフェイス テーブルにレコードを挿入します。 Oracle E-Business アダプターを使用して Oracle E-Business Suite で基本的な DML 操作を実行するための要求メッセージ スキーマの詳細については、「 挿入、更新、削除、および選択操作のメッセージ スキーマ 」を参照してください。

前の要求メッセージのような単純なデータ列の場合は、 InlineValue 属性を使用することもできます。 InlineValue 属性の詳細については、「 インターフェイス テーブルとインターフェイス ビューに対する操作」の挿入操作の説明を参照してください。

たとえば、インライン値を含む上記の要求メッセージは次のようになります。

<Insert xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/InterfaceTables/AR/AR/AR_ARCHIVE_PURGE_INTERIM">  
  <RECORDSET>  
    <InsertRecord xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/TableViewRecord/AR/AR_ARCHIVE_PURGE_INTERIM">  
      <TRX_ID InlineValue="(Select TRX_ID FROM table_name)">001</TRX_ID>  
      <RELATED_ID>002</RELATED_ID>  
    </InsertRecord>  
  </RECORDSET>    
</Insert>  

この要求メッセージでは、TRX_ID列の値が別のテーブルから取得されます。 そのため、TRX_IDの値として "001" が指定されていても、InlineValue 属性に指定された SELECT ステートメントの値がテーブルに挿入されます。

オーケストレーションによってメッセージが使用され、Oracle E-Business Suite に送信されます。 Oracle E-Business Suite からの応答は、オーケストレーションの一部として定義されている他の FILE の場所に保存されます。 たとえば、上記の要求メッセージに対する Oracle E-Business Suite からの応答は次のとおりです。

<?xml version="1.0" encoding="utf-8" ?>   
<InsertResponse xmlns="http://schemas.microsoft.com/OracleEBS/2008/05/InterfaceTables/AR/AR/AR_ARCHIVE_PURGE_INTERIM">  
  <InsertResult>1</InsertResult>   
</InsertResponse>  

応答には、テーブルに挿入された行の数が含まれます。

ベスト プラクティス

BizTalk プロジェクトを展開して構成したら、バインド ファイルと呼ばれる XML ファイルに構成設定をエクスポートできます。 バインド ファイルを生成した後、ファイルから構成設定をインポートして、同じオーケストレーションの送信ポートや受信ポートなどの項目を作成する必要がないようにすることができます。 バインド ファイルの詳細については、「 Oracle E-Business Suite でアダプター バインドを再利用する」を参照してください。

参照

Oracle E-Business Suite アダプターを使用して BizTalk アプリケーションを開発する