ABAP入門(3/10):レポートプログラム

2009年9月25日 Posted in ABAP Posted in SAP 技術トピック

初回で作成した「Hello World」も、レポートプログラムなのですが、今回はその特徴をもう少しご説明したいと思います。

 

まずは、下記のソースコードを使用して、初回と同様にレポートプログラムを作成します。

**********************************************

REPORT ZTESTPROG.

 

 

PARAMETERS P_TEXT(20).

 

 

INITIALIZATION.

 

P_TEXT = 'DEFAULT VALUE'.

 

 

START-OF-SELECTION.

 

WRITE P_TEXT.

**********************************************

 

まずはこれを実行してみます。

するとこのような画面が表示されます。

テキストを書き換えて実行を押すと、

こうなります。

 

さて、個別の説明に移りますが、まず、

PARAMETERS P_TEXT(20).

この部分です。

 

ここでは、命令PARAMETERSを使用して、変数P_TEXTを定義しています。前回、変数は命令DATAで定義するとご紹介しましたが、この方法でも変数が定義されます。但し、この場合変数名の長さが8桁まで、という制限があります。

 

すると、この変数を入力項目とした選択画面が生成され、プログラムを実行すると、それが表示されることになります。

 

次に、

INITIALIZATION.

 

P_TEXT = 'DEFAULT VALUE'.

 

 

START-OF-SELECTION.

この部分ですが、INITIALIZATIONは、上記の選択画面を表示する前に実行する処理を記述するための場所を定義します。このINITIALIZATIONから、START-OF-SELECTIONまでの間に書かれた処理が、選択画面を表示する前に実行されます。ここでは、変数P_TEXTに値DEFAULT VALUEをセットし、そのまま画面に表示することでこれを初期値とするようにしています。

 

このようにABAPでは、INITIALIZATIONのような命令を使用して、処理を行うタイミングを制御することができます。

 

START-OF-SELECTIONもINITIALIZATIONと同様に処理のタイミングを制御する命令で、選択画面で実行ボタンを押した後に実行される処理はこれ以降に記述します。

 

INITIALIZATIONやSTART-OF-SELECTIONはHello Worldでは登場しませんでした。ということは省略可能ということです。要件に合わせて使用する、ということで、これらの記述がないと、単純に上から下に実行していくイメージになります。

 

このタイミング制御に関しての詳細は、こちらのSAPヘルプをご覧ください。

 

最後に、

WRITE P_TEXT.

の処理により、選択画面で入力したテキストをWRITE命令により画面に出力します。

 

このように、レポートプログラムは、選択画面があり、そこでパラメータを指定して実行したら、その結果を出力画面に表示して終了、といった流れが基本になります。

 

 

REALTECH 藤川


このエントリーをはてなブックマークに追加
トラックバックURL:

コメントする

(コメントを表示する際、コメントの承認が必要になることがあります。承認されるまではコメントは表示されません。その時はしばらくお待ちください。)