REPORT zbom_update_object_dependencies.
*& 更改时,根据:identifier,object_id,ITEM_NODE,ITEM_COUNT
DATA:gv_stko LIKE stko_api01,
gt_stpo LIKE TABLE OF stpo_api03 WITH HEADER LINE,
gt_t_dep_data LIKE TABLE OF csdep_dat WITH HEADER LINE,
gt_t_dep_source LIKE TABLE OF csdep_sorc WITH HEADER LINE,
gt_stpo_r LIKE TABLE OF stpo_api02 WITH HEADER LINE,
gv_warning,
gt_t_dep_data_r LIKE TABLE OF csdep_dat WITH HEADER LINE,
gt_t_dep_source_r LIKE TABLE OF csdep_sorc WITH HEADER LINE .
PARAMETER:p_line(72).
CALL FUNCTION 'CSAP_MAT_BOM_READ'
EXPORTING
material = 'TEST'
plant = '1000'
bom_usage = '1'
* ALTERNATIVE =
valid_from = '20130730'
* VALID_TO =
* CHANGE_NO =
* REVISION_LEVEL =
* FL_DOC_LINKS =
* FL_DMU_TMX =
* IMPORTING
* FL_WARNING =
TABLES
t_stpo = gt_stpo_r
* T_STKO =
t_dep_data = gt_t_dep_data_r
* T_DEP_DESCR =
* T_DEP_ORDER =
t_dep_source = gt_t_dep_source_r
* T_DEP_DOC =
* T_DOC_LINK =
* T_DMU_TMX =
* T_LTX_LINE =
* T_STPU =
* EXCEPTIONS
* ERROR = 1
* OTHERS = 2
.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*&更改bom的相关性定义
LOOP AT gt_stpo_r FROM 1 TO 1.
MOVE-CORRESPONDING gt_stpo_r TO gt_stpo.
gt_stpo-identifier = 'TEST'.
APPEND gt_stpo.
ENDLOOP.
LOOP AT gt_t_dep_data_r FROM 1 TO 1.
gt_t_dep_data = gt_t_dep_data_r.
gt_t_dep_data-identifier = 'TEST'.
gt_t_dep_data-object_id = '2'.
APPEND gt_t_dep_data.
ENDLOOP.
LOOP AT gt_t_dep_source_r FROM 1 TO 1.
gt_t_dep_source = gt_t_dep_source_r.
gt_t_dep_source-line = p_line .
gt_t_dep_source-identifier = 'TEST'.
gt_t_dep_source-object_id = '2'.
APPEND gt_t_dep_source.
ENDLOOP.
CALL FUNCTION 'CSAP_MAT_BOM_MAINTAIN'
EXPORTING
material = 'TEST'
plant = '1000'
bom_usage = '1'
* ALTERNATIVE =
valid_from = '20130730'
* CHANGE_NO =
* REVISION_LEVEL =
i_stko = gv_stko
* FL_NO_CHANGE_DOC = ' '
fl_commit_and_wait = 'X'
* FL_CAD = ' '
* FL_BOM_CREATE = ' '
fl_new_item = 'X'
* FL_COMPLETE = ' '
* FL_DEFAULT_VALUES = 'X'
* FL_IDENTIFY_BY_GUID = ' '
IMPORTING
fl_warning = gv_warning
* O_STKO =
TABLES
t_stpo = gt_stpo
t_dep_data = gt_t_dep_data
* T_DEP_DESCR =
* T_DEP_ORDER =
t_dep_source = gt_t_dep_source
* T_DEP_DOC =
* T_DOC_LINK =
* T_DMU_TMX =
* T_LTX_LINE =
* T_STPU =
* EXCEPTIONS
* ERROR = 1
* OTHERS = 2
.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
*& 更改时,根据:identifier,object_id,ITEM_NODE,ITEM_COUNT
DATA:gv_stko LIKE stko_api01,
gt_stpo LIKE TABLE OF stpo_api03 WITH HEADER LINE,
gt_t_dep_data LIKE TABLE OF csdep_dat WITH HEADER LINE,
gt_t_dep_source LIKE TABLE OF csdep_sorc WITH HEADER LINE,
gt_stpo_r LIKE TABLE OF stpo_api02 WITH HEADER LINE,
gv_warning,
gt_t_dep_data_r LIKE TABLE OF csdep_dat WITH HEADER LINE,
gt_t_dep_source_r LIKE TABLE OF csdep_sorc WITH HEADER LINE .
PARAMETER:p_line(72).
CALL FUNCTION 'CSAP_MAT_BOM_READ'
EXPORTING
material = 'TEST'
plant = '1000'
bom_usage = '1'
* ALTERNATIVE =
valid_from = '20130730'
* VALID_TO =
* CHANGE_NO =
* REVISION_LEVEL =
* FL_DOC_LINKS =
* FL_DMU_TMX =
* IMPORTING
* FL_WARNING =
TABLES
t_stpo = gt_stpo_r
* T_STKO =
t_dep_data = gt_t_dep_data_r
* T_DEP_DESCR =
* T_DEP_ORDER =
t_dep_source = gt_t_dep_source_r
* T_DEP_DOC =
* T_DOC_LINK =
* T_DMU_TMX =
* T_LTX_LINE =
* T_STPU =
* EXCEPTIONS
* ERROR = 1
* OTHERS = 2
.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*&更改bom的相关性定义
LOOP AT gt_stpo_r FROM 1 TO 1.
MOVE-CORRESPONDING gt_stpo_r TO gt_stpo.
gt_stpo-identifier = 'TEST'.
APPEND gt_stpo.
ENDLOOP.
LOOP AT gt_t_dep_data_r FROM 1 TO 1.
gt_t_dep_data = gt_t_dep_data_r.
gt_t_dep_data-identifier = 'TEST'.
gt_t_dep_data-object_id = '2'.
APPEND gt_t_dep_data.
ENDLOOP.
LOOP AT gt_t_dep_source_r FROM 1 TO 1.
gt_t_dep_source = gt_t_dep_source_r.
gt_t_dep_source-line = p_line .
gt_t_dep_source-identifier = 'TEST'.
gt_t_dep_source-object_id = '2'.
APPEND gt_t_dep_source.
ENDLOOP.
CALL FUNCTION 'CSAP_MAT_BOM_MAINTAIN'
EXPORTING
material = 'TEST'
plant = '1000'
bom_usage = '1'
* ALTERNATIVE =
valid_from = '20130730'
* CHANGE_NO =
* REVISION_LEVEL =
i_stko = gv_stko
* FL_NO_CHANGE_DOC = ' '
fl_commit_and_wait = 'X'
* FL_CAD = ' '
* FL_BOM_CREATE = ' '
fl_new_item = 'X'
* FL_COMPLETE = ' '
* FL_DEFAULT_VALUES = 'X'
* FL_IDENTIFY_BY_GUID = ' '
IMPORTING
fl_warning = gv_warning
* O_STKO =
TABLES
t_stpo = gt_stpo
t_dep_data = gt_t_dep_data
* T_DEP_DESCR =
* T_DEP_ORDER =
t_dep_source = gt_t_dep_source
* T_DEP_DOC =
* T_DOC_LINK =
* T_DMU_TMX =
* T_LTX_LINE =
* T_STPU =
* EXCEPTIONS
* ERROR = 1
* OTHERS = 2
.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.