Membaca Message hasil BDC

Biasanya setelah menjalankan BDC dalam program, akan muncul message hasil eksekusi transaksi. Data yang dilempar dalam table message ini hanya berupa ID, TYPE, NUMBER, dll yang sulit dipahami. Hal ini berbeda dengan BAPI Return yang sudah melemparkan message-nya secera lengkap yang dapat dimengerti oleh user.

Untuk membaca isi lemparan message dari BDC, sebenernya dapat menggunakan TCODE SE91, yaitu transaksi untuk membaca message dengan menginput ID dan NUMBER message. tapi hal ini amat sangat tidak efisien. jadi alangkah baiknya bila dilakukan coding untuk membaca message hasil lemparan BDC di dalam program.

Ada beberapa cara agar message yang tampil mudah dipahami oleh user, yaitu dengan menggunakan function FORMAT_MESSAGE, atau dengan select data ke table T10o.

1. Menggunakan Function FORMAT_MESSAGE.

  data: wa_messtab like bdcmsgcoll.
  data: d_msg(255).
    call function 'FORMAT_MESSAGE'
      exporting
        id        = wa_bdcmsg-msgid
        lang      = 'EN'
        no        = wa_bdcmsg-msgnr
        v1        = wa_bdcmsg-msgv1
        v2        = wa_bdcmsg-msgv2
        v3        = wa_bdcmsg-msgv3
        v4        = wa_bdcmsg-msgv4
      importing
        msg       = d_msg

2. Select data ke table T100.

  data: d_msg type NATXT.
  data: wa_messtab like bdcmsgcoll.
  select single text into d_msg
  from t100
  where sprsl eq wa_messtab-MSGSPRA
    and arbgb eq wa_messtab-MSGID
    and msgnr eq wa_messtab-MSGNR.

   replace '&1' in d_msg with wa_messtab-msgv1.
   replace '&2' in d_msg with wa_messtab-msgv2.
   replace '&3' in d_msg with wa_messtab-msgv3.
   replace '&4' in d_msg with wa_messtab-msgv4.
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s