‎2010 May 21 2:18 PM
Hi,
Can anybody suggest me how to write BDC coding using classes since perform statements cannot be performed in classes.
‎2010 May 21 2:27 PM
Hi
you could use macros - see method CREATE_FB01_DOCUMENT of CL_REUT_EX_FI_SERVICES:
DEFINE mac_dynpro.
clear ls_bdcdata.
ls_bdcdata-program = &1.
ls_bdcdata-dynpro = &2.
ls_bdcdata-dynbegin = 'X'.
append ls_bdcdata to lt_bdcdata.
END-OF-DEFINITION.
DEFINE mac_field.
if &1 <> ld_nodata.
clear ls_bdcdata.
ls_bdcdata-fnam = &1.
ls_bdcdata-fval = &2.
append ls_bdcdata to lt_bdcdata.
endif.
END-OF-DEFINITION.
...
mac_dynpro 'SAPMF05A' '0100'.
mac_field 'BDC_CURSOR' 'RF05A-NEWKO'.
mac_field 'BDC_OKCODE' '/00'.
...
Or if you don't like macros create a method for each perform.
‎2010 May 21 2:27 PM
Hi
you could use macros - see method CREATE_FB01_DOCUMENT of CL_REUT_EX_FI_SERVICES:
DEFINE mac_dynpro.
clear ls_bdcdata.
ls_bdcdata-program = &1.
ls_bdcdata-dynpro = &2.
ls_bdcdata-dynbegin = 'X'.
append ls_bdcdata to lt_bdcdata.
END-OF-DEFINITION.
DEFINE mac_field.
if &1 <> ld_nodata.
clear ls_bdcdata.
ls_bdcdata-fnam = &1.
ls_bdcdata-fval = &2.
append ls_bdcdata to lt_bdcdata.
endif.
END-OF-DEFINITION.
...
mac_dynpro 'SAPMF05A' '0100'.
mac_field 'BDC_CURSOR' 'RF05A-NEWKO'.
mac_field 'BDC_OKCODE' '/00'.
...
Or if you don't like macros create a method for each perform.
‎2010 May 21 5:11 PM