Views 237
Visitors 136

Create YFM_RFC_PRACTICE_102

Home 
| Top Page | Threads |
Previous  Next

 

Membuat Structure

Buatlah Structure baru  "YST_RANGE_MATKL"

Tampilkan Langkah-langkahnya

Buka t-Code "SE11"
Masukkan Data Type dengan "YST_RANGE_MATKL"

rfc0042

Klik "rfc0002"
Pilih "Structure"

rfc0043

Isikan Short Description dengan "Structure for RANGE for Material Group"

rfc0044

 

Tambahkan Komponen/Field Seperti dibawah

rfc0045

 

Klik "rfc0007" untuk menyimpan structure

Cttn : Anda Dapat menyimpan Package yang ada atau local objek

Klik "rfc0008" untuk mengaktifkan structure

 

Buat Structure baru of "YST_RANGE_MATNR"

Tampilkan Langkah-langkahnya

Buka t-Code "SE11"
Buat Data Type dengan nama "YST_RANGE_MATNR"

rfc0046

Klik "rfc0002"
Pilih "Structure"

rfc0047

Isikan Short Description "Structure for RANGE for Material Number"

rfc0048

 

Tambahkan Komponen/Field seperti dibawah

rfc0049

 

Klik "rfc0007" untuk menyimpan structure

Cttn : Anda Dapat menyimpan Package yang ada atau local objek

Klik "rfc0008" untuk mengaktifkan structure

 

Membuat Function

1.Buka t-Code "SE37"
2.Salin Function "YFM_RFC_PRACTICE_101" menjadi "YFM_RFC_PRACTICE_102"

rfc0024

3.klik "rfc0037"
4.Isikan to Function module dengan "YFM_RFC_PRACTICE_102"

rfc0038

5.Klik "rfc0039" untuk menyalin dan menyimpan function
6.Klik "abap_tutorial0026" untuk mengubah function
7.Edit Short text dengan "RFC Practice 102"

rfc0040

 

8.Hapus variabel impor seperti gambar dibawah

Sebelum

rfc0027

 

Setelah

rfc0041

 

9.Tambahkan variabel-variabel tabel seperti gambar dibawah

rfc0050

 

10.Tambahkan Kode Sintak Salin dan paste kode berikut pada tab  "Source Code"

Lihat Kode Sintak tanpa menggunakan "UP TO gv_max_row ROWS"

FUNCTION yfm_rfc_practice_102.

*"----------------------------------------------------------------------

*"*"Local interface:

*"  IMPORTING

*"     VALUE(GV_MAX_ROW) TYPE  I DEFAULT 100

*"  TABLES

*"      GI_HEADER STRUCTURE  YTA_HEADER_101 OPTIONAL

*"      GR_MATKL STRUCTURE  YST_RANGE_MATKL OPTIONAL

*"      GR_MATNR STRUCTURE  YST_RANGE_MATNR OPTIONAL

*"----------------------------------------------------------------------

 

  DATA: gi_makt TYPE STANDARD TABLE OF makt WITH HEADER LINE,

        gi_t006a TYPE STANDARD TABLE OF t006a WITH HEADER LINE.

  DATA: lv_counter TYPE i.

 

Seleksi Material Master

  SELECT matnr matkl bismt meins

    INTO CORRESPONDING FIELDS OF TABLE gi_header

  FROM mara

  WHERE

    matkl IN gr_matkl AND

    matnr IN gr_matnr.

 

Seleksi Deskripsi Material

  SELECT matnr maktx

    INTO CORRESPONDING FIELDS OF TABLE gi_makt

  FROM makt

    FOR ALL ENTRIES IN gi_header

  WHERE

    matnr = gi_header-matnr AND

    spras = sy-langu.

 

Seleksi Standar teks pengukuran

  SELECT msehi mseht

    INTO CORRESPONDING FIELDS OF TABLE gi_t006a

  FROM t006a

    FOR ALL ENTRIES IN gi_header

  WHERE

    msehi = gi_header-meins AND

    spras = sy-langu.

 

*Mendapatkan informasi lain yang dibutuhkan

  LOOP AT gi_header.

*    Maksimal cek row

    ADD 1 TO lv_counter.

    IF lv_counter <= gv_max_row OR gv_max_row = 0.

*    Mendapatkan Deskripsi Material

      READ TABLE gi_makt WITH KEY matnr = gi_header-matnr.

      IF sy-subrc = 0.

        gi_header-maktx = gi_makt-maktx.

      ENDIF.

 

*    Mendapatkan Standar teks pengukuran

      READ TABLE gi_t006a WITH KEY msehi = gi_header-meins.

      IF sy-subrc = 0.

        gi_header-mseht = gi_t006a-mseht.

      ENDIF.

 

      MODIFY gi_header.

 

    ELSE.

      DELETE gi_header.

    ENDIF.

 

  ENDLOOP.

 

 

ENDFUNCTION.

Lihat Kode Sintak menggunakan "UP TO gv_max_row ROWS"

 

FUNCTION yfm_rfc_practice_102.

*"----------------------------------------------------------------------

*"*"Local interface:

*"  IMPORTING

*"     VALUE(GV_MAX_ROW) TYPE  I DEFAULT 100

*"  TABLES

*"      GI_HEADER STRUCTURE  YTA_HEADER_101 OPTIONAL

*"      GR_MATKL STRUCTURE  YST_RANGE_MATKL OPTIONAL

*"      GR_MATNR STRUCTURE  YST_RANGE_MATNR OPTIONAL

*"----------------------------------------------------------------------

 

  DATA: gi_makt TYPE STANDARD TABLE OF makt WITH HEADER LINE,

        gi_t006a TYPE STANDARD TABLE OF t006a WITH HEADER LINE.

*  DATA: lv_counter TYPE i.

 

*  Seleksi Material Master

  SELECT matnr matkl bismt meins

    UP TO gv_max_row ROWS

    INTO CORRESPONDING FIELDS OF TABLE gi_header

  FROM mara

  WHERE

    matkl IN gr_matkl AND

    matnr IN gr_matnr.

 

*  Seleksi Deskripsi Material

  SELECT matnr maktx

    INTO CORRESPONDING FIELDS OF TABLE gi_makt

  FROM makt

    FOR ALL ENTRIES IN gi_header

  WHERE

    matnr = gi_header-matnr AND

    spras = sy-langu.

 

*  Seleksi Standar teks pengukuran

 

  SELECT msehi mseht

    INTO CORRESPONDING FIELDS OF TABLE gi_t006a

  FROM t006a

    FOR ALL ENTRIES IN gi_header

  WHERE

    msehi = gi_header-meins AND

    spras = sy-langu.

 

 

*Mendapatkan informasi lain yang dibutuhkan

 

  LOOP AT gi_header.

*    Mendapatkan Deskripsi Material

    READ TABLE gi_makt WITH KEY matnr = gi_header-matnr.

    IF sy-subrc = 0.

      gi_header-maktx = gi_makt-maktx.

    ENDIF.

 

*    Mendapatkan Standar teks pengukuran

    READ TABLE gi_t006a WITH KEY msehi = gi_header-meins.

    IF sy-subrc = 0.

      gi_header-mseht = gi_t006a-mseht.

    ENDIF.

 

    MODIFY gi_header.

 

  ENDLOOP.

 

ENDFUNCTION.

11.Simpan dan Aktifkan function

 

Tes dan jalankan Program

Input

rfc0051

rfc0052

 

 

Output

rfc0053

 

rfc0054

 

User Threads | New Thread ( Only for Donators )

Threads Last Post Replies Views