EPIC自动获取电子回单

  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.


 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值