Hi expert,
My objective and problem:
- When I create provider order, I want to send related data to external system for provisioning via web service in ODI (Order Distribution Intrastructure). -> Done
- Response from external system is asynchronous -> Done by set the Distribution Type State = E (Waiting)
- Fullfillment messages in SAP CRM updated by external system one by one -> Problem
![13-03-2014 4-40-11 PM.jpg]()
- Set Final Distribution Type State by external system -> Done with below code
TRY. cl_crm_isx_order_msg_dist_srv=>get_instance( )->get_update_service( iv_trx_handling = abap_true )->update_msg_state_by_step_guid( iv_step_guid = i_record_guid "needs TO be passed iv_msg_state = i_msg_state "new STATE iv_log_data = t_message "optional iv_log_data_type = 'BAPIRETTAB' ). "optional CATCH cx_crm_isx_order_msg_dist INTO lx_exc. CASE lx_exc->textid. WHEN cx_crm_isx_order_msg_dist=>lock_error. * document was locked -> processing not possible WHEN cx_crm_isx_order_msg_dist=>save_error. * document not saved WHEN OTHERS. ENDCASE. ENDTRY.
The problem is at point 3.
Example: in step provisioning, there are 3 sub step, let say substep 1, substep 2, and substep 3. Each substep will be updated by external system to SAP CRM via web service.
How to update fulfillment messages without update the distribution type state? What method/FM that I need?
Please advice.
Thank you
