Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

can any one give me one example of call tranaction method

Former Member
0 Kudos

Hi guys,

can any body gimme the code of call tranaction method.

Thanks in advance.

regards,

chakkolthi,

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi,

Check this below code, It is a BDC using call transaction method for creating domain.



report  YH_calltransaction.

data:
  t_messages like
  standard table
  of  bdcmsgcoll.
data:
  fs_messages type bdcmsgcoll.
data:
  t_bdcdata like
   standard table
         of bdcdata.

data:
  fs_bdcdata type bdcdata,
  w_msg(70).

clear fs_bdcdata.

fs_bdcdata-program  = 'SAPMSRD0'.
fs_bdcdata-dynpro   = '0102'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'RSRD1-DOMA'.
fs_bdcdata-fval     = 'X'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.
fs_bdcdata-fnam     = 'RSRD1-DOMA_VAL'.
fs_bdcdata-fval     = 'YH1151_CALL2'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'ADD'.
append fs_bdcdata to t_bdcdata.


clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSD01'.
fs_bdcdata-dynpro   = '1200'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'DD01D-DDTEXT'.
fs_bdcdata-fval     = 'Domain_call'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.
fs_bdcdata-fnam     = 'DD01D-DATATYPE'.
fs_bdcdata-fval     = 'CHAR'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.
fs_bdcdata-fnam     = 'DD01D-LENG'.
fs_bdcdata-fval     = '8'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = '/00'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSD01'.
fs_bdcdata-dynpro   = '1200'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'WB_SAVE'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSTRD'.
fs_bdcdata-dynpro   = '0100'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'TEMP'.
append fs_bdcdata to t_bdcdata.


clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSD01'.
fs_bdcdata-dynpro   = '1200'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'WB_ACTIVATE'.
append fs_bdcdata to t_bdcdata.


clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSEWORKINGAREA'.
fs_bdcdata-dynpro   = '0205'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'WEIT'.
append fs_bdcdata to t_bdcdata.



clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSD01'.
fs_bdcdata-dynpro   = '1200'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'BACK'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.

fs_bdcdata-program  = 'SAPMSRD0'.
fs_bdcdata-dynpro   = '0102'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'BACK'.
append fs_bdcdata to t_bdcdata.

call transaction 'SE11' using t_bdcdata mode 'N' messages into
t_messages.

loop at t_messages into fs_messages.
  call function 'FORMAT_MESSAGE'
   exporting
     id              = fs_messages-msgid
     lang            = sy-langu
     no              = fs_messages-msgnr
     v1              = fs_messages-msgv1
     v2              = fs_messages-msgv2
     v3              = fs_messages-msgv3
     v4              = fs_messages-msgv4
   importing
     msg             = w_msg
* EXCEPTIONS
*   NOT_FOUND       = 1
*   OTHERS          = 2
            .
  if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  endif.

  write:/ w_msg.


endloop.

Regards,

Sujit

3 REPLIES 3

Former Member
0 Kudos

Hi,

Check this below code, It is a BDC using call transaction method for creating domain.



report  YH_calltransaction.

data:
  t_messages like
  standard table
  of  bdcmsgcoll.
data:
  fs_messages type bdcmsgcoll.
data:
  t_bdcdata like
   standard table
         of bdcdata.

data:
  fs_bdcdata type bdcdata,
  w_msg(70).

clear fs_bdcdata.

fs_bdcdata-program  = 'SAPMSRD0'.
fs_bdcdata-dynpro   = '0102'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'RSRD1-DOMA'.
fs_bdcdata-fval     = 'X'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.
fs_bdcdata-fnam     = 'RSRD1-DOMA_VAL'.
fs_bdcdata-fval     = 'YH1151_CALL2'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'ADD'.
append fs_bdcdata to t_bdcdata.


clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSD01'.
fs_bdcdata-dynpro   = '1200'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'DD01D-DDTEXT'.
fs_bdcdata-fval     = 'Domain_call'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.
fs_bdcdata-fnam     = 'DD01D-DATATYPE'.
fs_bdcdata-fval     = 'CHAR'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.
fs_bdcdata-fnam     = 'DD01D-LENG'.
fs_bdcdata-fval     = '8'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = '/00'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSD01'.
fs_bdcdata-dynpro   = '1200'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'WB_SAVE'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSTRD'.
fs_bdcdata-dynpro   = '0100'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'TEMP'.
append fs_bdcdata to t_bdcdata.


clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSD01'.
fs_bdcdata-dynpro   = '1200'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'WB_ACTIVATE'.
append fs_bdcdata to t_bdcdata.


clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSEWORKINGAREA'.
fs_bdcdata-dynpro   = '0205'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'WEIT'.
append fs_bdcdata to t_bdcdata.



clear fs_bdcdata.

fs_bdcdata-program  = 'SAPLSD01'.
fs_bdcdata-dynpro   = '1200'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'BACK'.
append fs_bdcdata to t_bdcdata.

clear fs_bdcdata.

fs_bdcdata-program  = 'SAPMSRD0'.
fs_bdcdata-dynpro   = '0102'.
fs_bdcdata-dynbegin = 'X'.
fs_bdcdata-fnam     = 'BDC_OKCODE'.
fs_bdcdata-fval     = 'BACK'.
append fs_bdcdata to t_bdcdata.

call transaction 'SE11' using t_bdcdata mode 'N' messages into
t_messages.

loop at t_messages into fs_messages.
  call function 'FORMAT_MESSAGE'
   exporting
     id              = fs_messages-msgid
     lang            = sy-langu
     no              = fs_messages-msgnr
     v1              = fs_messages-msgv1
     v2              = fs_messages-msgv2
     v3              = fs_messages-msgv3
     v4              = fs_messages-msgv4
   importing
     msg             = w_msg
* EXCEPTIONS
*   NOT_FOUND       = 1
*   OTHERS          = 2
            .
  if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  endif.

  write:/ w_msg.


endloop.

Regards,

Sujit

Former Member
0 Kudos

Hi deepak,

I am sending one link in that you can find the code.

i think its very useful to you.

http://www.sapdevelopment.co.uk/bdc/bdc_ctcode.htm

regards,

Jayan.

Former Member
0 Kudos

Hi!

Have a look at this transaction code. I'm uploading the names of domain in internal table t_domain from a txt file on presentation sever. After that I'm creating multiple domains using Call transaction.


REPORT  z_calltransaction1.

DATA:
  BEGIN OF fs_domain,
    dom TYPE bdcdata-fval,
  END OF fs_domain,
  w_line TYPE i,
  w_idx TYPE i VALUE 1.
DATA:
  t_domain LIKE
  STANDARD TABLE
        OF fs_domain.

DATA:     t_msg LIKE
      STANDARD TABLE
            OF bdcmsgcoll.
DATA: fs_msg TYPE bdcmsgcoll,
      w_msg(80).
DATA: fs_bdcdata TYPE bdcdata.
DATA:
  t_bdcdata LIKE
   STANDARD TABLE
         OF bdcdata.
CALL FUNCTION 'GUI_UPLOAD'
  EXPORTING
    filename = 'C:\Documents and Settings\ABC\Desktop\Domain.txt'
    filetype                      = 'ASC'
   has_field_separator           = 'X'
  TABLES
    data_tab                      = t_domain
 EXCEPTIONS
   FILE_OPEN_ERROR               = 1
   FILE_READ_ERROR               = 2
   NO_BATCH                      = 3
   GUI_REFUSE_FILETRANSFER       = 4
   INVALID_TYPE                  = 5
   NO_AUTHORITY                  = 6
   UNKNOWN_ERROR                 = 7
   BAD_DATA_FORMAT               = 8
   HEADER_NOT_ALLOWED            = 9
   SEPARATOR_NOT_ALLOWED         = 10
   HEADER_TOO_LONG               = 11
   UNKNOWN_DP_ERROR              = 12
   ACCESS_DENIED                 = 13
   DP_OUT_OF_MEMORY              = 14
   DISK_FULL                     = 15
   DP_TIMEOUT                    = 16
   OTHERS                        = 17
          .
