SAP CRM訂單模型CRMD_SHIPPING的單元測試方法

i042416發表於2020-08-26

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 call

CLEAR: 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的單元測試方法

要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":

SAP CRM訂單模型CRMD_SHIPPING的單元測試方法


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2714999/,如需轉載,請註明出處,否則將追究法律責任。

相關文章