使用する
BAPIの内容または機能を変更すると、多くの場合、新しいパラメーターが導入され、それがないとインターフェイスが機能しなくなります。多くの場合、これらの変更により、既存のパラメーターの元の意味が失われます。このような変更は、BAPIの下位互換性を失わせるため、互換性のない拡張機能と見なされます。
構文的に互換性のない拡張機能は次のとおりです。
-
フィールド長の変更
-
フィールドタイプの変更
-
汎用モジュールまたはメソッドのパラメータの名前変更
-
構造内にフィールドを挿入する
-
パラメータとフィールドの削除
-
新しい必須パラメーターとフィールドの挿入パラメーターは、BORで必須としてフラグを立てることができます。ただし、これはフィールドには当てはまりません。フィールドは、技術レベルではなく、セマンティックレベルでのみ必須として分類できます。これが、各パラメータのドキュメントで入力できるフィールドを指定する必要がある理由です。
以下の表に、汎用モジュールに対する互換性のない変更をリストします。このリストが網羅的であることを保証することはできません。
プロセス
BAPIに互換性のない変更を加えた場合は、次の3つの手順を実行する必要があります。追加のBAPIを作成し、期限切れのBAPIをサポートしてラベルを付け、置き換えられたBAPIを削除します。
追加のBAPIを作成する
既存のBAPIのインターフェイスの安定性が損なわれないようにするには、既存のBAPIに互換性のない変更を加えないでください。代わりに、既存のBAPIを置き換えるために、1つまたは必要に応じていくつかの追加のBAPIを作成します。
新しいBAPIは、置き換えるBAPIと同じ名前を保持する必要があります。数字の接尾辞が追加されるだけです。この接尾辞は、互換性のない変更がさらに行われると変更されます。
追加のBAPIを作成するときは、 BAPIプログラミングガイド(CA-BFA)のガイドラインに従う必要があります。
期限切れのBAPIのサポートとラベル付け
BAPIが新しいBAPIに置き換えられた後は、置き換えられたBAPIをビジネスオブジェクトリポジトリ(BOR)から削除しないでください。代わりに、最初にこのBAPIに期限切れのラベルを付け、新しいBAPIを導入したリリースと次の機能リリースでサポートを継続します。
この間、元のBAPIは完全に機能し実行可能である必要があります。
-
ビジネスオブジェクトビルダで関連するSAPビジネスオブジェクトタイプを選択し、ノードメソッドを開きます。BAPIにカーソルを置き、[ 選択します。
-
BORで、期限切れのBAPIを置き換える方法を文書化します。
-
特定のリリースで「廃止」に設定されたBAPIを、SAPノート番号0107644「リリース4.5Aからの廃止されたBAPIの一括ノート」に記録します。
-
リリースノートで、関連する後続のBAPIについてユーザーに通知します。
次の図は、BAPIの有効期限フェーズを示しています。この例では、新しいBAPIがリリース4.0に導入されています。置き換えられたBAPIは、リリース4.0(新しいBAPIが導入された修正リリース)および次の機能リリース’F1’でサポートされます。その後、BAPIは次の機能リリース「F2」では使用できなくなります。
BAPI有効期限フェーズ
置き換えられたBAPIを削除します
廃止に設定されたBAPIの有効期限フェーズが終了した場合は、BAPIをBORから削除できます。開発者が後継者に順応する時間を確保できるように、廃止されたBAPIを新しいリリースの開始にできるだけ近づけて削除する必要があります。
BAPIを削除するには、以下の手順に従います。
-
BORからメソッドを削除します
これを行うには、関連するSAPビジネスオブジェクトタイプをビジネスオブジェクトビルダに表示します。ノードを展開しますメソッド適切なBAPIにカーソルを置き、
を選択して削除します。 -
BAPIを実装する汎用モジュールを削除します。
機能ビルダで、機能モジュール項目に機能モジュールの名称を入力し、 を選択します。
-
特定のリリースで「廃止」に設定されたBAPIを、SAPノート番号0107644「リリース4.5Aからの廃止されたBAPIの一括ノート」に記録します。