SAP BAPI パッケージで [構造を取得] コマンドを使用する例

SAP BAPI パッケージを使用して、データを取得するための構造を入力する Bot をビルドします。

前提条件

SAP Java コネクターと DLL を SAP の Web サイトからダウンロードします。

このチュートリアルでは SAP デモ フライト データ アプリケーションから BAPI_FLIGHT_GETLIST を呼び出す Bot をビルドします。実行すると、Bot は航空会社 ID と目的地情報を入力して BAPI 関数を呼び出し、フライト リストを取得し、応答データを CSV ファイルに書き出します。

以下のインポート パラメーターを使用して、検索機能を制限します。
  • AIRLINE: このパラメーターを使用して航空会社 ID を渡します。
  • DESTINATION_FROM: パラメーターで構造を取得し、都市名と空港 ID を渡します。
このチュートリアルは、次のアクションの実行方法を説明することを意図しています。
  • インポート パラメーターの構造を取得します。
  • 取得した構造体のフィールドに値を設定します。
  • 入力されたデータに基づいて、テーブルの応答データを取得します。

手順

  1. SAP-BAPI-FlightListReport という名前の タスク Bot を作成します。
    1. Control Room にログインします。
    2. 左側のペインで [オートメーション] をクリックします。
    3. [Bot を作成] アイコンをクリックします。
    4. [名前] フィールドに「SAP-BAPI-FlightListReport」と入力し、[作成と編集] をクリックします。
  2. Bot を SAP システムに接続するには、[アクション] パネルで [SAP BAPI] > [接続] アクションを見つけて、Bot エディターに追加します。
    1. [JCo: [SAP Java コネクター パッケージ] で、Java コネクター .jar ファイルのパスを指定します。
    2. [JCo DLL 依存性] で、DLL ファイルのパスを指定します。
    3. [カスタム アプリケーション サーバー] に [接続タイプ] を選択します。
    4. [アプリケーション サーバーのホスト名] で、SAP アプリケーション サーバーのホスト名を指定します。
      注: ベスト プラクティスとして、Credential Vault を使用して、ホスト名、ユーザー名、パスワードなどの機密情報を指定します。
    5. [システム番号] に、インスタンス番号を入力します。
    6. [SAP インスタンスのシステム ID] に、システム ID を入力します。
    7. [クライアント番号] に、クライアント番号を入力します。
    8. [ログオン言語コード] に、[EN] またはお使いのシステムで使用する言語を入力してください。
    9. [ルーター文字列] に、SAP ルーター文字列を入力します。
    10. [ユーザー名] に、SAP ユーザー名を入力します。
    11. [パスワード] に、パスワードを入力します。
    12. Bot を実行して、接続をテストします。
      指定された接続プロパティが正しい場合、Bot が正常に実行されます。
  3. 関数を作成するには、[SAP BAPI] > [関数を作成] アクションを追加します。
    1. [関数エイリアス名] に、「getFlightListByAirline」と入力します。
    2. [BAPI 名] に、「BAPI_FLIGHT_GETLIST」と入力します。
  4. 航空会社名でデータをフィルタリングするには、[SAP BAPI] > [フィールド値を設定] アクションを実行します。
    1. [関数エイリアス名] に、「getFlightListByAirline」と入力します。
    2. [関数] タブをクリックします。
    3. [フィールド名] に、「AIRLINE」を入力パラメーター名として入力します。
    4. [フィールド値] に、「AZ」と入力します。
  5. 空港と目的地の都市で選択を制限するには、DESTINATION_FROM のインポート パラメーターの構造を取得してから、取得した構造のフィールドに値を設定します。これを実行するには、[SAP BAPI] > [構造を取得] アクションを実行します。
    1. [関数エイリアス名] に、「getFlightListByAirline」と入力します。
    2. [構造名] に、「DESTINATION_FROM」と入力します。
    3. 取得した構造をエイリアスに割り当てるには、[送り先] で [エイリアス] タブをクリックし、[構造のエイリアスを作成] に「destinationFrom」と入力します。
      これで、エイリアスを使用して、取得した構造体のフィールドに値を設定することができるようになりました。
  6. DESTINATION_FROM パラメーターの [AIRPORT ID] フィールドに値を設定するには、[SAP BAPI] > [フィールド値を設定] アクションを追加します。
    1. [関数エイリアス名] に、「getFlightListByAirline」と入力します。
    2. [送り元] で、[構造] タブをクリックします。
    3. [構造のエイリアス] に、「destinationFrom」と入力します。
    4. [フィールド名] に、「AIRPORTID」と入力します。
    5. [フィールド値] に、「FCO」と入力します。
  7. DESTINATION_FROM パラメーターの [CITY] フィールドに値を設定するには、[SAP BAPI] > [フィールド値を設定] アクションを追加します。
    1. [関数エイリアス名] に、「getFlightListByAirline」と入力します。
    2. [送り元] で、[構造] タブをクリックします。
    3. [構造のエイリアス] に、「destinationFrom」と入力します。
    4. [フィールド名] に、「CITY」と入力します。
    5. [フィールド値] に、「ROME」と入力します。
  8. BAPI_FLIGHT_GETLIST を実行するには、[SAP BAPI] > [関数を実行] アクションを追加します。
    1. [関数エイリアス名] に、「getFlightListByAirline」と入力します。
  9. FLIGHT_LIST テーブルからフィルタリングされたデータを取得するには、[SAP BAPI] > [テーブルを取得] アクションを追加します。
    1. [関数エイリアス名] に、「getFlightListByAirline」と入力します。
    2. [テーブル名] で、[FLIGHT_LIST] タブをクリックします。
    3. [送り先] で、[変数] をクリックして、取得したテーブル データをメモリに保存します。
    4. [結果を変数に保存] で、[(x)] をクリックして、「tblFlightList」という名前の変数を作成します。
  10. 取得したテーブルのデータを CSV ファイルに書き込むには、[データ テーブル] > [ファイルへの書き込み] アクションを追加します。
    1. [データ テーブル] で、[tblFlightList] を選択します。
    2. [ファイル名を入力] で、データを書き込む CSV ファイルのパスを指定します。
    3. [フォルダー/ファイルが存在しない場合は作成する] を選択します。
    4. [既存のファイルを上書き] をクリックします。
  11. 保存して、Bot を実行します。