IF sy-subrc <> 0.
 MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ELSE.
  WRITE: 'UPLOAD SUCCESSFUL'.
ENDIF.
LOOP AT t_domain INTO fs_domain.

  CLEAR fs_bdcdata.
  fs_bdcdata-program = 'SAPMSRD0'.
  fs_bdcdata-dynpro = '0102'.
  fs_bdcdata-dynbegin = 'X'.
  fs_bdcdata-fnam = 'RSRD1-DOMA'.
  fs_bdcdata-fval = 'X'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-fnam = 'RSRD1-DOMA_VAL'.
  fs_bdcdata-fval = fs_domain-dom.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-fnam = 'BDC_OKCODE'.
  fs_bdcdata-fval = 'ADD'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-program  = 'SAPLSD01'.
  fs_bdcdata-dynpro   = '1200'.
  fs_bdcdata-dynbegin = 'X'.
  fs_bdcdata-fnam     = 'DD01D-DDTEXT'.
  fs_bdcdata-fval     = 'TEST_DOMAIN'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-fnam = 'DD01D-DATATYPE'.
  fs_bdcdata-fval = 'CHAR'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-fnam = 'DD01D-LENG'.
  fs_bdcdata-fval = '10'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-fnam = 'BDC_OKCODE'.
  fs_bdcdata-fval = '/00'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-program  = 'SAPLSD01'.
  fs_bdcdata-dynpro   = '1200'.
  fs_bdcdata-dynbegin = 'X'.
  fs_bdcdata-fnam     = 'BDC_OKCODE'.
  fs_bdcdata-fval     = 'WB_SAVE'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-program = 'SAPLSTRD'.
  fs_bdcdata-dynpro = '0100'.
  fs_bdcdata-dynbegin = 'X'.
  fs_bdcdata-fnam = 'BDC_OKCODE'.
  fs_bdcdata-fval = 'TEMP'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-program  = 'SAPLSD01'.
  fs_bdcdata-dynpro   = '1200'.
  fs_bdcdata-dynbegin = 'X'.
  fs_bdcdata-fnam = 'BDC_OKCODE'.
  fs_bdcdata-fval = 'WB_CHECK'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-fnam = 'BDC_OKCODE'.
  fs_bdcdata-fval = 'WB_ACTIVATE'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-program = 'SAPLSEWORKINGAREA'.
  fs_bdcdata-dynpro  = '0205'.
  fs_bdcdata-dynbegin = 'X'.
  fs_bdcdata-fnam = 'BDC_OKCODE'.
  fs_bdcdata-fval = 'WEIT'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-program  = 'SAPLSD01'.
  fs_bdcdata-dynpro   = '1200'.
  fs_bdcdata-dynbegin = 'X'.
  fs_bdcdata-fnam = 'BDC_OKCODE'.
  fs_bdcdata-fval = 'BACK'.
  APPEND fs_bdcdata TO t_bdcdata.

  CLEAR fs_bdcdata.
  fs_bdcdata-program  = 'SAPMSRD0'.
  fs_bdcdata-dynpro   = '0102'.
  fs_bdcdata-dynbegin = 'X'.
  fs_bdcdata-fnam     = 'BDC_OKCODE'.
  fs_bdcdata-fval     = 'BACK'.
  APPEND fs_bdcdata TO t_bdcdata.

CALL TRANSACTION 'SE11' USING t_bdcdata MODE 'N' MESSAGES INTO t_msg.

  CLEAR fs_domain.
  REFRESH t_bdcdata.

ENDLOOP.


LOOP AT t_msg INTO fs_msg.
  CALL FUNCTION 'FORMAT_MESSAGE'
   EXPORTING
     id              = fs_msg-msgid
     lang            = sy-langu
     no              = fs_msg-msgnr
     v1              = fs_msg-msgv1
     v2              = fs_msg-msgv2
     v3              = fs_msg-msgv3
     v4              = fs_msg-msgv4
   IMPORTING
     msg             = w_msg
 EXCEPTIONS
   NOT_FOUND       = 1
   OTHERS          = 2
            .
  IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

  WRITE: / w_msg.

ENDLOOP.

Regards

Abhijeet