Kontrol tabel dan loop langkah adalah objek untuk tampilan tabel layar yang Anda tambahkan ke layar di Screen Painter.
Dari sudut pandang pemrograman, kontrol tabel dan loop langkah hampir sama persis. Kontrol tabel hanyalah loop langkah yang ditingkatkan yang menampilkan data dengan tampilan dan nuansa yang terkait dengan tabel dalam aplikasi desktop.
Dengan kontrol tabel, pengguna dapat:
- Gulir tabel secara vertikal dan horizontal
- Ubah ukuran lebar kolom
- Gulir di dalam bidang (jika konten bidang lebih lebar dari bidang)
- Pilih baris atau kolom tabel
- Atur ulang urutan kolom
- Simpan pengaturan tampilan saat ini untuk digunakan di masa mendatang
Kontrol tabel juga menawarkan fitur pemformatan khusus (sebagian otomatis, sebagian opsional) yang membuat tabel lebih mudah dilihat dan digunakan. Kontrol Tabel menyediakan -
- mengubah ukuran tabel otomatis (vertikal dan horizontal) saat pengguna mengubah ukuran jendela
- garis pemisah antar baris dan antar kolom (vertikal dan horizontal)
- bidang tajuk kolom untuk semua kolom
Salah satu fitur loop langkah adalah baris tabelnya dapat menjangkau lebih dari satu baris di layar. Baris kontrol tabel, di sisi lain, harus selalu berada dalam satu baris (meskipun pengguliran dimungkinkan).
Secara umum, banyak fitur yang disediakan oleh kontrol tabel ditangani secara lokal oleh frontend SAPgui sistem Anda, jadi Anda tidak perlu memprogramnya sendiri. Satu-satunya pengecualian penting untuk ini adalah pengguliran vertikal .
Contoh (Transaksi TZ60)
Sintaks
Untuk menangani kontrol tabel dalam program ABAP, Anda harus mendeklarasikan kontrol di bagian deklarasi program untuk setiap kontrol tabel menggunakan pernyataan berikut:
KONTROLTABLEVIEW JENIS MENGGUNAKAN LAYAR
dimana
Posisi Kursor untuk kontrol tabel dapat diatur dengan cara berikut:
Di PBO Anda dapat mengatur kursor pada bidang tertentu dari baris tertentu dari kontrol tabel.
SETEL BIDANG KURSORLINE [OFFSET ]
Menggunakan tambahan OFFSET opsional, Anda dapat memasukkan offset kursor di bidang seperti yang dijelaskan di bawah Menyetel Posisi Kursor.
Di PAI Anda dapat membaca posisi kursor saat ini.
DAPATKAN KOLOM KURSORLINE …
Selain informasi yang diberikan di bawah Menemukan Posisi Kursor, bidang
DAPATKAN GARIS KURSOR.
untuk menentukan baris dari kontrol tabel. SY-SUBRC memungkinkan Anda untuk memeriksa apakah kursor ditempatkan pada baris kontrol tabel.
Untuk mendapatkan baris yang sesuai dari tabel internal:
DAPATKAN garis KURSOR.ind = -top_line + - 1.Baca tabel indeks ind.
Stepl variabel sistem - berisi indeks baris tabel saat ini dalam satu lingkaran… endloop. Loopc - berisi jumlah baris yang terlihat pada tabel
Untuk membuat kontrol tabel
1. Tambahkan elemen kontrol tabel ke layar Anda
2. Beri nama pada kontrol tabel. Dalam program ABAP mendeklarasikan struktur dengan (CONTROLS
membuat bidang masuk ke fungsi bidang Dict./Program.
- Masukkan nama struktur yang bidangnya Anda inginkan. (Jika Anda ingin mengambilnya dari kamus program Anda, klik tombol yang relevan).
- Di daftar bidang pilih bidang yang Anda inginkan dan pilih ok.
- Klik di area kontrol tabel
Jika Anda menginginkan kolom pilihan, centang kotak yang sesuai di atribut dan beri nama. Buat bidang dalam program ABAP.
Di PBO Anda harus memiliki statement
LOOP diMENGGUNAKAN CONTROL .ENDLOOP.
Di PAI, Anda harus memilikinya.
LOOP di.ENDLOOP.
Di dalam loop inilah transfer data terjadi antara layar dan tabel internal.Ketika Anda mengisi tabel internal, gunakan DESCRIBE TABLE
Untuk mengubah atribut sel individu untuk sementara mengubah tabel LAYAR di PBO. Anda dapat mengubah atribut struktur yang dibuat oleh pernyataan CONTROLS
-fixed_cols dll adalah atribut kontrol -cols-index dll adalah atribut kolom. -cols-screen-invisible dll adalah atribut layar dari setiap kolom.