!--a11y-->
BAPI
の設計 
シナリオとシナリオ内で使用されるビジネスオブジェクトタイプが、シナリオの分析によって特定されたら、設計フェーズで BAPI の署名が概念的に定義されます。内容を記述して、パラメータ名とパラメータ構造を定義する必要があります。
BAPI
はビジネスインタフェースであり、技術的なインタフェースではないので、BAPI
開発の際には以下の共通必要条件を満たす必要があります。
外部アプリケーションでは、そのアプリケーションに関する知識と BAPI
文書のみで、BAPI
コールを正しく実装できる必要があります。ユーザには SAP
についての知識は不要です。SAP
システムは "
ブラックボックス"
とみなされます。
このフェーズでは、BAPI
がインスタンスメソッドかクラスメソッドのどちらであるか、また、
標準化 BAPI
として、BAPI
を実装することができるかどうかを決定する必要もあります。
インスタンスメソッド
はビジネスオブジェクトタイプ固有のインスタンスを参照します。たとえば、BAPI
Flight.GetDetail
は 1
つのフライトの詳細を取得します。これらのメソッドは、BOR
でインスタンス依存として定義されます。
クラスメソッド
は、ビジネスオブジェクトタイプ固有のインスタンスを参照しません。たとえば BAPI
Flight.GetList
は、特定の基準に適合する既存の全フライトの一覧を提供します。標準化された登録メソッドもクラスメソッドに属します。
登録メソッドでは、新規インスタンスが登録されます。BAPI
FlightBooking.CreateFromData()
では、SAP
システムなどに新規フライトの予約が登録されます。これらのメソッドは、BOR
でインスタンス非依存として定義されます。
ビジネスオブジェクトタイプ固有のインスタンスは、キー項目で識別されます。そのためにこれらのインスタンスは、このフェーズで特別な意味を持ちます。設計フェーズでは、インスタンス依存 BAPI のキーが特別なパラメータとして識別されます。詳細については、インタフェースの定義を参照してください。
BAPI の署名を設計する場合は、以下を念頭に置いてください。
1. メソッド (BAPI) とパラメータの設計では特定の規約に従う必要があります。規約も参照してください。
2. 基本機能を提供する一連の標準メソッドおよびパラメータがあります。BAPI およびパラメータがこのカテゴリにあてはまる場合は、指定されたルールに従って構成する必要があります。概要については、標準化 BAPI および標準化パラメータを参照してください。
3. 設計に関する推奨事項に従って、署名を明確に構成し、簡単に使用できるようします。