新浪博客

动态表迁移程序【两个SAP系统之间表迁移】

2018-02-23 18:05阅读:
Source Code
*&---------------------------------------------------------------------*
*& Report ZR_MIG_STUFF_REQUEST_PR
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zr_mig_stuff_request_pr.
TABLES:ztpr_header.
SELECT-OPTIONS:s_banfn FOR ztpr_header-banfn.
FIELD-SYMBOLS: TYPE table,
TYPE any,
TYPE table,
TYPE any.
DATA:go_pr_header TYPE REF TO data,
go_pr_item TYPE REF TO data,
gt_ztpr_header TYPE TABLE OF ztpr_header,
gt_ztpr_item TYPE TABLE OF ztpr_item.
START-OF-SELECTION.
PERFORM frm_get_data.
PERFORM frm_process_data.
PERFORM frm_write_data.
*&---------------------------------------------------------------------*
*& Form FRM_GET_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM frm_get_data .
DATA: lv_dest TYPE rfcdest,
lo_table TYPE REF TO data,
lv_subrc(1) TYPE c,
lv_success TYPE boolean.
CALL FUNCTION 'ZBBP_GET_SRMSUS'
IMPORTING
ev_dest = lv_dest.
***************************************************************************
*PR Header Dynamic Table Field Catelog
PERFORM frm_ddif_get_table USING lv_dest
'ZTJC001'
CHANGING lo_table
lv_subrc.
IF lv_subrc <> '0'.
MESSAGE 'Error' TYPE 'S' DISPLAY LIKE 'E'.
LEAVE LIST-PROCESSING.
STOP.
ENDIF.
ASSIGN lo_table->* TO .
CREATE DATA go_pr_header LIKE LINE OF .
ASSIGN go_pr_header->* TO .
***************************************************************************
*PR Item Dynamic Table Field Catelog
PERFORM frm_ddif_get_table USING lv_dest
'ZTJC001_DTL'
CHANGING lo_table
lv_subrc.
IF lv_subrc <> '0'.
MESSAGE 'Error' TYPE 'S' DISPLAY LIKE 'E'.
LEAVE LIST-PROCESSING.
STOP.
ENDIF.
ASSIGN lo_table->* TO .
CREATE DATA go_pr_item LIKE LINE OF .
ASSIGN go_pr_item->* TO .
CALL FUNCTION 'ZRFC_SYNC_ZJC_PR' DESTINATION lv_dest
IMPORTING
ev_success = lv_success
TABLES
et_pr_header =
et_pr_items =
it_so_pr = s_banfn.
IF sy-subrc <> 0 OR lv_success <> abap_true .
MESSAGE 'No Data' TYPE 'S' DISPLAY LIKE 'E'.
LEAVE LIST-PROCESSING.
STOP.
ENDIF.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form FRM_DDIF_GET_TABLE
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_LV_DEST text
* -->P_0039 text
* <--P_DY_TABLE text
* <--P_LV_SUBRC text
*----------------------------------------------------------------------*
FORM frm_ddif_get_table USING pv_dest
pv_table_name
CHANGING co_table
cv_subrc.
DATA: lt_table LIKE TABLE OF dntab,
ls_table TYPE dntab,
lt_fcat TYPE lvc_t_fcat

我的更多文章

下载客户端阅读体验更佳

APP专享