SAP MDG · REPLICATION INBOUND
How does the supplier query inbound proxy method `ZII_SI_S_SUPPLIER_QUERY_INBOUN~SI_S_SUPPLIER_QUERY_INBOUND` work, and how should I implement the real processing logic?
`ZII_SI_S_SUPPLIER_QUERY_INBOUN~SI_S_SUPPLIER_QUERY_INBOUND` is the inbound entry point; it should stay thin, extract the change request ID from `input-mt_supplier_query_req-id`, delegate processing to `ZCL_MDG_SUPPL_UTILITY=>SEND_DATA_TO_SEP`, and handle casting errors with SLG1-style error logging. For the broader supplier-query pattern, the related implementation guide shows a direct update path plus a main update routine in `ZCL_SI_S_SUPPLIER_QUERY_INBOUN`.
`ZII_SI_S_SUPPLIER_QUERY_INBOUN~SI_S_SUPPLIER_QUERY_INBOUND` is the inbound entry point; it should stay thin, extract the change request ID from `input-mt_supplier_query_req-id`, delegate processing to `ZCL_MDG_SUPPL_UTILITY=>SEND_DATA_TO_SEP`, and handle casting errors with SLG1-style error logging. For the broader supplier-query pattern, the related implementation guide shows a direct update path plus a main update routine in `ZCL_SI_S_SUPPLIER_QUERY_INBOUN`.
The supplier query inbound proxy method `ZII_SI_S_SUPPLIER_QUERY_INBOUN~SI_S_SUPPLIER_QUERY_INBOUND` is implemented as a thin entry point. It assigns the inbound CR from `input-mt_supplier_query_req-id`, delegates the real work to `ZCL_MDG_SUPPL_UTILITY=>SEND_DATA_TO_SEP`, and catches `CX_SY_MOVE_CAST_ERROR` to surface an application error. The related supplier-query pattern in the knowledge base also identifies `CHANGE_INBOUND_SPTO_MDG_DIRECT` and `UPDATE_INBOUND_SPTO_MDG` as the main processing routines in `ZCL_SI_S_SUPPLIER_QUERY_INBOUN`.
Process flow
- Read the inbound change request ID from `input-mt_supplier_query_req-id`.
- Pass the CR to a helper class instead of embedding business logic in the proxy method.
- Map the helper output back to `output`.
- Catch casting or conversion errors at the proxy boundary.
- Write the failure to application log / SLG1-compatible messaging.
- Keep the real supplier-query processing in the dedicated backend routine.
ILLUSTRATIVE ABAP SAMPLE
Source ABAP example
Exact relevant implementation excerpt from the knowledge document.
1method ZII_SI_S_SUPPLIER_QUERY_INBOUN~SI_S_SUPPLIER_QUERY_INBOUND.
2 DATA: lv_cr TYPE USMD_CREQUEST.
3 lv_cr = input-mt_supplier_query_req-id.
4 TRY.
5
6 CALL METHOD zcl_mdg_suppl_utility=>send_data_to_sep
7 EXPORTING
8 iv_cr = lv_cr
9 IMPORTING
10 et_output = output
11 .
12if 1 = 1.
13 endif.
14 CATCH cx_sy_move_cast_error INTO DATA(lr_o_err).
15* Log error in SLG1
16 DATA(ls_string) = lr_o_err->get_text( ).
17 MESSAGE ls_string TYPE 'E' DISPLAY LIKE 'E'.
18 DATA: lt_messages TYPE TABLE OF balmi,
19 ls_message TYPE balmi.
20
21 ENDTRY.
22
23 endmethod.The remaining configuration, implementation details, and testing guidance continue from this answer more…
Related questions and keywords
Alternative questions
- What does the supplier query inbound proxy do?
- How do I implement `ZII_SI_S_SUPPLIER_QUERY_INBOUN~SI_S_SUPPLIER_QUERY_INBOUND`?
- How is the supplier query inbound payload processed in MDG?
Possible questions
- Which class should I enhance for supplier query inbound processing?
- What is the entry-point method for supplier query inbound?
- How do I call the backend processing from the proxy method?
- How should I handle errors in the supplier query inbound proxy?
- What is the recommended pattern for thin proxy classes in MDG inbound?