Tutorial Pemrograman Dialog: Kumpulan Modul di SAP ABAP

SAP-ABAP mendukung dua jenis program – Program Laporan dan Program Dialog.

Jika program ABAP Anda memerlukan input pengguna, pemrograman Dialog digunakan.

Dalam tutorial ini Anda akan belajar:

Dialog pengguna adalah bentuk interaksi apa pun antara pengguna dan program dan bisa berupa salah satu dari berikut ini

  • Memasukkan data
  • Memilih item menu
  • Mengklik tombol
  • Mengklik atau mengklik dua kali entri

Program dialog juga digunakan ketika kita perlu bernavigasi bolak-balik antar layar

Program dialog dibuat dengan tipe 'M' – Module Pool. Mereka tidak dapat dieksekusi secara independen dan harus dilampirkan ke setidaknya satu kode transaksi yang Anda tentukan pada layar awal.

Perbedaan antara Program Laporan dan Dialog

Perbedaan antara Program Laporan dan Dialog

Program Laporan:

Laporan adalah program yang biasanya membaca dan menganalisis data dalam tabel database tanpa mengubah Database.

Program Dialog:

Program dialog memungkinkan Anda bekerja secara interaktif dengan sistem dan mengubah konten tabel database. Setiap program dialog memiliki urutan layar tertentu yang diproses oleh sistem satu demi satu.

Contoh pemrosesan transaksi dalam Pemrograman Dialog

Contoh pemrosesan transaksi

Komponen Program Dialog

Berbeda melaporkan yang secara umum memerlukan pembuatan satu program otonom yang dapat dijalankan secara independen dari objek lain, pengembangan program dialog memerlukan pengembangan beberapa objek yang tidak satupun dapat dijalankan sendiri. Sebaliknya semua objek dihubungkan secara hierarkis ke program utama dan dieksekusi dalam urutan yang ditentukan oleh Program Utama Dialog.

Komponen program dialog adalah:

Kode transaksi

  • Kode transaksi memulai urutan layar.
  • Anda membuat kode transaksi di Repository Browser di ABAP Workbench atau menggunakan Transaction SE93.
  • Kode transaksi ditautkan ke program ABAP dan layar awal.
  • Anda dapat memulai urutan layar dari program ABAP mana pun menggunakan pernyataan CALL SCREEN.

Layar

  • Setiap dialog dalam sebuah SAP sistem dikendalikan oleh satu atau lebih layar.
  • Anda membuat layar menggunakan Layar Painter di ABAP Workbench melalui transaksi SE51
  • Setiap layar milik an program ABAP.
  • Layar ini terdiri dari "screen mask" atau "layout" dan logika alirannya. Layar memiliki tata letak yang menentukan posisi bidang input/output dan elemen grafis lainnya seperti kotak centang dan tombol radio. Logika aliran menentukan pemrosesan logis dalam layar.

Status GUI

  • Setiap layar memiliki status GUI yang merupakan komponen independen dari suatu program.
  • Ini mengontrol bilah menu, toolbar standar, toolbar aplikasi, yang dengannya pengguna dapat memilih fungsi dalam aplikasi.
  • Anda membuatnya di ABAP Workbench menggunakan Menu Painter.

Program ABAP

  • Setiap layar dan status GUI di Sistem R/3 dimiliki oleh satu program ABAP.
  • Program ABAP berisi modul dialog yang dipanggil oleh logika aliran layar, dan juga memproses input pengguna dari status GUI.
  • Program ABAP yang menggunakan layar disebut juga program dialog.
  • Dalam kumpulan modul (program tipe M); blok pemrosesan pertama yang dipanggil selalu berupa modul dialog. Namun, Anda juga dapat menggunakan layar di program ABAP lainnya, seperti program yang dapat dijalankan atau modul fungsi. Blok pemrosesan pertama kemudian dipanggil secara berbeda; misalnya, oleh lingkungan runtime atau panggilan prosedur. Urutan layar kemudian dimulai menggunakan pernyataan CALL SCREEN.

Logika Aliran Layar

Logika Screen Flow pada dasarnya dibagi menjadi empat komponen.

  • Proses Sebelum Keluaran (PBO) event: yang diproses sebelum layar ditampilkan
  • Proses Setelah Masukan (PAI) acara: yang diproses setelah tindakan pengguna di layar
  • Proses berdasarkan permintaan bantuan (P.O.H.): yang diproses ketika F1 ditekan
  • Proses berdasarkan permintaan nilai (POV):yang diproses ketika F4 ditekan

Dynpro

  • Layar beserta logika Alirannya disebut Dynpro (“Program Dinamis” karena logika aliran layar memengaruhi aliran program)
  • Setiap dynpro mengontrol tepat satu langkah Program Dialog Anda.
  • Layar milik suatu program adalah bernomor. Urutan aliran layar dapat berupa linier atau siklik. Dari dalam rantai layar, Anda bahkan dapat memanggil rantai layar lain dan, setelah memprosesnya, kembali ke rantai aslinya. Anda juga dapat mengganti layar berikutnya yang ditentukan secara statis dari dalam modul dialog program ABAP.

Kumpulan Modul ABAP

  • Pada acara PBO atau PAI, Dynpro memanggil program dialog ABAP. Kumpulan program semacam ini disebut kumpulan modul ABAP.
  • Misalnya modul yang dipanggil pada acara PAI digunakan untuk memeriksa input pengguna dan memicu langkah-langkah dialog yang sesuai, seperti tugas pembaruan.
  • Semua dynpro dipanggil dari dalam satu transaksi mengacu pada kumpulan modul umum.

Struktur Program Dialog

Struktur Program Dialog

Alur Proses untuk Program Dialog

Alur Proses untuk Program Dialog