CCAP_ECN_CREATE - ooxxvv/MySAPnotes GitHub Wiki
{{{#!abap DATA:l_ecn_h LIKE aenr_api01, l_bom_mat LIKE aenv_api01, l_mat LIKE aenv_api01, lt_ec_txt LIKE tline OCCURS 0 WITH HEADER LINE.
DATA:l_field TYPE i VALUE '12'.
FIELD-SYMBOLS:<l_fs> LIKE zelgh-line01.
*--ecn header l_ecn_h-change_no=t_zelgh-aennr. l_ecn_h-status='01'. l_ecn_h-valid_from=t_zelgh-datuv. l_ecn_h-descript=t_zelgh-aetxt.
*--bom object ==>ECN表頭勾選的object l_bom_mat-active='X'. l_bom_mat-obj_requ='X'. l_bom_mat-mgtrec_gen='X'. l_mat-active='X'. l_mat-obj_requ='X'. l_mat-mgtrec_gen='X'.
--append text line ==> insert ECN desc,記得換行符號要給(lt_ec_txt-tdformat=''.),才會換行 DO 20 TIMES. ASSIGN COMPONENT l_field OF STRUCTURE t_zelgh TO <l_fs>.
lt_ec_txt-tdformat='*'. lt_ec_txt-tdline=<l_fs>. APPEND lt_ec_txt.
ADD 1 TO l_field. ENDDO.
CALL FUNCTION 'CCAP_ECN_HEADER_CREATE' EXPORTING change_header =l_ecn_h object_bom_mat =l_bom_mat object_mat =l_mat *------commit work的flag要上,在後續的處理(change BOM,或change material...)時, *------若有要用到這張ECN改BOM或改revision才不會有問題 fl_commit_and_wait='X'
- IMPORTING
- change_no = TABLES
- effectivity = t_text =lt_ec_txt 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 INTO t_zelgh-msg. p_flag='X'. t_zelgh-ertyp='1'. t_zelgh-stat='E'. ENDIF. }}}