SAP ABAP - Pemrograman Laporan

SEBUAH reportadalah penyajian data dalam struktur yang terorganisir. Banyak sistem manajemen basis data menyertakan penulis laporan yang memungkinkan Anda merancang dan menghasilkan laporan. Aplikasi SAP mendukung pembuatan laporan.

Laporan klasik dibuat dengan menggunakan data keluaran dalam pernyataan WRITE di dalam sebuah loop. Mereka tidak berisi sub-laporan apa pun. SAP juga menyediakan beberapa laporan standar seperti RSCLTCOP yang digunakan untuk menyalin tabel di seluruh klien dan RSPARAM yang digunakan untuk menampilkan parameter instans.

Laporan ini hanya terdiri dari satu layar sebagai keluaran. Kita dapat menggunakan berbagai peristiwa seperti INITIALIZATON & TOP-OF-PAGE untuk membuat laporan klasik, dan setiap peristiwa memiliki kepentingannya sendiri selama pembuatan laporan klasik. Masing-masing peristiwa ini dikaitkan dengan tindakan pengguna tertentu dan dipicu hanya saat pengguna melakukan tindakan itu.

Berikut adalah tabel yang menjelaskan acara dan deskripsi -

S.No. Deskripsi acara
1

INITIALIZATON

Dipicu sebelum menampilkan layar pemilihan.

2

AT SELECTION-SCREEN

Dipicu setelah pemrosesan masukan pengguna di layar pemilihan. Acara ini memverifikasi input pengguna sebelum eksekusi program. Setelah memproses input pengguna, layar pemilihan tetap dalam mode aktif.

3

START-OF-SELECTION

Dipicu hanya setelah pemrosesan layar pemilihan selesai; yaitu, saat pengguna mengklik ikon Jalankan di layar pemilihan.

4

END-OF-SELECTION

Dipicu setelah pernyataan terakhir di acara START-OF-SELECTON dijalankan.

5

TOP-OF-PAGE

Dipicu oleh pernyataan WRITE pertama untuk menampilkan data pada halaman baru.

6

END-OF-PAGE

Dipicu untuk menampilkan teks di akhir halaman dalam laporan. Perhatikan, bahwa acara ini adalah acara terakhir saat membuat laporan, dan harus digabungkan dengan klausa LINE-COUNT dari pernyataan REPORT.

Contoh

Mari buat laporan klasik. Kami akan menampilkan informasi yang disimpan dalam database standar MARA (berisi data material umum) dengan menggunakan urutan pernyataan di editor ABAP.

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.

Kode di atas menghasilkan output berikut yang berisi data material umum dari tabel standar MARA -