Oracle® Fusion Middleware Oracle Data IntegratorのためのSAP ABAP BWアダプタ・スタート・ガイド 11g リリース1 (11.1.1) B72793-01 |
|
前 |
次 |
この章では、デルタ抽出のパッケージを作成する方法を説明します。
これまでに、BWのデータ・ターゲットからデータを抽出する例を示してきました。この章で説明する手順では、これまでの章で説明したインタフェースをデルタ抽出インタフェースに変換する方法を説明します。
デルタ抽出インタフェースでは、データのうち、前回の抽出以降に変更された分のみが抽出されます。デルタ抽出インタフェースがサポートされるのは、インフォ・キューブ、ODS/DSOおよびオープン・ハブ・オブジェクトのみであり、インフォ・オブジェクトに対してはサポートされません。
この章の内容は次のとおりです。
最初のステップは、インタフェースに変更を加えることです。
目的のインタフェースを選択します。
そのインタフェースをダブルクリックします。
「フロー」タブを選択します。
ODIソース・セットをクリックします。
KMのオプションFIRST_REQ_IDおよびLAST_REQ_IDの値を次のとおりに設定します。
「OK」をクリックしてインタフェースを保存して閉じます。
2番目のステップでは、最後に抽出されたリクエストIDを格納するためのODI変数を作成します。このリクエストIDは、次回抽出を実行するときの開始点となります。
最後のリクエストIDを保持するためのMIN_REQUEST_ID変数を作成します。次に示すように、MIN_REQUEST_ID変数を数値変数として設定し、「アクション」を、「履歴化」
または「最後の値」
に設定する必要があります。
この変数の値は、3番目のステップで説明するデルタ抽出パッケージの終了時に更新されます。これは、デルタ抽出の終了時に行われ、MAX REQUEST IDがSAP BWシステムからフェッチされてODI変数(MIN_REQUEST_ID)に格納されます。ここに示したリフレッシュ式を使用して変数が更新されます。
3番目のステップでは、これまでのステップで作成したビルディング・ブロック(変数とインタフェース)からパッケージを作成します。
「SAP Demo」
プロジェクトを開きます。
新しいパッケージを「SAP Demo」
という名前で作成します。
「変数の宣言」ステップをこのパッケージに挿入します。
MIN_REQUEST_ID
変数をドラッグ・アンド・ドロップして「変数の宣言」ステップ・タイプを選択します。
「フロー」ステップをこのパッケージに挿入します。
前の項でインフォ・キューブ/ODSまたはオープン・ハブ抽出用に作成したインタフェースを、パッケージにドラッグ・アンド・ドロップします。
「変数のリフレッシュ」ステップをこのパッケージに挿入します。
MIN_REQUEST_ID
変数をドラッグ・アンド・ドロップして「変数のリフレッシュ」ステップ・タイプを選択します。
ステップ・シーケンスを定義します。
「変数のリフレッシュ」ステップを「最初のステップ」として定義します。
これを、成功時の次のステップである「フロー」ステップにリンクします。
「フロー」ステップを「変数のリフレッシュ」ステップ(成功時の次のステップであり、パッケージの最後のステップ)にリンクします。変数間に矢印を追加します。
パッケージは、このスクリーンショットのようになります。
統合パッケージを実行するには:
「プロジェクト」ツリー・ビューで「SAP Demo」
プロジェクトを開きます。
「SAP Demo」
パッケージを選択します。
右クリックして「実行」を選択します。
「実行」ウィンドウの「OK」をクリックします。
「セッションを開始しました」ウィンドウの「OK」をクリックします。
デルタ抽出パッケージを実行したときに行われる処理
最初に、Oracle Data Integratorによって変数MIN_REQUEST_IDが最後の履歴化値に初期化されます(「変数の宣言」ステップ)。この値が、データ抽出開始位置を指定するためにABAP抽出プログラムに渡されます。KMがSAPシステムに、割当て済リクエストIDの最大値を問い合せます。最小リクエストIDから最大リクエストIDまでのすべてのデータが抽出されます(インタフェース)。
インタフェースの実行後に、変数リフレッシュ・ステップによって最大リクエストIDがMIN_REQUEST_IDに格納され、これが次回実行時に使用されます。