使用する
お客様は、独自の特別な要件を満たすために、SAPが提供する標準システムを変更しなければならないことがよくあります。この事実は、BAPIの実装に反映されています。
ターゲットグループ
このドキュメントの対象読者は次のとおりです。
-
SAPが提供するBAPIを拡張または変更したいお客様変更の概念は、IBUおよびパートナーも使用できます。簡単にするために、このグループは以下では「顧客」と呼ばれます。
-
顧客による拡張を可能にするためにBAPIを設計する必要があるSAP開発者
実装に関する考慮事項
BAPIを拡張または変更するには、次のものが必要です。
-
BAPI-はじめにと概要で説明されているBAPIの基本的な知識
-
BAPIプログラミングガイドで説明されているBAPI開発の詳細な知識
-
ABAPプログラミング言語およびABAPワークベンチに関する知識
-
SAPシステムの一般的な知識
特徴
既存のBAPIへの変更の種類
既存のBAPIに対する顧客の変更は、顧客の拡張または
顧客の強化
SAPによって実装された標準への変更(たとえば、新しいリリース)は拡張BAPIで自動的に有効化されるため、可能な限り、(変更概念の代わりに)得意先拡張概念を使用する必要があります。対照的に、BAPIが変更されている場合、これらの変更は自動的にアクティブ化されません。
得意先拡張は、インタフェースにあるコンテナを使用してBAPIに転送されます。この概念は、たとえば、顧客がBAPIの基盤となるデータベーステーブルを拡張したい場合、または既存のBAPIを使用して独自のテーブルを操作したい場合に役立ちます。
顧客の変更
機能を拡張する場合、たとえば、BAPIに新しいパラメータまたはパラメータ項目を追加したり、汎用モジュールのコーディングを変更したりする場合は、既存のBAPIを変更する必要があります。BAPIが変更された場合、新しいリリースでSAPによって提供されたバージョンへの変更は、変更されたバージョンでは自動的にアクティブ化されません。
標準システムで提供されるビジネスオブジェクトタイプに対してBAPI変更を行うことはできません。代わりに、このオブジェクトタイプのすべての特性とメソッドを継承するビジネスオブジェクトタイプのサブタイプを作成します。元のオブジェクトタイプがスーパータイプになります。次に、派生したサブタイプに対して必要な変更が実行されます。
このようにして、得意先に提供されるSAP標準は変更されず、リリースがアップグレードされても変更されたバージョンが保持されます。
この手順では、既存のサブタイプに対してビジネスオブジェクトタイプの下位サブタイプをさらに作成できるため、BAPIを段階的に変更することもできます。
オブジェクトタイプおよびサブタイプに関する一般情報については、SAP BusinessObjectBuilderの文書を参照してください。
次の表は、お客様の機能強化と変更の相対的な長所と短所を対比しています。