拡張開発

 

NetWeaver ABAP Platformでは、プログラムといったリポジトリオブジェクトを直接変更せずに、予め意図的に用意された間口にコーディングしてカスタマ領域で新しいリポジトリオブジェクトを開発することにより、既存の機能を拡張する仕組みが用意されております。

このカテゴリでは、NetWeaver ABAPリリース7.0 (SAP NetWeaver 2004s)以降から導入された新しいテクニックの拡張フレームワークと従来の拡張テクニックを取り上げてそれぞれ説明します。

拡張フレームワーク(Enhancement Framework)とは、、従来の拡張テクニック(カスタマExitやクラシックBAdiなど)をオブジェクト指向の手法で改良したフレームワークです。 拡張フレームワークでサポートされる拡張仕組は、「BAdiによるオブジェクトプラグイン」と「Enhancement Optionによるソースコードプラグイン」に大別します。 ここのBAdiは従来のクラシックBAdiと区別して、新規BAdiと呼ばれます。クラシックBAdiから新規BAdiに自動的に変換することができます。

詳細はこちらをお読みください。

新しい拡張技術の拡張フレームワークができるまでには、以下の古い拡張が使われてきました。

  • カスタマExit
    • 汎用モジュールExit
    • メニューExit
    • Dynpro Exit
  • クラシックBADI

クラシックBADIは汎用モジュールExit に取って代わったものとして、リリース4.6d 以降導入された技術です。リリース4.6までには、拡張技術としてカスタマExitしか使えない時代でした。

拡張ポイントの調査や拡張開発を実施するには、標準で用意された以下の機能を利用することができます。

Trcd機能目的
SPRO導入ガイド(IMG) 従来の拡張テクニック(カスタマEXIT、ユーザEXIT、クラシックBADI)で実装可能なポイントを調査したりナビゲーションすることができます。
SE84リポジトリ情報ブラウザ各拡張テクニックの拡張ポイント及び実装済の拡張プロジェクトを調査したりナビゲーションすることができます。
BADI/クラシックBADI/カスタマEXIT/Enhancement
SMODSAP拡張拡張ポイントを指定してカスタマEXITを作成
CMODSAP拡張プロジェクト管理作成済のカスタマEXITを編集
SE18BADIビルダ:定義BAdi定義
SE19BADIビルダ:実装BAdi実装
SE37汎用モジュールビルダEnhancement Option実装を作成することができます
SE38ABAPエディターEnhancement Option実装を作成することができます
SE80ABAPワークベンチSE84、SE37、SE38などの機能がすべて統合されています