Dialog (103) - Table Control

<< Click to Display Table of Contents >>

Navigation:  All About ABAP Technique > Indonesia > ABAP Dialog Programming > Basic Knowledge >

Dialog (103) - Table Control

Objective

Membuat Report

Hasil

Kode Sintak

Flow Logic (Aliran Logika)

Include "YPRACTICE_DIALOG_103_HEADER"

Kode Transaksi

SE38 - ABAP Editor

Support

Video , Video (Tips)

 

Membuat Dialog

1.Buka SE38

2.Salin Program "YPRACTICE_DIALOG_101" menjadi "YPRACTICE_DIALOG_103"

3.Seleksi Semua Objek

abp0018

4.Ubah Program "YPRACTICE_DIALOG_103"

5.Buka Goto > Attributes, dan ubah "Title" dengan "103 - Table Control"

6.Modifikasi Deklarasi Report

Sebelum

REPORT  ypractice_dialog_101                    .

 

Setelah

REPORT  ypractice_dialog_103                    .

 

7.Modifikasi ""

Sebelum

*----------------------------------------------------------------------*

*GLOBAL VARIABLE DECRALATION

*----------------------------------------------------------------------*

 

DATA : ok_code LIKE sy-ucomm,

       save_ok LIKE sy-ucomm.

 

DATA : gv_message1(100),

       gv_message2(100).

 

*----------------------------------------------------------------------*

 

Setelah

*----------------------------------------------------------------------*

*GLOBAL VARIABLE DECRALATION

*----------------------------------------------------------------------*

TYPES: BEGIN OF ty_header,

         matkl LIKE mara-matkl,  " Material Group

         matnr LIKE mara-matnr,  " Material Number

         maktx LIKE makt-maktx,  " Material Description

         bismt LIKE mara-bismt,  " Old material number

         meins LIKE mara-meins,  " Base Unit of Measure

         mseht LIKE t006a-mseht, " Unit of Measurement Text

         Cek,

       END OF ty_header.

 

* atau anda adapt menggunakan kode dibawah

*TYPES: BEGIN OF ty_header.

*         INCLUDE STRUCTURE yta_header_101.

*TYPES:   cek,

*       END OF ty_header.

 

* Deklarasi Internal Table

DATA: gi_header TYPE STANDARD TABLE OF ty_header WITH HEADER LINE,

      gi_makt  LIKE STANDARD TABLE OF makt WITH HEADER LINE,

      gi_t006a LIKE STANDARD TABLE OF t006a WITH HEADER LINE.

      

DATA: gv_matkl LIKE mara-matkl.

 

DATA : ok_code LIKE sy-ucomm,

       save_ok LIKE sy-ucomm.

 

DATA : gv_message1(100),

       gv_message2(100).

 

*----------------------------------------------------------------------*

 

8.Klik "abap_tutorial0019" dan klik "abap_tutorial0031"

9.Seleksi "REPS", "CUAD" and "DYNP"

abp0033

10.Klik "abap_tutorial0025" untukk mengaktivas program

11.Klik "ar0015"

12.Klik ganda "abp0008" untuk membuka screen 2000

13.Klik "ar0018" untuk memulai layout desain (Screen Painter)

14.Klik "abp0019" dan kemudian klik pada screen

15.Atur Nama Label (Text Field) dengan "GV_LABEL1" dan Text dengan "Material Group." seperti dibawah

abp0034

 

16.Klik "abp0021" dan kemudian klik pada screen

17.Atur Nama TextBox (Input/Output Field) dengan "GV_MATKL" dengan length "10" seperti berikut

abp0035

 

18.Klik Ganda "abp0041" dan atur Search help dengan "H_T023"

abp0040

 

19.Setelah itu TextBox deiganti menjadi "abp0042"

20.Klik "abp0023" dan kemudian klik pada screen

21.Atur Nama (PushButton) dengan "GV_BUTTON" seperti berikut

abp0036

 

22.Klik ganda "abp0037" dan atur Function Code dengan "DISPLAY"

abp0038

 

23.Setelah warna tombol berubah menjadi abu-abu seperti berikut "abp0039"

24.Klik "abap_tutorial0019" untuk menyimpan screen

25.Klik "abp0043" kemudian drag di screen painter

26.Setelah itu Table Control Wizard akan dieksekusi

abp0044

 

27.Klik "abp0045" ikuti langkah-langkah berikut

Tampilkan Langkah-langkahnya

 

Hasil dari Wizard

 

28.Klik "abap_tutorial0019" untuk menyimpan screen dan kemudian tutup screen painter

29.Kembali ke kode sintak

30.Modifikasi modul "USER_COMMAND_2000 input"

Sebelum

*&---------------------------------------------------------------------*

*&      Module  USER_COMMAND_2000  INPUT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

module USER_COMMAND_2000 input.

  save_ok = ok_code.

  CLEAR ok_code.

 

  CASE save_ok.

    WHEN 'BACK'.

      LEAVE TO SCREEN 0.

    WHEN OTHERS.

 

  ENDCASE.

 

  CLEAR ok_code.

endmodule.                 " USER_COMMAND_2000  INPUT

 

Setelah

*&---------------------------------------------------------------------*

*&      Module  USER_COMMAND_2000  INPUT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

MODULE user_command_2000 INPUT.

  save_ok = ok_code.

  CLEAR ok_code.

 

  CASE save_ok.

    WHEN 'BACK'.

      LEAVE TO SCREEN 0.

    WHEN 'DISPLAY'.

      CALL FUNCTION 'YFM_RFC_PRACTICE_101'

       EXPORTING

         gv_matkl         = gv_matkl

*         GV_MATNR         =

         gv_max_row       = 0

       TABLES

         gi_header        = gi_header

                .

    WHEN OTHERS.

 

  ENDCASE.

 

  CLEAR ok_code.

ENDMODULE.                 " USER_COMMAND_2000  INPUT

 

31.Klik "abap_tutorial0019" dan klik "abap_tutorial0031"

32.Seleksi "REPS", "REPS" and "DYNP"

abp0054

33.Klik "abap_tutorial0025" untuk mengaktifkan program

34.Tes dan Jalankan program

35.Buat T-Code "YPD103"

36.Selesai

 

Result

Screen 2000

abp0055

 

Setelah di Klik tombol "Display"

abp0056

 

Flow Logic