DATA: lt_req_parameters TYPE epic_t_ebr_req_acct,
lt_message TYPE epic_t_ebr_msg,
lv_datum TYPE sy-datum,
lt_ebr_data TYPE epic_t_ebr_req_rslt.
"查询配置中060通信类型的银行
SELECT zbukr,hbkid,hktid,bctyp
INTO TABLE @DATA(lt_com)
FROM epic_c_bcd
WHERE bctyp = '060'.
IF sy-subrc <> 0.
WRITE:TEXT-001.
RETURN.
ENDIF.
IF p_qdate IS NOT INITIAL.
lv_datum = p_qdate.
ELSE.
lv_datum = sy-datum - 1.
ENDIF.
LOOP AT lt_com INTO DATA(ls_com).
APPEND VALUE #( zbukr = ls_com-zbukr hbkid = ls_com-hbkid hktid = ls_com-hktid
bctyp = ls_com-bctyp start_date = lv_datum end_date = lv_datum ) TO lt_req_parameters.
ENDLOOP.
cl_epic_ebr_requester=>get_instance( )->request(
EXPORTING
it_account = lt_req_parameters " Request Selection of Electronic Bank Receipt
IMPORTING
et_result = lt_ebr_data " Table Type of EPIC_S_EBR_REQ_RSLT
et_message = lt_message " Message Table Type of Electronic Bank Receipt
).
IF lt_ebr_data IS NOT INITIAL.
cl_epic_ebr_requester=>get_instance( )->save_result(
CHANGING
ct_result = lt_ebr_data " Table Type of EPIC_S_EBR_REQ_RSLT
).
ENDIF.
DATA lo_req_account TYPE REF TO cl_epic_ebr_req_account.
CREATE OBJECT lo_req_account.
lo_req_account->update_request_record( it_req_parameter = lt_req_parameters ).
DATA: lv_msg TYPE string.
LOOP AT lt_message INTO DATA(ls_message).
MESSAGE ID ls_message-msgid TYPE 'S' NUMBER ls_message-msgno
WITH ls_message-msgv1 ls_message-msgv2 ls_message-msgv3 ls_message-msgv4
INTO lv_msg.
WRITE: ls_message-zbukr,'-',ls_message-hbkid,'-',ls_message-hktid,':', lv_msg.
ENDLOOP.