!--a11y-->
プログラムを動的に作成している間は構文チェックを使用できないため、構文が正しい構造のセットを用意すると便利です。このセットを内部テーブルへロードし、修正して、システムへ書き戻すことができます。この構造には、レポート、サブルーチン、インクルードプログラム、あるいはモジュールプール内のモジュールを使用することができます。次の構文を使用します。
構文
READ REPORT <prog> INTO <itab>.
この命令は、ライブラリに格納されているプログラム
<prog> を、内部テーブル <itab> に読み込みます。そして読み込まれた内部テーブルを変更してから
新しいプログラムの動的登録に説明する方法で新しいプログラムを登録することができます。

次のような簡単なプログラムがあるとします。
REPORT ZSTRUC1.
WRITE / 'Hello, I am a little structure!'.
また次のコードを考えます。
DATA CODE(72) OCCURS 10.
READ REPORT 'ZSTRUC1' INTO CODE.
APPEND 'SKIP.' TO CODE.
APPEND 'WRITE / ''and I am a dynamic extension!''.' TO CODE.
INSERT REPORT 'ZDYN2' FROM CODE.
この例では、登録済みのプログラム
ZSTRUC1 が内部テーブル CODE に読み込まれ、2行が追加されてプログラム ZDYN2 に書き込まれます。 ZDYN2 に対して ABAP エディタをコールすると、次のような画面が表示されます。
