For beginners facing issues in creating deep entity for more than one item table for single header.
I will explain how to create SAP Netweaver gateway OData service which will implement Create Deep Entity for POST operation.
This is for single header and multiple item table.
For example:Header Details:Order notification
Item Details:Order component
Order operation
Order header
Maintenance plan detail
- Create an custom RFC
- Create project in T-code 'SEGW'
- Create 6 entity types and entity sets
Entity Type 1 - notif
Entity Type 2 - ord_hdr
Entity Type 3 - ord_comp
Entity Type 4 - ord_opr
Entity Type 5 - mpos
Entity Type 6 - return(created to hold multiple messages of type BAPIRET2)
Entity Set 1 - notifSet
Entity Set 2 - ord_hdrSet
Entity Set 3 - ord_compSet
Entity Set 4 - ord_oprSet
Entity Set 5 - mposSet
Entity Set 6 - returnSet
- Create Association and Navigation
Association 1 notif_comp (entity notif to ord_comp with cardinality 1:N)
Association 2 notif_hdr (entity notif to ord_hdr with cardinality 1:1)
Association 3 notif_mpos (entity notif to ord_mpos with cardinality 1:1)
Association 4 notif_opr (entity notif to ord_opr with cardinality 1:N)
Association 5 notif_return (entity notif to ord_return with cardinality 1:N)
- Navigation property
Navigation 1 notif_return_nav
Navigation 2 notif_mpos_nav
Navigation 3 notif_comp_nav
Navigation 4 notif_opr_nav
Navigation 5 notif_hdr_nav
Now let’s generate runtime artifacts. Click on generate runtime object button. It will display
popup . Keep the default class names as-is and click on enter button.
Once generation is successful, you will get 4 classes. 2 for Data provider and 2 for Model provider.
Once registration done successfully .Goto Gateway Client ( call transaction /IWFND/GW_CLIENT to open SAP NW Gateway client)
Append $metadata to base service URL and press execute button. If everything is fine then you will get HTTP
Response as below. Metadata provides information such as Entity type, key property, properties and Entity Set
name and also check service document append ?$format=xml.
- DATA CLASS PROVIDER
Select ***_MPC_EXT class
Go to “Types” tab and add new type which is similar to your deep entity structure
Type decleration :
types:
BEGIN OF ts_deep_entity ,
qmnum TYPE qmnum,
code TYPE char4,
fllogid TYPE diacl_logid,
tllogid TYPE diacl_logid ,
sectref TYPE zsectref,
func_location TYPE tplnr,
erdat TYPE char15,
qmnam TYPE qmnam,
faultcode TYPE zfaultcode,
asr_gfor TYPE boolean,
nildef TYPE boolean,
defcode TYPE zdefcode,
def_pos TYPE zdef_pos,
techlog TYPE ztechlog,
dd_ltext TYPE char200,
dd_ltext1 TYPE char200,
action_text TYPE char200,
action_text1 TYPE char200,
structural TYPE boolean,
comp_replacement TYPE boolean,
material_request TYPE boolean,
source TYPE qmgrp,
dd_order TYPE aufnr,
dd_notif TYPE qmnum,
due_date TYPE char15,
mech TYPE char10,
inspection TYPE char10,
license TYPE char10,
add_auth TYPE zadd_auth,
cross_ref TYPE char25,
werks TYPE werks_d,
msg_type TYPE char1,
msg_text TYPE char80,
order_no TYPE aufnr ,
notif_comp_nav TYPE STANDARD TABLE OF ts_ord_comp
WITH DEFAULT KEY,
notif_opr_nav TYPE STANDARD TABLE OF ts_ord_opr
WITH DEFAULT KEY,
notif_hdr_nav TYPE ts_ord_hdr,
notif_mpos_nav TYPE ts_mpos,
notif_return_nav TYPE STANDARD TABLE OF ts_return
WITH DEFAULT KEY,
END OF ts_deep_entity .
Redefine the method “DEFINE” in the class.
Include the following code in Define method.
super->define( ).
DATA:
lo_annotation TYPE REF TO /iwbep/if_mgw_odata_annotation,
lo_entity_type TYPE REF TO /iwbep/if_mgw_odata_entity_typ,
lo_complex_type TYPE REF TO /iwbep/if_mgw_odata_cmplx_type,
lo_property TYPE REF TO /iwbep/if_mgw_odata_property,
lo_entity_set TYPE REF TO /iwbep/if_mgw_odata_entity_set.
********************************************************************
***********************************************************
* ENTITY - Deep Entity
********************************************************************
***********************************************************
lo_entity_type = model->get_entity_type( iv_entity_name = 'notif' ).
"#EC NOTEXT
lo_entity_type->bind_structure( iv_structure_name =
'***CL_LI5_LBK__14_MPC_EXT=>TS_DEEP_ENTITY' ).
- Create a custom method 'CUSTOM_CREATE_DEEP_ENTITY' in class '***CL_LI5_LBK__14_DPC_EXT'' whose parameters is similar to
parameters of method '/IWBEP/IF_MGW_APPL_SRV_RUNTIME~CREATE_DEEP_ENTITY'.The only change we need to make is replace the type of 'ER_DEEP_ENTITY' to the type which we specified in class '***CL_LI5_LBK__14_MPC_EXT=>TS_DEEP_ENTITY'.
CODE SNIPPET
METHOD custom_create_deep_entity.
CONSTANTS:c_crt TYPE char4 VALUE 'CRT' ,
c_crad TYPE char4 VALUE 'CRAD' ,
c_u TYPE char1 VALUE 'U' ,
c_read TYPE char4 VALUE 'READ' ,
c_clrd TYPE char4 VALUE 'CLRD' ,
c_clsd TYPE char4 VALUE 'CLSD' ,
c_upd TYPE char3 VALUE 'UPD' ,
c_a TYPE char1 VALUE 'A' .
TYPES:BEGIN OF return_msg,
type TYPE bapi_mtype,
message TYPE bapi_msg,
END OF return_msg.
DATA:lt_ret_msg TYPE
***cl_li5_lbk__14_mpc_ext=>tt_return,
ls_ret_msg TYPE /tcsmro/cl_li5_lbk__14_mpc_ext=>ts_return.
DATA:
lr_deep_entity TYPE ***cl_li5_lbk__14_mpc_ext=>ts_deep_entity,
lt_ord_comp TYPE ***cl_li5_lbk__14_mpc_ext=>tt_ord_comp,
ls_ord_comp TYPE ***cl_li5_lbk__14_mpc_ext=>ts_ord_comp,
lt_ord_opr TYPE ***cl_li5_lbk__14_mpc_ext=>tt_ord_opr,
ls_ord_opr TYPE ***cl_li5_lbk__14_mpc_ext=>ts_ord_opr,
lt_mpos TYPE ***cl_li5_lbk__14_mpc_ext=>tt_mpos,
ls_mpos TYPE ***cl_li5_lbk__14_mpc_ext=>ts_mpos,
lt_ord_hdr TYPE ***cl_li5_lbk__14_mpc_ext=>tt_ord_hdr,
ls_ord_hdr TYPE ***cl_li5_lbk__14_mpc_ext=>ts_ord_hdr,
e_msg_type TYPE char1,
e_msg_text TYPE char40,
lt_return TYPE ***cl_li5_lbk__14_mpc_ext=>tt_return,
ls_return TYPE ***cl_li5_lbk__14_mpc_ext=>ts_return.
DATA :
ls_general_data TYPE ***li5_lbk_notification,
*ls_general_data TYPE ***LI5_LBK_NOTIF,
*ls_general_data TYPE ***LI5_LBK_NOTIFICATION,
lt_ord_comp_data TYPE STANDARD TABLE OF ***li5_lbk_ord_comp,
ls_ord_comp_data TYPE ***li5_lbk_ord_comp,
********component to RFC structure
lt_ord_comp_data1 TYPE STANDARD TABLE OF bapi_alm_order_component_e,
ls_ord_comp_data1 TYPE bapi_alm_order_component_e,
******
lt_ord_opr_data TYPE STANDARD TABLE OF ***Li5_lbk_ord_opr,
ls_ord_opr_data TYPE ***/li5_lbk_ord_opr,
********operation to RFC structure
*lt_ord_opr_data1 TYPE STANDARD TABLE OF BAPI_ALM_ORDER_OPERATION_E,
*ls_ord_opr_data1 TYPE BAPI_ALM_ORDER_OPERATION_E,
lt_ord_opr_data1 TYPE STANDARD TABLE OF bapi_alm_order_operation_e,
ls_ord_opr_data1 TYPE bapi_alm_order_operation_e,
******order header
lt_ord_hdr_data TYPE STANDARD TABLE OF ***li5_lbk_ord_hdr,
ls_ord_hdr_data TYPE ***li5_lbk_ord_hdr,
********order header to RFC structure
lt_ord_hdr_data1 TYPE STANDARD TABLE OF bapi_alm_order_header_e,
ls_ord_hdr_data1 TYPE bapi_alm_order_header_e,
********MPOS
lt_mpos_data TYPE STANDARD TABLE OF ***li5_lbk_mpos,
ls_mpos_data TYPE ***li5_lbk_mpos,
********MPOS to RFC structure
lt_mpos_data1 TYPE STANDARD TABLE OF mpos,
ls_mpos_data1 TYPE mpos,
ls_mposf TYPE ***cl_li5_lbk__14_mpc_ext=>ts_mpos.
FIELD-SYMBOLS:
<ls_ord_compf> TYPE ***cl_li5_lbk__14_mpc_ext=>ts_ord_comp,
<ls_ord_oprf> TYPE ***cl_li5_lbk__14_mpc_ext=>ts_ord_opr,
<ls_ord_hdrf> TYPE ***cl_li5_lbk__14_mpc_ext=>ts_ord_hdr.
******message******
DATA:
lr_message_container TYPE REF TO /iwbep/if_message_container,
lv_message TYPE bapi_msg ,
lv_msgid TYPE symsgid ,
lv_msgno TYPE symsgno .
*lr_message_container = me->mo_context
* Transform data into the internal structure
io_data_provider->read_entry_data(
IMPORTING
es_data = lr_deep_entity ).
***********Collect the header fields here
ls_general_data-qmnum = lr_deep_entity-qmnum.
ls_general_data-code = lr_deep_entity-code.
ls_general_data-aufnr = lr_deep_entity-order_no.
ls_general_data-fllogid = lr_deep_entity-fllogid .
ls_general_data-func_location = lr_deep_entity-func_location.
ls_general_data-strmn = lr_deep_entity-erdat.
ls_general_data-qmnam = lr_deep_entity-qmnam.
ls_general_data-/smr/faultcode = lr_deep_entity-faultcode.
ls_general_data-/smr/asr_gfor = lr_deep_entity-asr_gfor.
ls_general_data-/smr/nildef = lr_deep_entity-nildef.
ls_general_data-/smr/defcode = lr_deep_entity-defcode.
ls_general_data-/smr/def_pos = lr_deep_entity-def_pos.
ls_general_data-/smr/techlog = lr_deep_entity-techlog.
ls_general_data-dd_ltext = lr_deep_entity-dd_ltext.
ls_general_data-dd_ltext1 = lr_deep_entity-dd_ltext1.
ls_general_data-action_ltext = lr_deep_entity-action_text.
ls_general_data-action_ltext1 = lr_deep_entity-action_text1.
ls_general_data-/smr/structural = lr_deep_entity-structural.
ls_general_data-/smr/comp_replacement =
lr_deep_entity-comp_replacement.
ls_general_data-/smr/material_request =
lr_deep_entity-material_request.
ls_general_data-qmcod = lr_deep_entity-source.
ls_general_data-dd_order = lr_deep_entity-dd_order.
ls_general_data-dd_notif = lr_deep_entity-dd_notif.
ls_general_data-due_date = lr_deep_entity-due_date.
ls_general_data-/smr/mech = lr_deep_entity-mech.
ls_general_data-/smr/inspection = lr_deep_entity-inspection.
ls_general_data-/smr/license = lr_deep_entity-license.
ls_general_data-/smr/add_auth = lr_deep_entity-add_auth.
ls_general_data-/smr/sectref = lr_deep_entity-sectref .
ls_general_data-plant = lr_deep_entity-werks.
ls_general_data-qmtxt = lr_deep_entity-dd_ltext.
********Collect comp fields
LOOP AT lr_deep_entity-notif_comp_nav ASSIGNING <ls_ord_compf>.
"WHERE qmnum = lr_deep_entity-qmnum.
CLEAR ls_ord_comp_data.
ls_ord_comp_data-qmnum = <ls_ord_compf>-qmnum.
ls_ord_comp_data-reserv_no = <ls_ord_compf>-reserv_no.
ls_ord_comp_data-res_item = <ls_ord_compf>-res_item.
ls_ord_comp_data-material = <ls_ord_compf>-material.
ls_ord_comp_data-material_desc = <ls_ord_compf>-material_desc.
ls_ord_comp_data-req_quan = <ls_ord_compf>-req_quan.
ls_ord_comp_data-unit = <ls_ord_compf>-unit.
ls_ord_comp_data-order_no = <ls_ord_compf>-order_no.
ls_ord_hdr_data1-orderid = <ls_ord_compf>-order_no.
APPEND ls_ord_comp_data TO lt_ord_comp_data.
ls_ord_comp_data1-reserv_no = <ls_ord_compf>-reserv_no.
ls_ord_comp_data1-res_item = <ls_ord_compf>-res_item.
IF NOT <ls_ord_compf>-material IS INITIAL.
CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'
EXPORTING
input = <ls_ord_compf>-material
IMPORTING
output = <ls_ord_compf>-material
EXCEPTIONS
length_error = 1
OTHERS = 2.
ELSE.
CONTINUE.
ENDIF.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
ls_ord_comp_data1-material = <ls_ord_compf>-material.
ls_ord_comp_data1-matl_desc = <ls_ord_compf>-material_desc.
ls_ord_comp_data1-requirement_quantity
= <ls_ord_compf>-req_quan.
ls_ord_comp_data1-requirement_quantity_unit
= <ls_ord_compf>-unit.
ls_ord_comp_data1-item_cat = <ls_ord_compf>-flag.
ls_ord_hdr_data1-orderid = <ls_ord_compf>-order_no.
APPEND ls_ord_comp_data1 TO lt_ord_comp_data1.
ENDLOOP.
********Collect oper fields
LOOP AT lr_deep_entity-notif_opr_nav ASSIGNING <ls_ord_oprf>.
CLEAR ls_ord_opr_data.
ls_ord_opr_data-qmnum = <ls_ord_oprf>-qmnum.
IF NOT <ls_ord_oprf>-skill IS INITIAL.
ls_ord_opr_data-skill = <ls_ord_oprf>-skill.
ELSE.
CONTINUE.
ENDIF.
ls_ord_opr_data-work_cntr = <ls_ord_oprf>-work_cntr.
ls_ord_opr_data-work_activity = <ls_ord_oprf>-work_activity.
TRANSLATE <ls_ord_oprf>-unit TO UPPER CASE.
ls_ord_opr_data-unit = <ls_ord_oprf>-unit.
ls_ord_opr_data-order_no = <ls_ord_oprf>-order_no.
ls_ord_hdr_data1-orderid = <ls_ord_oprf>-order_no.
ls_ord_opr_data-activity = <ls_ord_oprf>-activity.
ls_ord_opr_data-sub_activity = <ls_ord_oprf>-sub_activity.
ls_ord_opr_data-control_key = <ls_ord_oprf>-control_key.
APPEND ls_ord_opr_data TO lt_ord_opr_data.
ls_ord_opr_data1-work_cntr = <ls_ord_oprf>-work_cntr.
ls_ord_opr_data1-work_activity = <ls_ord_oprf>-work_activity.
TRANSLATE <ls_ord_oprf>-unit TO UPPER CASE.
ls_ord_opr_data1-un_work = <ls_ord_oprf>-unit.
ls_ord_hdr_data1-orderid = <ls_ord_oprf>-order_no.
ls_ord_opr_data1-activity = <ls_ord_oprf>-activity.
ls_ord_opr_data1-sub_activity = <ls_ord_oprf>-sub_activity.
ls_ord_opr_data1-control_key = <ls_ord_oprf>-control_key.
ls_ord_opr_data1-sub_activity = <ls_ord_oprf>-flag.
IF <ls_ord_oprf>-flag = space.
ls_ord_opr_data1-sub_activity = c_u.
ENDIF.
APPEND ls_ord_opr_data1 TO lt_ord_opr_data1.
ENDLOOP.
********Collect MPOS fields
* LOOP AT lr_deep_entity-notif_mpos_nav ASSIGNING <ls_mposf>
* WHERE qmnum = lr_deep_entity-qmnum.
ls_mposf = lr_deep_entity-notif_mpos_nav .
ls_mpos_data1-/smr/dd_type = ls_mposf-def_cat.
ls_mpos_data1-/smr/mel_ref = ls_mposf-mel_ref.
ls_mpos_data1-/smr/mel_part = ls_mposf-mel_part.
ls_mpos_data1-/smr/mel_cat = ls_mposf-mel_cat.
ls_mpos_data1-/smr/etops_rat = ls_mposf-etops_rat.
ls_mpos_data1-/smr/plan_reqs = ls_mposf-plan_reqs.
ls_mpos_data1-/smr/plan_reqb = ls_mposf-plan_reqb.
ls_mpos_data1-/smr/plan_reqns = ls_mposf-plan_reqns.
ls_mpos_data1-/smr/plan_dai = ls_mposf-plan_dai.
ls_mpos_data1-/smr/plan_reqnm = ls_mposf-plan_reqnm.
ls_mpos_data1-/smr/plan_reqni = ls_mposf-plan_reqni.
ls_mpos_data1-/smr/plan_reqti = ls_mposf-plan_reqti.
ls_mpos_data1-/smr/offset1 = ls_mposf-repair_within.
CASE ls_mposf-dd_type.
WHEN 'P'.
ls_mpos_data1-/smr/add_typep = 'X'.
WHEN 'NP'.
ls_mpos_data1-/smr/add_typen = 'X'.
WHEN 'I'.
ls_mpos_data1-/smr/add_typei = 'X'.
WHEN 'SC'.
ls_mpos_data1-/smr/add_typecs = 'X'.
WHEN 'C'.
ls_mpos_data1-/smr/add_typec = 'X'.
WHEN 'O'.
ls_mpos_data1-/SMR/ADD_TYPEO = 'X'.
ENDCASE.
**need to check
ls_mpos_data1-/smr/offset2 = ls_mposf-rapair_interval.
ls_mpos_data1-/smr/uom1 = ls_mposf-unit.
ls_mpos_data1-plnnr = ls_mposf-plnnr.
ls_mpos_data1-plnal = ls_mposf-plnal.
IF NOT ls_mpos_data1-plnnr IS INITIAL.
ls_mpos_data1-plnty = c_a.
ELSE.
ls_mpos_data1-plnty = ' '.
ENDIF.
***need to check
ls_mpos_data1-warpl = ls_mposf-warpl.
ls_mpos_data1-wapos = ls_mposf-wapos.
APPEND ls_mpos_data1 TO lt_mpos_data1.
* ENDLOOP.
**order header
APPEND ls_ord_hdr_data1 TO lt_ord_hdr_data1.
DATA lv_func_name TYPE string.
CASE lr_deep_entity-code.
WHEN c_clrd.
lv_func_name = '/TCSMRO/LI5_LBK_CLEAR_DEFECT'.
WHEN c_crad.
lv_func_name = '/TCSMRO/LI5_LBK_DEFER_DEFECT'.
WHEN c_read.
lv_func_name = '/TCSMRO/LI5_LBK_REASS_DEFECT'.
WHEN c_crt.
lv_func_name = '/TCSMRO/LI5_LBK_RAISE_DEFECT'.
WHEN c_upd.
lv_func_name = '/TCSMRO/LI5_UPDATE_DEFECT'.
ENDCASE.
IF lv_func_name IS NOT INITIAL.
CALL FUNCTION lv_func_name
EXPORTING
is_notification = ls_general_data
it_ord_comp = lt_ord_comp_data1
it_ord_opr = lt_ord_opr_data1
is_aufnr_hdr = ls_ord_hdr_data1
is_mpos = ls_mpos_data1
IMPORTING
e_msg_type = e_msg_type
e_msg_text = e_msg_text
TABLES
et_return = lt_return.
ELSEIF lr_deep_entity-code = c_clsd.
CALL FUNCTION '/TCSMRO/LI5_CLOSE_DEFECT'
EXPORTING
is_notification = ls_general_data
IMPORTING
e_msg_type = e_msg_type
e_msg_text = e_msg_text
TABLES
et_return = lt_return.
ENDIF.
er_deep_entity-msg_text = e_msg_text.
er_deep_entity-msg_type = e_msg_type.
LOOP AT lt_return INTO ls_return.
ls_ret_msg-type = ls_return-type.
ls_ret_msg-message = ls_return-message.
APPEND ls_ret_msg TO lt_ret_msg.
CLEAR:ls_return,
ls_ret_msg.
ENDLOOP.
er_deep_entity-notif_return_nav = lt_ret_msg.
ENDMETHOD.
- REQUEST PAYLOAD
<?xml version="1.0" encoding="UTF-8"?>
<atom:entry
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"
xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
<atom:content type="application/xml">
<m:properties>
<d:Qmnum></d:Qmnum>
<d:code>CRT</d:code>
<d:FLLOGID>N102131204</d:FLLOGID>
<d:TLLOGID>TLAA077303</d:TLLOGID>
<d:FUNCLOCATION>N-5679</d:FUNCLOCATION>
<d:SECTREF>GA047101LHR20131204</d:SECTREF>
<d:Erdat>20160425</d:Erdat>
<d:Qmnam>345153</d:Qmnam>
<d:Faultcode></d:Faultcode>
<d:AsrGfor>false</d:AsrGfor>
<d:Nildef>false</d:Nildef>
<d:Defcode>2340</d:Defcode>
<d:DefPos></d:DefPos>
<d:Techlog></d:Techlog>
<d:DdLtext>symptoms</d:DdLtext>
<d:ActionText>action</d:ActionText>
<d:Structural>false</d:Structural>
<d:CompReplacement>false</d:CompReplacement>
<d:MaterialRequest>false</d:MaterialRequest>
<d:Source>MM</d:Source>
<d:DueDate></d:DueDate>
<d:Mech></d:Mech>
<d:Inspection></d:Inspection>
<d:License></d:License>
<d:AddAuth></d:AddAuth>
</m:properties>
</atom:content>
<atom:link
rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/notif_comp_nav"
type="application/atom+xml;type=feed"
title="***LI5_LBK_DEFECT_DET_SRV/ord_compset">
<m:inline>
<atom:feed>
<atom:entry>
<atom:content type="application/xml">
<m:properties>
<d:Qmnum></d:Qmnum>
<d:ReservNo></d:ReservNo>
<d:ResItem></d:ResItem>
<d:Material>622-9252-001:4V792</d:Material>
<d:MaterialDesc></d:MaterialDesc>
<d:ReqQuan>4</d:ReqQuan>
<d:Unit></d:Unit>
<d:OrderNo></d:OrderNo>
</m:properties>
</atom:content>
</atom:entry>
<atom:entry>
<atom:content type="application/xml">
<m:properties>
<d:Qmnum></d:Qmnum>
<d:ReservNo></d:ReservNo>
<d:ResItem></d:ResItem>
<d:Material>622-9252-001:4V792</d:Material>
<d:MaterialDesc></d:MaterialDesc>
<d:ReqQuan>8</d:ReqQuan>
<d:Unit></d:Unit>
<d:OrderNo></d:OrderNo>
</m:properties>
</atom:content>
</atom:entry>
</atom:feed>
</m:inline>
</atom:link>
<atom:link
rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/notif_opr_nav"
type="application/atom+xml;type=feed"
title="***LI5_LBK_DEFECT_DET_SRV/ord_oprset">
<m:inline>
<atom:feed>
<atom:entry>
<atom:content type="application/xml">
<m:properties>
<d:Qmnum></d:Qmnum>
<d:Skill>B1</d:Skill>
<d:WorkCntr>GALY10B1</d:WorkCntr>
<d:WorkActivity>11.0</d:WorkActivity>
<d:Unit>MIN</d:Unit>
<d:OrderNo></d:OrderNo>
<d:Activity></d:Activity>
<d:SubActivity></d:SubActivity>
<d:ControlKey>AM01</d:ControlKey>
<d:FLAG>U</d:FLAG>
</m:properties>
</atom:content>
</atom:entry>
<atom:entry>
<atom:content type="application/xml">
<m:properties>
<d:Qmnum></d:Qmnum>
<d:Skill>B1</d:Skill>
<d:WorkCntr>GALY10M5</d:WorkCntr>
<d:WorkActivity>12.0</d:WorkActivity>
<d:Unit>MIN</d:Unit>
<d:OrderNo></d:OrderNo>
<d:Activity></d:Activity>
<d:SubActivity></d:SubActivity>
<d:ControlKey>AM01</d:ControlKey>
<d:FLAG>U</d:FLAG>
</m:properties>
</atom:content>
</atom:entry>
</atom:feed>
</m:inline>
</atom:link>
</atom:entry>
NOTE:
Please note that the names you use while creating the deep structure inside your DPC_EXT class of Create_Deep_Entity method should be same as the navigation properties defined in your SEGW Model.
This is how we need to construct our payload.
Then click on execute button and see the result on right side pane.