コンテンツエリア開始

Background documentation モディフィケーションを伴わない拡張 Locate the document in its SAP Library structure

多くの場合は、SAP が出荷しているか、または既存のアプリケーションを、変更または拡張する必要があります。アプリケーションのソースコードやレイアウトに、個別に変更を加えることをモディフィケーションと呼びます。モディフィケーションは、アプリケーションプログラムの新規リリースをインポートする際にコンフリクトの原因となります。そのようなコンフリクトを回避するため、ABAP Web Dynpro を使用して実装された既存のアプリケーション用にStructure link拡張実装を登録できます。これらの拡張実装は、各オリジナルオブジェクトとは別個に管理される独立開発オブジェクトです。これらは、リリース 7.0 用の Web アプリケーションサーバ内の ABAP ワークベンチに統合されているStructure link拡張コンセプトの一部です。基礎となるオリジナルオブジェクトは、そのような拡張によって変更されることはないので、リリースに変更がある場合はいつでも問題なく更新できます。

ABAP Web Dynpro の拡張実装

Web Dynpro アプリケーション内のABAP ソーステキストは、Structure linkBAdI を使用して拡張できます。このためには、明示的なアンカーポイント (Structure link拡張オプションと呼ばれる) が、アプリケーション開発の際にソースコード内の適切な位置に実装されます。これらのオプションを使用して、個別に開発された BAdI を後からプログラムのフローに挿入できます。そのため、各 BAdI Structure link明示的な拡張の一つです。一方で、Structure link暗黙的な拡張は、アプリケーション開発部門によるさらなる実装を必要としません。

上記のソースコード拡張に加えて、Web Dynpro コンポーネントの個別セクションに拡張を加えることもできます。たとえば、ビュー内で UI エレメントを挿入または非表示にするか、あるいはコントローラコンテキストに新規ノードを挿入することができます。

拡張実装の登録

拡張実装を登録するには、まず SE80 のオブジェクト一覧から必要なコンポーネントを開きます。ダブルクリックすると、エディタ内に拡張を実行するビューまたはコントローラが開きます。

This graphic is explained in the accompanying text

Web Dynpro エクスプローラのアイコンツールバー内に、拡張実装の登録/変更機能のアイコンがあります。

Note "拡張実装の登録/変更" 機能は、オリジナルコンポーネントが表示モードで利用可能な場合のみ、使用できます。表示モードから変更モードへ切り替えると、オリジナルコンポーネント自体が変更可能となるので、拡張実装の登録または変更は行えません。この場合アイコンはグレー表示で使用できません。

アイコンをクリックすると、新規の拡張実装用の登録ダイアログが開くか、このコンポーネント用の既存の拡張実装のすべての一覧が表示されます。

Note拡張実装の中で登録したオブジェクトの名称は、この実装への割当が一意に決定される接頭辞を先頭に持ってくるのが適切です。これにより、オリジナルコンポーネントのオブジェクトとの名称のコンフリクトを避けられます。例:

拡張 myEnhancement_1 内で押ボタンを登録する場合、myEnhancement_1/button_1 のような名称で登録することができます。

ダイアログを完了すると、登録した拡張や拡張変更を実行できます。

ビュー内での拡張の実装

コントローラ内での拡張の実装

ウィンドウ内での拡張の実装

 

Note 一般に、相互に独立している複数の拡張実装を 1 つのコンポーネント用に登録できます。個々の変更は、登録された実装内でのみ編集できます。

 

 

 

コンテンツエリア終了