!--a11y-->

汎用グループは、汎用モジュールのコンテナです。汎用グループを実行することはできません。汎用モジュールを呼び出すと、汎用グループ全体が呼出元プログラムの内部セッションにロードされます ( まだロードされていない場合) 。追加情報については、外部プロシージャコールの編成を参照してください。
以下の図は、汎用グループの構成を示しています。汎用グループの名前には最大 26
文字を指定することができます。汎用グループ名を使用して、グループのコンポーネントが登録されます (
メインプログラムおよび対応するインクルードプログラム)
。汎用グループまたは汎用モジュールを
汎用モジュールビルダに登録すると、メインプログラムおよびインクルードプログラムが自動的に生成されます。
メインプログラム SAPL<fgrp>
には、以下のインクルードプログラムの INCLUDE
命令だけが入ります。
キ L<fgrp>TOP。FUNCTION-POOL 命令 (REPORT 命令またはPROGRAM 命令の汎用グループと同等) および汎用グループ全体のグローバルデータ宣言が含まれます。
キ L<fgrp>UXX。 インクルードプログラムの追加の INCLUDE 命令が含まれます。これらのインクルードには、実際の汎用モジュールが含まれます。
キ インクルードプログラム L<fgrp>F01 、L<fgrp>F02 には、グループのすべての汎用モジュールから内部サブルーチンコールで呼出可能なサブルーチンのコーディングを含めることができます。
これらのインクルードプログラムの登録は、ABAP ワークベンチの順ナビゲーションによりサポートされます ( たとえば、サブルーチンインクルードを登録するには、汎用モジュールの PERFORM 命令のサブルーチン名をダブルクリックします) 。
汎用グループで COMMON PART を宣言することはできません。汎用グループには、独自のテーブル作業領域 (TABLES) があります。汎用グループはデータをカプセル化します。この点で、ABAP オブジェクトには前バージョンがあります ( 汎用グループからオブジェクトへを参照) 。
汎用グループの汎用モジュールはすべて、グループのグローバルデータにアクセスすることができます。このため、同じデータを使用するすべての汎用モジュールを、1 つの汎用グループに置く必要があります。たとえば、すべてが同じ内部テーブルを使用する汎用モジュールのセットの場合、これらを、グローバルデータにテーブル定義のある汎用グループに置くことができます。
実行可能プログラム ( 型 1) およびモジュールプール( 型 M) のように、汎用グループには画面、選択画面、および一覧を含めることができます。ユーザ入力は、ダイアログモジュールで、または汎用グループのメインプログラムの対応するイベントブロックで処理されます。このコードを書き込むことができる特別なインクルードプログラムがあります。この方法で、汎用グループを使用して単一画面または画面順序をカプセル化することができます。