SAPからBAPIを使ってデータを取得したい(EICS)
キーワード:SAP EICS,BAPI,RFC
シナリオ一覧に戻る
概要
SAPからBAPIを使ってデータを取得したい場合、SAPアダプタのビジネスメソッド実行処理を使用します。
SAPアダプタのビジネスメソッド実行処理を使用するためには、SAP Enterprise Integration Component Server(以下、EICS)にビジネスメソッドとして登録が必要です。
サンプルプロジェクトの説明
SAPシステムに登録されている銀行情報を取得するBAPI(BAPI_BANK_GETLIST)を実行し、取得したデータをCSVファイルに書き出します。
処理の流れ
サンプルプロジェクトの処理の流れは以下の通りです。
「
CSVファイル読み取り処理
」で入力ファイルを読み取ります。
「
マッピング処理
」で「
ビジネスメソッド実行処理
」の入力スキーマに入力データをセットします。
「
ビジネスメソッド実行処理
」でSAPシステムに登録されたBAPIからデータを取得します。
「
マッピング処理
」で「
ビジネスメソッド実行処理
」の出力スキーマから出力データをセットします。
「
CSVファイル書き込み処理
」で出力ファイルに書き込みます。
実行結果のイメージについては、サンプルプロジェクトのサンプルデータ「Result.csv」を参照してください。
ポイントとなる機能
名前
説明
ツールパレット上の場所
ビジネスメソッド実行
SAPシステムのBAPIを含むRFC汎用モジュールまたはIDocを実行します。
「アプリケーション」-「SAP」-「ビジネスメソッド実行」
処理のポイント
CSVアダプタはテーブルモデル型、SAPアダプタはXML型のため、マッピング処理を使用しデータをマッピングする必要があります。
サンプルプロジェクトの使用方法
上記処理を実装したサンプルプロジェクトを用意しています。サンプルプロジェクトを使用する場合の手順は、以下の通りです。
サンプルプロジェクトファイル名
rl_reference_074.zip
サンプルプロジェクトの展開
サンプルプロジェクトファイル「rl_reference_074.zip」を展開します。
プロジェクトのアップロード
「rl_reference_074.zip」を展開後に作成される「rl_reference_074プロジェクト」ディレクトリがプロジェクトファイルとなります。
DataSpider Studioを起動し、マイプロジェクトの画面から
[ファイル]
-
[ローカルからアップロード]
で展開したディレクトリ「rl_reference_074プロジェクト」をアップロードしてください。
サンプルデータの準備
「rl_reference_074.zip」を展開後に作成される「samples」ディレクトリがサンプルデータとなります。
$DATASPIDER_HOME/server/samplesディレクトリに上書きしてください。
RFCユーザの準備
RFCユーザを接続先のSAPに登録します。
一般的に、ユーザタイプが「通信」または「システム」のユーザを作成します。
ビジネスメソッドの作成
SAPアダプタでBAPIを使用するため、EICSにインテグレーションコンポーネントおよびビジネスメソッドを作成します。
EICSを起動します。
インテグレーションコンポーネント(Integration Component)を作成します。
ビジネスメソッド(Business Method)を作成します。
「RFCユーザの準備」および「ビジネスメソッドの作成」の詳細については、「
BAPIインバウンド処理チュートリアル
」を参照してください。
スクリプトの作成手順
プロセスフローおよびデータフローは、「
サンプルプロジェクトの説明
」のスクリプト画像を参照して適宜設定してください。
デザイナのツールパレット「ファイル」-「CSV」-「CSVファイル読み取り」から、CSVファイル読み取り処理をスクリプトキャンバスに配置します。
CSVファイル読み取り処理の設定は、以下のように行います。
[必須設定]タブ
[読み取り設定]タブ
デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping」)をスクリプトキャンバスに配置します。
デザイナのツールパレット「アプリケーション」-「SAP」-「ビジネスメソッド実行」から、ビジネスメソッド実行処理をスクリプトキャンバスに配置します。
ビジネスメソッド実行処理の設定は、以下のように行います。
[必須設定]タブ
処理のポイント
[インテグレーションコンポーネント]
にはEICSに作成したインテグレーションコンポーネントの名前を設定します。
[ビジネスメソッド]
にはEICSに作成したビジネスメソッドの名前を設定します。
[実行設定]タブ
処理のポイント
[空のテーブルパラメータを削除する]
にチェックを入れます。
マッピング処理(「mapping」)のMapperエディタを開き、ビジネスメソッド実行処理の入力スキーマに入力データをマッピングします。
マッピングキャンバスは、以下のように設定します。
マッピングキャンバス
デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping(1)」)をスクリプトキャンバスに配置します。
デザイナのツールパレット「ファイル」-「CSV」-「CSVファイル書き込み」から、CSVファイル書き込み処理をスクリプトキャンバスに配置します。
CSVファイル書き込み処理の設定は、以下のように行います。
[必須設定]タブ
[書き込み設定]タブ
マッピング処理(「mapping(1)」)のMapperエディタを開き、ビジネスメソッド実行処理の出力スキーマから出力データをマッピングします。
マッピングキャンバスは、以下のように設定します。
マッピングキャンバス
番号
ロジック名
説明
ツールパレット上の場所
(1)
単純な繰り返し
指定したノードを繰り返します。
「繰り返し」-「基本」-「単純な繰り返し」
スクリプトを実行し、正常終了すれば成功です。