ビジネス・オブジェクト定義のアプリケーション固有情報 (ASI) は、ビジネス・オブジェクトの処理方法に関する、アプリケーションに依存した指示を BAPI Module に提供します。この指示は、以下のレベルで指定されます。
ビジネス・オブジェクト・レベルの ASI は、表 14 に示すように、オブジェクトのタイプごとに設定する必要があります。
オブジェクト・タイプ | アプリケーション固有の情報 |
---|---|
単一 BAPI 呼び出しを表すオブジェクト | type=bapi |
BAPI トランザクションを表すオブジェクト | type=bapi_txn |
BAPI ResultSet を表すオブジェクト | type=bapi_resultset |
動詞レベルの ASI は、表 15 に示すように、オブジェクトのタイプごとに設定する必要があります。
オブジェクト・タイプ | 動詞 ASI |
---|---|
単一 BAPI 呼び出しを表すオブジェクト | verb ASI=NameOfBAPI |
BAPI トランザクションを表すオブジェクト | verb ASI=NameOfBAPI1;NameOfBAPI2;NameOfBAPI3 |
カスタム・ビジネス・オブジェクト・ハンドラーを表すオブジェクト | CBOH=bapi.client.customBOHandlerName |
コネクターは以前のリリースのビジネス・オブジェクトの動詞 ASI の形式をサポートします。ここでは、AppSpecific プロパティーの値により、BAPI 固有のビジネス・オブジェクト・ハンドラーのクラス名 (verb ASI= bapi.client.BOHandlerName。 bapi.client は WebSphere Business Integration の BAPI 固有のビジネス・オブジェクト・ハンドラー名の修飾子で、 BOHandlerName は クラスの名前) を取り込みます。ビジネス・オブジェクト・ハンドラーがクライアントとして動作することを示すために、ビジネス・オブジェクト・ハンドラー名の前に値 client を組み込む必要があります。コネクターはこのような以前の形式をサポートしますが、SAPODA は以前の形式を自動的に生成しないため、これを動詞 ASI の中で名前で明示的に指定する必要があります。
例えば、以前のリリースの SALES_ORDER_CREATEFROMDAT2 BAPI をサポートしている場合、アプリケーション固有の情報は次のようになります。
AppSpecificInfo = bapi.client.sales_order_createfrom dat2
カスタム・ビジネス・オブジェクト・ハンドラーでは、動詞 ASI を明示的に設定 (SAPODA では生成されないため) し、パッケージ名で完全に修飾する必要があります (bapi.client がパッケージ名を表します)。
コネクターは、属性のアプリケーション固有情報の値を使用して、どのインポート・パラメーター、エクスポート・パラメーター、および表パラメーターを使用するかを決定します。このプロパティーの値には、プレフィックス I (インポート・パラメーターの場合) または E (エクスポート・パラメーターの場合) が含まれています。このプレフィックスは、属性値がデータを SAP アプリケーションに渡すために使われるのか、SAP アプリケーションからデータを渡すために使われるのかを示します。
構造体パラメーターはインポートとエクスポートの場合があるため、パラメーター値の前に I または E が使用されます。表パラメーターは、BAPI にデータを渡したり、BAPI からデータを戻したりすることができるため、I と E の両方のパラメーター値を持つことができます。
図 49 に、ビジネス・オ ブジェクトと BAPI_EXAMPLE という名前のサンプル BAPI の間の対応を示します。この例では、単純属性 (Attribute_1、 Attribute_2、 および Attribute_3) は、インポート・パラメーターまたはエクスポート・パラメーターのみを指定しています。子ビジネス・オブジェクトを表す属性 (Child_1) は、エクスポート構造体パラメーターに対応します。子ビジネス・オブジェクトの配列を表す属性 (Child_2) は、表パラメーターに対応します。
各子ビジネス・オブジェクトには、対応する構造体またはテーブルのフィールドに対応する単純属性 (それぞれ Attribute_11 と Attribute_14) があります。これらのフィールドは、BAPI の詳細を参照することで確認できます。
表 16 に、特定の種類の属性に対するアプリケーション固有情報の書式を示します。
AppSpecificInfo の書式 | 属性のタイプ |
---|---|
IParameterName:EParameterName | 単純 |
ITableName:ETableName | 表パラメーターにマップされる、子ビジネス・オブジェクトを表します。 |
IStructureName:EStructureName | 構造体パラメーターにマップされる、子ビジネス・オブジェクトを表します。 |
IFieldName:EFieldName | 表パラメーターまたは構造体パラメーターのフィールドにマップされる、子ビジネス・オブジェクトの属性を表します。 |
SAPODA は、ビジネス・オブジェクト定義に対する適切なアプリケーション固有情報を自動的に生成します。生成されたアプリケーション固有情報のパラメーター名は、変更しないようにお勧めします。