SAPABAP-レポートプログラミング

A report組織化された構造でのデータの表示です。多くのデータベース管理システムには、レポートの設計と生成を可能にするレポートライターが含まれています。SAPアプリケーションは、レポートの作成をサポートしています。

従来のレポートは、ループ内のWRITEステートメントの出力データを使用して作成されます。サブレポートは含まれていません。SAPは、クライアント間でテーブルをコピーするために使用されるRSCLTCOPやインスタンスパラメータを表示するために使用されるRSPARAMなどのいくつかの標準レポートも提供します。

これらのレポートは、出力として1つの画面のみで構成されます。INITIALIZATONやTOP-OF-PAGEなどのさまざまなイベントを使用してクラシックレポートを作成できます。各イベントは、クラシックレポートの作成時に独自の重要性を持っています。これらの各イベントは特定のユーザーアクションに関連付けられており、ユーザーがそのアクションを実行したときにのみトリガーされます。

以下は、イベントと説明を説明する表です-

S.No. イベントと説明
1

INITIALIZATON

選択画面を表示する前にトリガーされます。

2

AT SELECTION-SCREEN

選択画面でのユーザー入力の処理後にトリガーされます。このイベントは、プログラムの実行前にユーザー入力を確認します。ユーザー入力を処理した後、選択画面はアクティブモードのままになります。

3

START-OF-SELECTION

選択画面の処理が終了した後にのみトリガーされます。つまり、ユーザーが選択画面の[実行]アイコンをクリックしたときです。

4

END-OF-SELECTION

START-OF-SELECTONイベントの最後のステートメントが実行された後にトリガーされます。

5

TOP-OF-PAGE

新しいページにデータを表示するための最初のWRITEステートメントによってトリガーされます。

6

END-OF-PAGE

レポートのページの最後にテキストを表示するようにトリガーされます。このイベントはレポート作成中の最後のイベントであり、REPORTステートメントのLINE-COUNT句と組み合わせる必要があることに注意してください。

古典的なレポートを作成しましょう。ABAPエディタで一連のステートメントを使用して、標準データベースMARA(一般品目データを含む)に保存されている情報を表示します。

REPORT ZREPORT2 
LINE-SIZE 75 
LINE-COUNT 30(3) 
NO STANDARD PAGE HEADING. 
Tables: MARA. 
TYPES: Begin of itab, 

MATNR TYPE MARA-MATNR, 
MBRSH TYPE MARA-MBRSH, 
MEINS TYPE MARA-MEINS, 
MTART TYPE MARA-MTART, 

End of itab. 

DATA: wa_ma TYPE itab,
      it_ma TYPE STANDARD TABLE OF itab.
		
SELECT-OPTIONS: MATS FOR MARA-MATNR OBLIGATORY. 
INITIALIZATION. 
MATS-LOW = '1'. 
MATS-HIGH = '500'. 

APPEND MATS. 
AT SELECTION-SCREEN. .
IF MATS-LOW = ' '. 
MESSAGE I000(ZKMESSAGE). 
ELSEIF MATS-HIGH = ' '. 
MESSAGE I001(ZKMESSAGE). 
ENDIF. 

TOP-OF-PAGE. 
WRITE:/ 'CLASSICAL REPORT CONTAINING GENERAL MATERIAL DATA  
FROM THE TABLE MARA' COLOR 7. 
ULINE. 
WRITE:/ 'MATERIAL' COLOR 1, 

24 'INDUSTRY' COLOR 2, 
38 'UNITS' COLOR 3, 
53 'MATERIAL TYPE' COLOR 4. 
ULINE. 
END-OF-PAGE. 

START-OF-SELECTION. 
SELECT MATNR MBRSH MEINS MTART FROM MARA  
INTO TABLE it_ma WHERE MATNR IN MATS. 
LOOP AT it_ma into wa_ma. 
WRITE:/  wa_ma-MATNR, 

25 wa_ma-MBRSH, 
40 wa_ma-MEINS, 
55 wa_ma-MTART. 
ENDLOOP. 
END-OF-SELECTION. 

ULINE. 
WRITE:/ 'CLASSICAL REPORT HAS BEEN CREATED' COLOR 7.
ULINE. 
SKIP.

上記のコードは、標準テーブルMARA-からの一般的な材料データを含む次の出力を生成します。