Sap-abap-report-programming

提供:Dev Guides
移動先:案内検索

SAP ABAP-レポートプログラミング

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

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

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

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

S.No. Event & Description
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からの一般的な材料データを含む次の出力を生成します-

レポートプログラミング