SAP-ABAP mendukung dua jenis Program - Program Laporan & Program Dialog. Program Laporan digunakan ketika sejumlah besar data perlu ditampilkan
Dalam tutorial ini Anda akan belajar:
- Layar Pemilihan
- Acara dalam Program Laporan ABAP
- Memformat laporan
- Pemrograman Laporan Interaktif
- Database Logis
Tujuan / Penggunaan Program Laporan
- Mereka digunakan ketika data dari sejumlah tabel harus dipilih dan diproses sebelum disajikan
- Digunakan saat laporan menuntut format khusus
- Digunakan saat laporan harus diunduh dari SAP ke lembar Excel untuk didistribusikan.
- Digunakan ketika laporan harus dikirim ke orang tertentu.
Poin Penting untuk Dicatat Tentang Program Laporan
- Program Laporan selalu merupakan Program yang Dapat Dijalankan. Jenis Program selalu 1.
- Setiap program Laporan sesuai dengan Jenis Aplikasi tertentu yaitu baik dengan Penjualan & Distribusi, FI - CO dll. Bisa juga Aplikasi Lintas yaitu ketik '*'.
- Pemrograman Laporan adalah pemrograman yang digerakkan oleh Peristiwa.
- Baris pertama dari program laporan selalu Report
. - Untuk menekan list heading atau nama program, penambahan No Standard Page Heading digunakan.
- Ukuran baris untuk laporan tertentu dapat diatur dengan menggunakan penambahan ukuran baris
. - Jumlah baris untuk halaman tertentu dapat diatur dengan menggunakan penambahan baris-count n (n1) . N adalah jumlah baris untuk halaman dan N1 adalah jumlah baris yang disediakan untuk footer halaman.
- Untuk menampilkan informasi atau pesan kesalahan kita menambahkan kelas pesan ke program menggunakan tambahan: Message-id
. Kelas pesan dipertahankan di SE91.
Laporkantanpa judul halaman standarukuran garis jumlah baris message-id .
Layar Pemilihan
"Layar pemilihan" adalah layar di mana seseorang menentukan nilai input yang harus dijalankan oleh program.
Layar pemilihan biasanya dihasilkan dari
- Parameter
- Pilih Pilihan
Sintaksis
Layar pemilihan dimulai dari layarlayar pemilihan awal blok <#> dengan judul bingkai …… layar pemilihan akhir blok <#>pilihan layar akhir layar
Parameter
Parameter membantu seseorang untuk melakukan seleksi dinamis. Mereka hanya dapat menampung satu nilai untuk satu siklus pelaksanaan program.
Sintaks
Mendefinisikan parameter sebagai tipe data
Parameter p_id (30) tipe c.
Mendefinisikan parameter seperti bidang tabel.
Parameter p_id seperti- .
Parameter dapat berupa Kotak centang serta Radiobuttons.
Parameter p_id sebagai kotak centang Parameter p_id1 grup tombol radio.Parameter p_id2 grup tombol radio .
Parameter bisa listbox.
Parameter p_id seperti- sebagai kotak daftar
Select Options
Sebuah Select-Option digunakan untuk memasukkan berbagai nilai atau sekumpulan nilai ke
Syntax program
pilih-opsi s_vbeln untuk vbak-vbeln.
Anda juga dapat menentukan opsi pilih seperti variabel
pilih-opsi s_vbeln untuk vbak-vbeln tanpa interval tanpa ekstensi
Acara dalam Program Laporan ABAP
Program laporan ABAP adalah program yang digerakkan oleh peristiwa . Berbagai peristiwa dalam Program laporan adalah:
Pemuatan program
- Memicu acara terkait dalam sesi internal setelah memuat program tipe 1, M, F, atau S.
- Juga menjalankan blok pemrosesan terkait sekali dan sekali hanya untuk setiap program dan sesi internal.
- Blok pemrosesan LOAD-OF-PROGRAM memiliki fungsi yang kira-kira sama untuk program ABAP tipe 1, M, F atau S seperti yang dimiliki konstruktor untuk kelas di Objek ABAP
Inisialisasi.
- Peristiwa ini dijalankan sebelum layar pemilihan ditampilkan.
- Inisialisasi semua nilai.
- Anda dapat menetapkan nilai yang berbeda selain nilai default pada layar pemilihan.
- Anda dapat mengisi layar pemilihan Anda dengan beberapa nilai pada saat runtime.
Di Seleksi-Layar.
- Acara diproses ketika layar pemilihan telah diproses (di akhir PAI).
- Validasi & Pemeriksaan nilai yang dimasukkan terjadi di sini
Awal Pemilihan.
- Di sini program mulai memilih nilai dari tabel.
Seleksi akhir.
- Setelah semua data dipilih, peristiwa ini menulis data ke layar.
Acara Interaktif
- Digunakan untuk pelaporan interaktif. Ini digunakan untuk membuat daftar rinci dari daftar dasar.
Memformat laporan
ABAP memungkinkan laporan diformat sesuai keinginan pengguna. Misalnya, "Garis Alternatif" harus muncul dalam warna berbeda dan garis "Total" harus muncul dengan warna Kuning.
Sintaksis
Format Warna nFormat Warna n Diintensifkan Aktif
n mungkin sesuai dengan berbagai nomor
Harap dicatat bahwa ada tambahan lain bersama dengan format juga
FORMAT WARNA MATI DIINTENSIFIKASI MATIKAN INVERSE OFF HOTSPOT OFF INPUT OFF
Pemrograman Laporan Interaktif
- Menggunakan Pemrograman Interaktif pengguna dapat secara aktif mengontrol pengambilan data dan tampilan data
- Digunakan untuk membuat daftar terperinci dari daftar yang sangat dasar
- Data rinci dituliskan pada daftar sekunder.
- Daftar sekunder dapat menutupi layar pertama sepenuhnya atau menampilkannya di layar baru
- The secondary lists can be themselves interactive.
- The first list may also call a transaction.
- There are different events associated with interactive programming.
Some commands used for interactive programming
HotspotIf one drags the mouse over the data displayed in the report the cursor changes to a Hand with an Outstretched Index finger. An hotspot can be achieved using the FORMAT statement.
Syntax: Format Hotspot On (Off).
HideThis command helps you to store the field names based on which one will be doing further processing to get a detailed list. It is written directly after the WRITE statement for a field. When a row is selected the values get automatically filled in the variables for further use.
Syntax: Hide.
Logical Databases
- Instead of using "Select" queries you can use logical database to retrieve data for a program.
- Logical databases are created by transaction SE36
- The name of a logical database can be up to 20 characters long. It may begin with a namespace prefix.
- The data is selected by another program and one can access the data using GET
command which places the data in the work area .
Advantages of a logical database over normal Select queries.
- It offers check conditions to see whether the input is correct, complete and plausible
- It contains central authorization checks for database access
- Enhancements such as improvement in performance immediately apply to all reports which use logical database.
Note: Due to the complexities involved, logical databases are not used in most of the cases