Laporan ALV dalam Tutorial SAP - Penampil Daftar ABAP

Daftar Isi:

Anonim

Fitur umum yang diinginkan dari setiap laporan adalah "kesejajaran kolom", pengurutan, pemfilteran, subtotal, total, dll. Untuk menerapkannya dari awal, banyak upaya pengkodean yang harus dilakukan. Untuk menghindarinya kita bisa menggunakan konsep yang disebut ABAP List Viewer (ALV).

Dalam tutorial ini Anda akan belajar:

  • Laporan Sederhana
  • Blokir Laporan
  • Laporan Hierarki
  • Varian Tampilan

Masing-masing laporan ini menyediakan modul fungsi yang membantu menghasilkan keluaran yang diinginkan tanpa banyak usaha. Mari kita lihat secara detail -

Laporan Sederhana

Modul fungsi penting dalam laporan ini adalah -

  • Reuse_alv_fieldcatalog_merge
  • Reuse_alv_list_display
  • Reuse_alv_events_get
  • Reuse_alv_grid_display
  • Reuse_alv_commentary_write

REUSE_ALV_FIELDCATALOG_MERGE
Modul fungsi ini digunakan untuk mengisi katalog lapangan yang penting untuk menampilkan data dalam ALV.
Jika data keluaran berasal dari satu tabel kamus dan semua kolom dipilih, maka kita tidak perlu membuat katalog bidang secara eksklusif. Cukup dengan menyebutkan nama tabel sebagai parameter (I_structure_name) di REUSE_ALV_LIST_DISPLAY. Tetapi 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 di dalamnya adalah:
1. Ekspor:

  • I_program_name: id laporan
  • I_internal_tabname: tabel keluaran internal
  • I_inclname: termasuk atau nama laporan di mana semua bentuk dinamis ditangani.

2. Berubah

  • ct_fieldcat: tabel internal dengan tipe SLIS_T_FIELDCAT_ALV yang dideklarasikan dalam tipe pool SLIS.

REUSE_ALV_LIST_DISPLAY
Ini adalah modul fungsi yang mencetak data.
Parameter penting adalah:
1. Ekspor:

  • I_callback_program: id laporan
  • I_bypassing_buffer: 'X'
  • I_buffer_active: ''
  • I_callback_pf_status_set: rutin di mana pengguna dapat mengatur status pf-nya sendiri atau mengubah fungsionalitas dari status pf yang ada.
  • I_callback_user_command: rutin di mana kode fungsi ditangani.
  • I_structure name: nama tabel kamus
  • Is_Layout: struktur untuk mengatur tata letak laporan
  • It_fieldcat: tabel internal dengan daftar semua bidang 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:

  • Sebuah. t_outtab: tabel internal dengan data yang akan dikeluarkan

REUSE_ALV_EVENTS_GET:
Mengembalikan tabel peristiwa yang mungkin terjadi untuk jenis daftar
1. Impor:
Et_Events: Tabel peristiwa dikembalikan dengan semua kemungkinan peristiwa CALLBACK untuk jenis daftar yang ditentukan (kolom 'NAME'). Untuk acara yang akan diproses oleh Callback, kolom 'FORM' mereka harus diisi. Jika bidang diinisialisasi, acara diabaikan. Entri dapat dibaca dari tabel event, field 'FORM' diisi dan entri dimodifikasi menggunakan konstanta dari tipe pool SLIS.
2. Ekspor:
I_list_type: 0 = daftar sederhana REUSE_ALV_LIST_DISPLAY
1 = daftar urutan hierarki REUSE_ALV_HIERSEQ_LIST_DISPLAY
2 = daftar blokir sederhana REUSE_ALV_BLOCK_LIST_APPEND
3 = daftar blok urutan hierarki REUSE_ALV_BLOCK_LIST_HS_APPEND
REUSE_ALV_GRID_DISPLAY
Sebuah fungsi baru dari versi ABAP4.6, untuk menampilkan hasil dalam kisi daripada pratinjau.
Parameter: sama seperti reuse_alv_list_display

Catatan: Grid tidak dapat menangani volume tinggi. Fungsi seperti sortir, scrolling ke bawah menghabiskan banyak sumber daya / waktu jika volume data yang akan ditampilkan tinggi. Tidak ada definisi yang jelas bahwa jika jumlah data adalah X untuk daftar atau kisi tetapi pengembang harus menerima panggilan berdasarkan pengalamannya. Jika tidak yakin, daftar adalah pilihan yang lebih baik

REUSE_ALV_COMMENTARY_WRITE
Ini digunakan dalam acara Top-of-page untuk mencetak judul dan komentar lain untuk daftar.
Parameter Penting

  • It_list_commentary: Tabel internal dengan judul tipe slis_t_listheader.

Tabel internal ini memiliki tiga bidang:

  1. Jenis: 'H' - header, 'S' - selection, 'A' - action
  2. Kunci: hanya jika ketik 'S'.
  3. Info: teks yang akan dicetak

Blokir Laporan

Ini terlihat seperti laporan sederhana tetapi laporan ini memiliki fitur pengurutan dan pemfilteran saja. Laporan ini digunakan jika Anda harus menampilkan lebih dari satu laporan pada keluaran. Secara teknis jika Anda memiliki beberapa tabel internal dengan data untuk ditampilkan sebagai blok terpisah, maka kami 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 dalam 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 Hierarki

Tampilan hierarki digunakan untuk menampilkan data yang berhubungan. Seperti pesanan penjualan dan detail barang. Disini sales order details bisa menjadi data header sedangkan item yang ada di sales order bisa menjadi data barang
. Modul fungsi yang digunakan untuk ini adalah
REUSE_ALV_HIERSEQ_LIST_DISPLAY
Export:

  • I_CALLBACK_PROGRAM
  • I_CALLBACK_PF_STATUS_SET
  • I_CALLBACK_USER_COMMAND
  • IS_LAYOUT
  • It_fieldcat
  • It_events
  • I_tabname_header: Nama tabel internal dalam program yang berisi data keluaran dari tingkat hierarki tertinggi.
  • I_tabname_item: Nama tabel internal dalam program yang berisi data keluaran dari tingkat hierarki terendah.
  • Is_keyinfo: Struktur ini berisi header dan nama bidang tabel item yang menghubungkan dua tabel (kunci bersama).

Tabel

  • t_outtab_header: Tabel header dengan data yang akan dikeluarkan
  • t_outtab_item: Nama tabel internal dalam program yang berisi data keluaran dari 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 khusus pengguna dan standar (varian standar dapat digunakan oleh semua pengguna)
  • 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

  1. Gunakan kembali_alv_variant_default_get
  2. Reuse_alv_variant_f4
  3. Reuse_alv_variant_existence

Itu semua untuk pemrograman ABAP- ALV!