&---------------------------------------------------------------------*
*& Report ZDEMO_BOL_UPLOAD
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZDEMO_BOL_UPLOAD.
data : lr_core type ref to cl_crm_bol_core,
lr_factory type ref to CL_CRM_BOL_ENTITY_FACTORY,
lr_btorder type ref to cl_crm_bol_entity,
lr_btadminh type ref to cl_crm_bol_entity,
lr_btpartnerset type ref to cl_crm_bol_entity,
lr_btpartner type ref to cl_crm_bol_entity,
lr_tx type ref to IF_BOL_TRANSACTION_CONTEXT,
it_param type CRMT_NAME_VALUE_PAIR_TAB,
wa_param type CRMT_NAME_VALUE_PAIR,
v_id type string.
lr_core = cl_crm_bol_core=>get_instance( ).
lr_core->load_component_set( IV_COMPONENT_SET_NAME = 'ONEORDER' ).
*loop at it itab into wa
CALL METHOD LR_CORE->GET_ENTITY_FACTORY
EXPORTING
IV_ENTITY_NAME = 'BTOrder'
RECEIVING
RV_RESULT = lr_factory.
wa_param-name = 'OBJECT_TYPE'.
wa_param-value = 'BUS2000111'.
append wa_param to it_param.
wa_param-name = 'PROCESS_TYPE'.
wa_param-value = 'OPFS'.
append wa_param to it_param.
CALL METHOD LR_FACTORY->CREATE
EXPORTING
IV_PARAMS = it_param
RECEIVING
RV_RESULT = lr_btorder.
TRY.
CALL METHOD LR_BTORDER->GET_RELATED_ENTITY
EXPORTING
IV_RELATION_NAME = 'BTOrderHeader'
* IV_MODE = NORMAL
RECEIVING
RV_RESULT = lr_btadminh.
CATCH CX_CRM_GENIL_MODEL_ERROR .
ENDTRY.
*if lr_btadminh is not bound.
*
* endif.
lr_btadminh->set_property_as_string( iv_attr_name = 'DESCRIPTION'
iv_value = 'Test BOL Upload' ). "wa-description
lr_core->modify( ).
TRY.
CALL METHOD LR_BTADMINH->CREATE_RELATED_ENTITY
EXPORTING
IV_RELATION_NAME = 'BTHeaderPartnerSet'
RECEIVING
RV_RESULT = lr_btpartnerset.
CATCH CX_CRM_GENIL_DUPLICATE_REL .
CATCH CX_CRM_GENIL_MODEL_ERROR .
ENDTRY.
TRY.
CALL METHOD LR_Btpartnerset->CREATE_RELATED_ENTITY
EXPORTING
IV_RELATION_NAME = 'BTPartner_PFT_0006_MAIN'
RECEIVING
RV_RESULT = lr_btpartner.
CATCH CX_CRM_GENIL_DUPLICATE_REL .
CATCH CX_CRM_GENIL_MODEL_ERROR .
ENDTRY.
lr_btpartner->set_property_as_string( iv_attr_name = 'PARTNER_NO'
iv_value = '3274' )."wa-partner
lr_core->modify( ).
lr_tx = lr_btorder->get_transaction( ).
if lr_tx->save( ) = abap_true.
lr_tx->commit( ).
v_id = lr_btadminh->get_property_as_string( iv_attr_name = 'OBJECT_ID' ).
else.
lr_tx->rollback( ).
endif.
write v_id.
nice post thank you so much Swathi
ReplyDelete