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ファイル書き込み処理」で出力ファイルに書き込みます。

ポイントとなる機能
名前 | 説明 | ツールパレット上の場所 |
---|---|---|
ビジネスメソッド実行 | SAPシステムのBAPIを含むRFC汎用モジュールまたはIDocを実行します。 | 「アプリケーション」-「SAP」-「ビジネスメソッド実行」 |
処理のポイント
CSVアダプタはテーブルモデル型、SAPアダプタはXML型のため、マッピング処理を使用しデータをマッピングする必要があります。サンプルプロジェクトの使用方法
上記処理を実装したサンプルプロジェクトを用意しています。サンプルプロジェクトを使用する場合の手順は、以下の通りです。サンプルプロジェクトのダウンロード | 逆引きリファレンス シナリオ074のサンプルプロジェクト |
---|
- サンプルプロジェクトの展開
サンプルプロジェクトファイル「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)を作成します。

スクリプトの作成手順

- デザイナのツールパレット「ファイル」-「CSV」-「CSVファイル読み取り」から、CSVファイル読み取り処理をスクリプトキャンバスに配置します。
- CSVファイル読み取り処理の設定は、以下のように行います。
[必須設定]タブ
[読み取り設定]タブ
- CSVファイル読み取り処理の設定は、以下のように行います。
- デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping」)をスクリプトキャンバスに配置します。
- デザイナのツールパレット「アプリケーション」-「SAP」-「ビジネスメソッド実行」から、ビジネスメソッド実行処理をスクリプトキャンバスに配置します。
- ビジネスメソッド実行処理の設定は、以下のように行います。
[必須設定]タブ
処理のポイント
- [インテグレーションコンポーネント]にはEICSに作成したインテグレーションコンポーネントの名前を設定します。
- [ビジネスメソッド]にはEICSに作成したビジネスメソッドの名前を設定します。
[実行設定]タブ
処理のポイント
- [空のテーブルパラメータを削除する]にチェックを入れます。
- ビジネスメソッド実行処理の設定は、以下のように行います。
- マッピング処理(「mapping」)のMapperエディタを開き、ビジネスメソッド実行処理の入力スキーマに入力データをマッピングします。
- マッピングキャンバスは、以下のように設定します。
マッピングキャンバス
- マッピングキャンバスは、以下のように設定します。
- デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping(1)」)をスクリプトキャンバスに配置します。
- デザイナのツールパレット「ファイル」-「CSV」-「CSVファイル書き込み」から、CSVファイル書き込み処理をスクリプトキャンバスに配置します。
- CSVファイル書き込み処理の設定は、以下のように行います。
[必須設定]タブ
[書き込み設定]タブ
- CSVファイル書き込み処理の設定は、以下のように行います。
- マッピング処理(「mapping(1)」)のMapperエディタを開き、ビジネスメソッド実行処理の出力スキーマから出力データをマッピングします。
- マッピングキャンバスは、以下のように設定します。
マッピングキャンバス
番号 ロジック名 説明 ツールパレット上の場所 (1) 単純な繰り返し 指定したノードを繰り返します。 「繰り返し」-「基本」-「単純な繰り返し」
- マッピングキャンバスは、以下のように設定します。
- スクリプトを実行し、正常終了すれば成功です。