Laporan ALV masuk SAP Tutorial – Penampil Daftar ABAP
Fitur umum yang diinginkan dari setiap laporan adalah “penyelarasan kolom”, pengurutan, pemfilteran, subtotal, total, dll. Untuk menerapkan ini dari awal, banyak upaya pengkodean yang harus dilakukan. Untuk menghindari hal tersebut kita dapat menggunakan konsep yang disebut ABAP List Viewer (ALV).
Masing-masing laporan ini menyediakan modul fungsi yang membantu dalam menghasilkan keluaran yang diinginkan tanpa banyak usaha. Mari kita lihat secara detail –
Laporan Sederhana
Modul fungsi penting di dalamnya melaporkan adalah -
- Gunakan kembali_alv_fieldcatalog_merge
- Gunakan kembali_alv_list_display
- Gunakan kembali_alv_events_get
- Gunakan kembali_alv_grid_display
- Gunakan kembali_alv_commentary_write
REUSE_ALV_FIELDCATALOG_MERGE
Modul fungsi ini digunakan untuk mengisi katalog lapangan yang penting untuk menampilkan data di ALV.
Jika data keluaran berasal dari satu tabel kamus dan semua kolom dipilih, maka kita tidak perlu membuat katalog bidang secara eksklusif. Cukup menyebutkan nama tabel sebagai parameter (I_structure_name) di REUSE_ALV_LIST_DISPLAY. Namun dalam kasus lain kita perlu membuatnya.
Catatan: Fieldcatalog juga dapat diisi secara manual dengan mengisi semua detail yang diperlukan ke dalam tabel internal
Parameter penting dalam adalah:
1. Ekspor:
- I_program_name : id laporan
- I_internal_tabname : tabel keluaran internal
- I_inclname : sertakan atau nama laporan tempat semua formulir dinamis ditangani.
2. Berubah
- ct_fieldcat : sebuah meja internal dengan tipe SLIS_T_FIELDCAT_ALV yang dideklarasikan pada tipe pool SLIS.
REUSE_ALV_LIST_DISPLAY
Ini adalah modul fungsi yang mencetak data.
Parameter penting adalah:
1. Ekspor:
- I_callback_program : id laporan
- Saya_melewati_buffer : 'X'
- Saya_buffer_aktif : ' '
- I_callback_pf_status_set : rutin dimana pengguna dapat mengatur status pfnya sendiri atau mengubah fungsi status pf yang ada.
- I_callback_user_command : rutin tempat kode fungsi ditangani.
- I_structure name : nama tabel kamus
- Is_Layout : struktur untuk mengatur tata letak laporan
- It_fieldcat : tabel internal dengan daftar semua field dan atributnya yang akan dicetak (tabel ini dapat diisi secara otomatis oleh fungsi)
- It_events : tabel internal dengan daftar semua kemungkinan kejadian ALV dan nama formulir yang sesuai.
2. Tabel:
- A. t_outtab : tabel internal dengan data yang akan dikeluarkan
REUSE_ALV_EVENTS_GET:
Mengembalikan tabel kejadian yang mungkin terjadi untuk tipe daftar aa
1. Impor:
Et_Acara :Tabel kejadian dikembalikan dengan semua kemungkinan kejadian CALLBACK untuk tipe daftar yang ditentukan (kolom 'NAMA'). Agar event dapat diproses oleh Callback, kolom 'FORMULIR' harus diisi. Jika bidang diinisialisasi, acara tersebut diabaikan. Entri dapat dibaca dari tabel kejadian, bidang 'FORMULIR' diisi dan entri dimodifikasi menggunakan konstanta dari kumpulan tipe SLIS.
2. Ekspor:
I_list_type: 0 = daftar sederhana REUSE_ALV_LIST_DISPLAY
1 = daftar hierarkis-sekuensial REUSE_ALV_HIERSEQ_LIST_DISPLAY
2 = daftar blokir sederhana REUSE_ALV_BLOCK_LIST_APPEND
3 = daftar blok berurutan hierarkis REUSE_ALV_BLOCK_LIST_HS_APPEND
REUSE_ALV_GRID_DISPLAY
Fungsi baru dari versi ABAP4.6, untuk menampilkan hasil dalam kisi, bukan pratinjau.
Parameter : sama dengan reuse_alv_list_display
Catatan: Grid tidak dapat menangani volume yang tinggi. Fungsi seperti sort, scrolling ke bawah menghabiskan banyak sumber daya/waktu jika volume data yang akan ditampilkan tinggi. Tidak ada definisi yang jelas sehingga jika jumlah data adalah X, pilih list atau grid, tetapi pengembang harus mengambil keputusan berdasarkan pengalamannya. Jika tidak yakin, maka list adalah pilihan yang lebih baik.
REUSE_ALV_COMMENTARY_WRITE
Ini digunakan dalam acara Top-of-page untuk mencetak judul dan komentar lain untuk daftar tersebut.
Parameter Penting
- It_list_commentary : Tabel internal dengan judul tipe slis_t_listheader.
Tabel internal ini memiliki tiga bidang:
- Ketik : 'H' – header, 'S' – pilihan, 'A' – aksi
- Kunci : hanya jika ketik 'S'.
- Info : teks yang akan dicetak
Blokir Laporan
Ini tampak seperti laporan sederhana tetapi laporan ini hanya memiliki fitur sortir dan filter. Laporan ini digunakan jika Anda harus menampilkan lebih dari satu laporan pada output. Secara teknis, jika Anda memiliki beberapa tabel internal dengan data yang akan ditampilkan sebagai blok terpisah, maka kita akan menggunakan laporan blok ALV.
Fungsi penting yang digunakan untuk membuat laporan ini adalah:
- REUSE_ALV_BLOCK_LIST_INIT
- REUSE_ALV_BLOCK_LIST_APPEND
- REUSE_ALV_BLOCK_LIST_DISPLAY
REUSE_ALV_BLOCK_LIST_INIT
Modul fungsi ini digunakan untuk mengatur status gui default, dll. Parameternya mirip dengan yang digunakan di reuse_alv_list_display atau reuse_alv_grid_display
REUSE_ALV_BLOCK_LIST_APPEND
Modul fungsi ini menambahkan data ke blok.
Parameter Penting
1.Ekspor :
- is_layout : pengaturan tata letak untuk blok
- it_fieldcat : katalog lapangan
- I_tabname : nama tabel internal dengan semua kemungkinan kejadian
2.Tabel :
- t_outtab : tabel internal dengan data keluaran.
REUSE_ALV_BLOCK_LIST_DISPLAY
Modul fungsi ini menampilkan daftar dengan data yang ditambahkan oleh fungsi di atas.
Parameter : Semua parameter bersifat opsional.
Laporan Hirarkis
Tampilan hierarkis digunakan untuk menampilkan data yang saling terkait. Seperti detail pesanan penjualan dan item. Di sini, detail pesanan penjualan dapat berupa data header sedangkan item dalam pesanan penjualan dapat berupa data item.
Modul fungsi yang digunakan untuk ini adalah
REUSE_ALV_HIERSEQ_LIST_DISPLAY
Ekspor:
- I_CALLBACK_PROGRAM
- I_CALLBACK_PF_STATUS_SET
- I_CALLBACK_USER_COMMAND
- IS_LAYOUT
- Itu_fieldcat
- Ini_acara
- I_tabname_header : Nama tabel internal dalam program yang berisi data keluaran tingkat hierarki tertinggi.
- I_tabname_item : Nama tabel internal dalam program yang berisi data keluaran tingkat hierarki terendah.
- Is_keyinfo : Struktur ini berisi nama field header dan item tabel yang menghubungkan dua tabel (kunci bersama).
Meja
- t_outtab_header : Tabel header dengan data yang akan dikeluarkan
- t_outtab_item : Nama tabel internal dalam program yang berisi data keluaran tingkat hierarki terendah.
Semua definisi tabel internal, struktur, dan konstanta dideklarasikan dalam kumpulan tipe yang disebut SLIS. Tabel internal ini dapat diisi secara otomatis dengan menggunakan REUSE_ALV_FIELDCATALOG_MERGE'.
Varian Tampilan
- Varian tampilan digunakan untuk mengatur properti default dari keluaran alv seperti kriteria pengurutan, kriteria pemfilteran, penjumlahan dan subtotal, dll.
- Varian tampilan dapat spesifik dan standar pengguna (varian standar dapat digunakan oleh pengguna mana pun)
- Jenis varian tampilan yang dapat disimpan dikontrol oleh parameter i_save yang diteruskan dalam modul fungsi reuse_alv_list_display / reuse_alv_grid_display
- Anda dapat memberikan opsi pada layar pemilihan untuk memilih varian tampilan apa yang akan digunakan
Modul fungsi umum yang terkait dengan pemilihan/validasi varian tampilan adalah
- Gunakan kembali_alv_variant_default_get
- Gunakan kembali_alv_variant_f4
- Gunakan kembali_alv_variant_existence
Itu saja ABAP – Pemrograman ALV!