且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

SAP CRM订单模型CRMD_SHIPPING的单元测试方法

更新时间:2022-09-05 23:36:16

For example the following shipping fields of One order document are stored in Database table CRMD_SHIPPING.SAP CRM订单模型CRMD_SHIPPING的单元测试方法The data could be read out via function module CRM_SHIPPING_READ_OB.SAP CRM订单模型CRMD_SHIPPING的单元测试方法This blog introduces the step how to generate fake data which will be returned by function module CRM_SHIPPING_READ_OB for unit test purpose.


Step1. Create fake data in Shipping object buffer

DATA: ls_shipping TYPE crmt_shipping_wrk.

DATA: lv_order_guid TYPE crmt_object_guid,

     lv_ship_guid  LIKE lv_order_guid,

     lt_link_com   TYPE crmt_link_comt,

     ls_link_com   LIKE LINE OF lt_link_com.

CALL FUNCTION 'GUID_CREATE'

 IMPORTING

   ev_guid_16 = lv_order_guid.

CALL FUNCTION 'GUID_CREATE'

 IMPORTING

   ev_guid_16 = lv_ship_guid.

ls_shipping-incoterms1 = 'FOB'.

ls_shipping-incoterms2 = 'Jerry Fake incoterms'.

ls_shipping-guid = lv_ship_guid.

CALL FUNCTION 'CRM_SHIPPING_PUT_OB'

 EXPORTING

   is_shipping_wrk = ls_shipping.Step2. Create a link between Order and shipping data via function module CRM_LINK_CREATE_OW

ls_link_com-guid_hi     = lv_order_guid.

ls_link_com-guid_set    = lv_ship_guid.

ls_link_com-objname_set = 'SHIPPING'.

ls_link_com-objtype_set = '12'.

ls_link_com-objname_hi  = 'ORDERADM_H'.

ls_link_com-objtype_hi  = '05'.

INSERT ls_link_com INTO TABLE lt_link_com.

CALL FUNCTION 'CRM_LINK_CREATE_OW'

 EXPORTING

   iv_guid_hi = lv_order_guid

   it_link    = lt_link_com

 EXCEPTIONS

   OTHERS     = 0.Step3. perform read via Object buffer function callCLEAR: ls_shipping.

CALL FUNCTION 'CRM_SHIPPING_READ_OB'

 EXPORTING

   iv_ref_guid         = lv_order_guid

   iv_ref_kind         = 'A'

 IMPORTING

   es_shipping_wrk = ls_shipping.

WRITE:/ 'Incoterms1:', ls_shipping-incoterms1.

WRITE:/ 'Incoterms2:', ls_shipping-incoterms2.Callstack of link manipulation and object buffer insert and read for Shipping.SAP CRM订单模型CRMD_SHIPPING的单元测试方法execution result:SAP CRM订单模型CRMD_SHIPPING的单元测试方法