‎2014 Apr 03 4:13 AM
Hi,
I wants to perform a create functionality through report program which is currently through BOPF.
Please anyone help me to achieve.
Regards,
Sakthi
‎2014 Apr 03 5:58 AM
Hi Sakthi,
You can perform Create functionality using Service Manager and Save it using Transaction Manager.
Kindly refer following code.
DATA LO_SRV TYPE REF TO /BOBF/IF_TRA_SERVICE_MANAGER.
DATA LO_TRA TYPE REF TO /BOBF/IF_TRA_TRANSACTION_MGR.
DATA: LR_DATA TYPE REF TO <combine structure of resp. node> ,
LW_KEY_NEW TYPE /BOBF/CONF_KEY ,
DATA: LO_CHANGE TYPE REF TO /BOBF/IF_TRA_CHANGE,
LO_MESSAGE TYPE REF TO /BOBF/IF_FRW_MESSAGE.
DATA: LT_MODIF TYPE /BOBF/T_FRW_MODIFICATION,
LW_MODIF TYPE /BOBF/S_FRW_MODIFICATION.
LO_TRA = /BOBF/CL_TRA_TRANS_MGR_FACTORY=>GET_TRANSACTION_MANAGER( ). LO_SRV = /BOBF/CL_TRA_SERV_MGR_FACTORY=>GET_SERVICE_MANAGER( IV_BO_KEY = <constant_interface_name>=>SC_BO_KEY ).
LW_KEY_NEW = LO_SRV->GET_NEW_KEY( ).
LR_DATA-><field1> = abc.
LR_DATA-><field2> = xyz.
LR_DATA-><field3> = 123.
LW_MODIF-NODE = <constant Interface name>=>SC_NODE-<node name>.
LW_MODIF-CHANGE_MODE = 'C'.
LW_MODIF-KEY = LW_KEY_NEW.
LW_MODIF-DATA = LR_DATA.
LW_MODIF-SOURCE_KEY = <parent_key_of_instance>.
LW_MODIF-SOURCE_NODE = <const. inf name>=>SC_NODE-<parent_node name>.
LW_MODIF-ASSOCIATION = <const. inf name>=>SC_ASSOCIATION-<parent_node>-<child_node>.
LW_MODIF-ROOT_KEY = <root_key_of _instance>.
APPEND LW_MODIF TO LT_MODIF.
LO_SRV->MODIFY (
EXPORTING
IT_MODIFICATION = LT_MODIF
IMPORTING
EO_CHANGE = LO_CHANGE
EO_MESSAGE = LO_MESSAGE ).
LO_TRA->SAVE( ).
Thanks and regards,
Chetan P. Patil.