Selasa, 26 April 2011

SAP Function Module ( RFC ) for Change Data

1. Buka t-code se37 lalu isi nama Function module dengan nama Z_CHG_KAB, tekan Create.




2. Isi Function Group dan juga Short textnya lalu Save. Jika belum buat Function group maka kita buat dulu Function groupnya dengan cara masuk menu bar Goto > Function groups > Create group.


3. Pada tab Import isikan Parameter name dengan X_PARAM, Type dengan Type Reference type dengan tabel ZAPPMM_KABUPATEN, centang Optional dan Pass value lalu Enter.

 4. Pada tab Export isikan Paremeter name dengan RETURN, Type dengan Type Reference type dengan BAPIRET2, centang pass value lalu Enter.


5. Pada tab Source code isikan code program seperti berikut lalu activate:
   
FUNCTION z_chg_kab.
     *"----------------------------------------------------
     *"*"Local interface:
     *"  IMPORTING
     *"     VALUE(X_PARAM) TYPE  ZAPPMM_KABUPATEN OPTIONAL
     *"  EXPORTING
     *"     VALUE(RETURN) TYPE  BAPIRET2
     *"-----------------------------------------------------

     data: wa_data type zappmm_kabupaten,
           xlaeda like zappmm_kabupaten-laeda,
           xaenam like zappmm_kabupaten-aenam.

     select single into wa_data
     from zappmm_kabupaten
        where kd_kab = x_param-kd_kab.
       if sy-subrc ne 0.
         return-type = 'E'.
         return-message = 'Tidak Ada Data Yang Harus Di Update..'.
        exit.
       else.
       xlaeda = sy-datum.
       x_param-laeda = xlaeda.

       xaenam = sy-uname.
       x_param-aenam = xaenam.

       if x_param-nm_kab ne ''.
           wa_data-nm_kab = x_param-nm_kab.
       endif.

       if x_param-laeda ne ''.
          wa_data-laeda = x_param-laeda.
        endif.

       if x_param-aenam ne ''.
          wa_data-aenam = x_param-aenam.
       endif.

        update zappmm_kabupaten
        from wa_data.
         commit work and wait.

         if sy-subrc eq 0.
          return-type = 'S'.
          return-message = 'Data Kabupaten Berhasil Di Update'.
        else.
           return-type = 'E'.
           return-message = 'Data Gagal Di Update ..'.
        endif.
      endif.
      ENDFUNCTION.

Tidak ada komentar:

Posting Komentar