SAP 批量扩充会计和成本视图
?前幾天財務在給成本發布成本價格時,有很多物料都提示沒維護成本視圖,取不到標準價格(成品和半成品是標準價格,原材料是移動平均價格)
可以在表MARC-PSTAT 這個字段沒包含有“B” 的就表示沒擴充成本視圖,
因為物料比較多,一個一個的擴充不現實,就做了這個BDC 。
?
*&---------------------------------------------------------------------*
*&?Report??ZBDCMM01
*&
*&-------------------------------------------------------------------*--* EXCEL數據格式:物料編碼 / 行業領域 / 物料類型 / 工廠 / 基本單位 /
* 評估類 / 價格控制 / 價格單位 / 移動平均價或標準價格 / 用QS的成本估算 /
* 物料來源 / 差異碼 / 利潤中心
*&? 批量擴充物料主數據的會計和成本視圖
*&-------------------------------------------------------------------
REPORT??ZBDCMM01.
TABLES:?t100.
TABLES:??mara,marc,mvke,twewt,mbew.
*???????Batchinputdata?of?single?transaction
DATA:???bdcdata?LIKE?bdcdata????OCCURS?0?WITH?HEADER?LINE.
*???????messages?of?call?transaction
DATA:???messtab?LIKE?bdcmsgcoll?OCCURS?0?WITH?HEADER?LINE.
DATA:???messtabmsg?LIKE?bdcmsgcoll?OCCURS?0?WITH?HEADER?LINE.
*???????error?session?opened?('?'?or?'X')
DATA:???e_group_opened.
DATA:???smalllog?TYPE?checkbox.
DATA:???e_keep?TYPE?checkbox.
DATA:???interrcnt?TYPE?i.
DATA:???intokcnt?TYPE?i.
DATA:???intmdferrcnt?TYPE?i.
DATA:???intmdfokcnt?TYPE?i.
DATA:???intokcreate?TYPE?i.
DATA:???intexistssovw?TYPE?i.
DATA:???intextwg?TYPE?i.
DATA:BEGIN?OF?struitem,
???????matnr?LIKE?mara-matnr,
???????pstat?LIKE?mara-pstat,
?????END?OF?struitem.
DATA?infoitem?LIKE?struitem?.
DATA:?intpdm?TYPE?i.
DATA:BEGIN?OF?itemmsg,
???????matnr??LIKE?rmmg1-matnr,
???????remark(100)?TYPE?c,
?????END?OF?itemmsg.
DATA?itemerrs?LIKE?itemmsg?OCCURS?0?WITH?HEADER?LINE.
DATA:?BEGIN?OF?record?OCCURS?0,????"暫存上載的數據的內表
????????matnr?LIKE?rmmg1-matnr,??????"?物料編碼?
????????mbrsh?LIKE?rmmg1-mbrsh,??????"?行業領域?
????????mtart?LIKE?rmmg1-mtart,??????"?物料類型?
????????werks?LIKE?rmmg1-werks,??????"?工廠?
*????????lgort?LIKE?rmmg1-lgort,?????"?庫存地點
*????????vkorg?LIKE?rmmg1-vkorg,?????"?銷售組織
*????????vtweg?LIKE?rmmg1-vtweg,?????"?分銷渠道
*????????maktx?LIKE?makt-maktx,??????"?物料描述
????????meins?LIKE?mara-meins,??????"?基本單位
*????????matkl?LIKE?mara-matkl,??????"?物料組
*????????extwg?LIKE?mara-extwg,??????"?外部物料組
*????????spart?LIKE?mara-spart,??????"?產品組
*????????brgew(17)?TYPE?c,????????????????????????"like?MARA-BRGEW???毛重
*????????gewei?LIKE?mara-gewei,??????"?重量單位
*????????ntgew(17)?TYPE?c,?????????????????????????"LIKE?MARA-NTGEW????凈重
*????????ferth?LIKE?mara-ferth,??????"?品牌
*????????normt?LIKE?mara-normt,??????"?市場
*????????taxkm?LIKE?mg03steuer-taxkm,????????"?銷項稅-稅分類
*????????ktgrm?LIKE?mvke-ktgrm,??????????????"?科目設置組
*????????mtpos_mara??LIKE?mara-mtpos_mara,???"?普通項目類別組
*????????mtpos?LIKE?mvke-mtpos,??????????????"?項目類別組
*????????mtvfp_po?LIKE?marc-mtvfp,???????????"?可用性檢查
*????????tragr?LIKE?mara-tragr,??????????????"?運輸組
*????????ladgr?LIKE?marc-ladgr,??????????????"?裝載組
*????????ekgrp?LIKE?marc-ekgrp,??????????????"?采購組
*????????webaz(3)?TYPE?c,???????????????????"LIKE?MARC-WEBAZ?????收貨處理時間
*????????kordb?LIKE?marc-kordb,?????????"?源清單
*????????disgr?LIKE?marc-disgr,?????????"?MRP組
*????????maabc?LIKE?marc-maabc,?????????"?ABC?標識
*????????dismm?LIKE?marc-dismm,?????????"?MRP?類型
*????????dispo?LIKE?marc-dispo,?????????"?MRP?控制者
*????????disls?LIKE?marc-disls,?????????"?批量大小
*????????bstrf(17)?TYPE?c,???"LIKE?MARC-BSTRF??????舍入值
*????????beskz?LIKE?marc-beskz,??????????"?獲取類型
*????????lgpro?LIKE?marc-lgpro,??????????"?生產倉儲地點
*????????sobsl?LIKE?marc-sobsl,??????????"?特殊獲取類
*????????usequ?LIKE?marc-usequ,??????????"?配額安排
*????????rgekz?LIKE?marc-rgekz,??????????"?反沖
*????????lgfsb?LIKE?marc-lgfsb,??????????"?外部采購倉儲地點
*????????kzkup?LIKE?marc-kzkup,??????????"?聯產品
*????????schgt?LIKE?marc-schgt,??????????"?散裝料
*????????dzeit(3)?TYPE?c,???????????????"LIKE?MARC-DZEIT????自制生產
*????????plifz(3)?TYPE?c,???????????????"LIKE?MARC-PLIFZ????計劃交貨時間
*????????mrppp?LIKE?marc-mrppp,?????????"?計劃邊際碼
*????????fhori?LIKE?marc-fhori,?????????"?安全庫存
*????????eisbe(17)?TYPE?c,???????????????"LIKE?MARC-EISBE????供貨天數參數文件
*????????rwpro?LIKE?marc-rwpro,??????????"?安全時間標識
*????????shflg?LIKE?marc-shflg,??????????"?安全時間/作業覆蓋
*????????shzet(2)?TYPE?c,???????????????"LIKE?MARC-SHZET
*????????mtvfp_wo??LIKE?marc-mtvfp,??????"?可用性檢查
*????????altsl?LIKE?marc-altsl,??????????"?選擇方法
*????????sbdkz?LIKE?marc-sbdkz,??????????"?獨立/集中
*????????kausf(3)?TYPE?c?,???"???LIKE?MARC-KAUSF?,???部件廢品
*????????ahdis?LIKE?marc-ahdis,??????????"?MRP?相關需求
*????????kzaus?LIKE?marc-kzaus,??????????"?非連續標識
*????????ausdt(10)?TYPE?c,???????????????"LIKE?MARC-AUSDT???生效期
*????????nfmat?LIKE?marc-nfmat,??????????"?后繼的物料
*????????xchpf?LIKE?mara-xchpf,??????????"?批次管理需求
????????bklas?LIKE?mbew-bklas,??????????"?評估類
????????vprsv?LIKE?mbew-vprsv,??????????"?價格控制
????????peinh(6)?TYPE?c,???????????????"LIKE?MBEW-PEINH??????價格單位
????????stprs(13)?TYPE?c,???????????????"LIKE?MBEW-STPRS?????移動平均價/標準價格
????????ekalr?LIKE?mbew-ekalr,??????????"?用QS的成本估算
????????hkmat?LIKE?mbew-hkmat,??????????"?物料來源
????????awsls?LIKE?marc-awsls,??????????"?差異碼
????????prctr?LIKE?marc-prctr,??????????"?利潤中心
??????END??OF?record.
*&------------------------------------------------------------------*
*&?SELECT-OPTIONS
*&------------------------------------------------------------------*
SELECTION-SCREEN?BEGIN?OF?BLOCK?block1?WITH?FRAME.
******?N?>?A
PARAMETERS?ctumode?LIKE?ctu_params-dismode?DEFAULT?'N'.
*??PARAMETERS?CTUMODE?LIKE?CTU_PARAMS-DISMODE?DEFAULT?'P'.
PARAMETERS?cupdate?LIKE?ctu_params-updmode?DEFAULT?'L'??NO-DISPLAY.
PARAMETERS?e_group(12)??NO-DISPLAY.?????????????"group?name?of?error-session
PARAMETERS:?e_user(12)?DEFAULT?sy-uname.????"user?for?error-session
*??PARAMETERS:?E_KEEP?AS?CHECKBOX.?????"'?'?=?delete?session?if?finished
"'X'?=?keep???session?if?finished
PARAMETERS:?e_hdate?LIKE?sy-datum???NO-DISPLAY.
SELECTION-SCREEN?SKIP.
PARAMETERS:?nodata?DEFAULT?'?'?LOWER?CASE?NO-DISPLAY.??????????"nodata
*??PARAMETERS:?SMALLLOG?AS?CHECKBOX??DEFAULT?'?'?.??"'?'?=?log?all?transactions
"'X'?=?no?transaction?logging
PARAMETERS:?filename(132)?LOWER?CASE?DEFAULT
??????????????????????????????'D:\data.xls'.
SELECTION-SCREEN?SKIP.
SELECTION-SCREEN?SKIP.
PARAMETERS:?filemsgs(132)?LOWER?CASE?DEFAULT
??????????????????????????????'D:\Msgs.xls'.
PARAMETERS:?fileserr(132)?LOWER?CASE?DEFAULT
??????????????????????????????'D:\MsgsErr.xls'.
SELECTION-SCREEN?END?OF?BLOCK?block1.
*&------------------------------------------------------------------*
*&?AT?SELECTION-SCREEN?ON?VALUE-REQUEST?FOR
*&------------------------------------------------------------------*
AT?SELECTION-SCREEN?ON?VALUE-REQUEST?FOR?filename?.
??CALL?FUNCTION?'WS_FILENAME_GET'
????EXPORTING
*?????DEF_FILENAME?????=?'c:\test.xls'?"default?selected?file
??????def_path?????????=?'d:'????????????????"Default?path
*?????MASK?????????????=?',*.txt,*.txt.'
??????mask?????????????=?',*.xls,*.xls.'
??????mode?????????????=?'0'
??????title????????????=?'Select?a?file?to?open'
????IMPORTING
??????filename?????????=?filename
*?????RC???????????????=
????EXCEPTIONS
??????inv_winsys???????=?1
??????no_batch?????????=?2
??????selection_cancel?=?3
??????selection_error??=?4
??????OTHERS???????????=?5.
AT?SELECTION-SCREEN?ON?VALUE-REQUEST?FOR?filemsgs?.
??CALL?FUNCTION?'WS_FILENAME_GET'
????EXPORTING
*?????DEF_FILENAME?????=?'c:\test.xls'?"default?selected?file
??????def_path?????????=?'d:'????????????????"Default?path
*?????MASK?????????????=?',*.txt,*.txt.'
??????mask?????????????=?',*.xls,*.xls.'
??????mode?????????????=?'0'
??????title????????????=?'Select?a?file?to?open'
????IMPORTING
??????filename?????????=?filemsgs
*?????RC???????????????=
????EXCEPTIONS
??????inv_winsys???????=?1
??????no_batch?????????=?2
??????selection_cancel?=?3
??????selection_error??=?4
??????OTHERS???????????=?5.
AT?SELECTION-SCREEN?ON?VALUE-REQUEST?FOR?fileserr?.
??CALL?FUNCTION?'WS_FILENAME_GET'
????EXPORTING
*?????DEF_FILENAME?????=?'c:\test.xls'?"default?selected?file
??????def_path?????????=?'d:'????????????????"Default?path
*?????MASK?????????????=?',*.txt,*.txt.'
??????mask?????????????=?',*.xls,*.xls.'
??????mode?????????????=?'0'
??????title????????????=?'Select?a?file?to?open'
????IMPORTING
??????filename?????????=?fileserr
*?????RC???????????????=
????EXCEPTIONS
??????inv_winsys???????=?1
??????no_batch?????????=?2
??????selection_cancel?=?3
??????selection_error??=?4
??????OTHERS???????????=?5.
*&------------------------------------------------------------------*
START-OF-SELECTION.
*PERFORM?SUB_READ_FILE.
??interrcnt?=?0.
??intokcnt?=?0.
??intmdferrcnt?=?0.
??intmdfokcnt?=?0.
??PERFORM?sub_read_file.
??LOOP?AT?record.
????TRANSLATE?record-matnr?TO?UPPER?CASE.
????intokcreate?=?0.
????CLEAR?infoitem.
????CLEAR:mara,marc,mvke,twewt.
????SELECT?SINGLE?*
?????FROM?mara
?????WHERE?matnr?=??record-matnr.
??????IF?SY-SUBRC?=?0.
????????record-MTART?=?mara-MTART.
????????MODIFY?record.
????????ENDIF.
????SELECT?SINGLE?*
?????FROM?marc
?????WHERE?matnr?=??record-matnr
???????AND?werks?=?record-werks.
????"intPdm?=?0?-----?新建
????"intPdm?=?1?-----?有基本視圖、有存儲視圖?,狀態為?L
????"intPdm?=?2?-----?有基本視圖、有存儲視圖、銷售視圖?,?狀態為LV
????intpdm?=?9."初始為9?,什么都不做。
???intpdm?=?1.
????IF?record-werks?<>?'KAS1'.
??????intpdm?=?9.
????ENDIF.
????IF?mara-mtart?IS?INITIAL.
??????mara-mtart?=?record-mtart.
????ENDIF.
????IF?mara-mtart?=?'ZROH'.
????????PERFORM?mm01_sta_l_sel.
????????PERFORM?mm01_sta_l_zroh.
????ELSEIF?mara-mtart?=?'ZHLB'.
????????PERFORM?mm01_sta_l_sel.
????????PERFORM?mm01_sta_l_zroh.
*????????PERFORM?mm01_sta_l_zhlb.
????ELSEIF?mara-mtart?=?'ZFRT'.
*??????intpdm?=?3.
????????PERFORM?mm01_sta_l_sel.
????????PERFORM?mm01_sta_l_zroh.
*????????PERFORM?mm01_sta_l_zfrt.
????ELSEIF?mara-mtart?=?'ZNBW'.
????ENDIF.
??ENDLOOP.
??PERFORM?close_group.
??PERFORM?exp2excel.
*&---------------------------------------------------------------------*
*&??????Form??MM01_STA_L_SEL
*&---------------------------------------------------------------------*
*???????text
*----------------------------------------------------------------------*
FORM?mm01_sta_l_sel.
??PERFORM?bdc_dynpro??????USING?'SAPLMGMM'?'0060'.
??PERFORM?bdc_field???????USING?'BDC_CURSOR'
????????????????????????????????'RMMG1-MATNR'.
??PERFORM?bdc_field???????USING?'BDC_OKCODE'
????????????????????????????????'=ENTR'.
??PERFORM?bdc_field???????USING?'RMMG1-MATNR'
?????????????????????????????????record-matnr.
??PERFORM?bdc_field???????USING?'RMMG1-MBRSH'
?????????????????????????????????record-mbrsh.
??PERFORM?bdc_field???????USING?'RMMG1-MTART'
?????????????????????????????????record-mtart.
??PERFORM?bdc_dynpro??????USING?'SAPLMGMM'?'0070'.
??PERFORM?bdc_field???????USING?'BDC_CURSOR'
????????????????????????????????'MSICHTAUSW-DYTXT(03)'.
??PERFORM?bdc_field???????USING?'BDC_OKCODE'
????????????????????????????????'=P+'.
??PERFORM?bdc_field???????USING?'BDC_OKCODE'
????????????????????????????????'=ENTR'.
??PERFORM?bdc_field???????USING?'MSICHTAUSW-KZSEL(08)'????"--?選擇采購視圖
???????????????????????????????'X'.
??PERFORM?bdc_dynpro??????USING?'SAPLMGMM'?'0080'.
*??PERFORM?bdc_field???????USING?'BDC_CURSOR'
*????????????????????????????????'RMMG1-VTWEG'.
??PERFORM?bdc_field???????USING?'BDC_OKCODE'
????????????????????????????????'=ENTR'.
??PERFORM?bdc_field???????USING?'RMMG1-WERKS'
?????????????????????????????????record-werks.
ENDFORM.????????????????????"MM01_STA_L_SEL
*&---------------------------------------------------------------------*
*&??????Form??MM01_STA_L_ZROH
*&---------------------------------------------------------------------*
*???????text??導入原材料
*----------------------------------------------------------------------*
FORM?mm01_sta_l_zroh.
??PERFORM?bdc_dynpro??????USING?'SAPLMGMM'?'4000'.
??PERFORM?bdc_field???????USING?'BDC_OKCODE'
????????????????????????????????????'=SP24'.
??PERFORM?bdc_dynpro??????USING?'SAPLMGMM'?'4000'.
??PERFORM?bdc_field???????USING?'BDC_OKCODE'
????????????????????????????????'=SP25'.
??PERFORM?bdc_field???????USING?'BDC_CURSOR'
????????????????????????????????'MBEW-STPRS'.
??PERFORM?bdc_field???????USING?'MBEW-BKLAS'
????????????????????????????????record-bklas.
??PERFORM?bdc_field???????USING?'MBEW-VPRSV'
????????????????????????????????record-vprsv.
??PERFORM?bdc_field???????USING?'MBEW-PEINH'
????????????????????????????????record-peinh.
??IF?record-vprsv?=?'S'.
????PERFORM?bdc_field???????USING?'MBEW-STPRS'
??????????????????????????????????record-stprs.
??ELSEIF?record-vprsv?=?'V'.
????PERFORM?bdc_field???????USING?'MBEW-VERPR'
??????????????????????????????????record-stprs.
????PERFORM?bdc_field???????USING?'MBEW-STPRS'
??????????????????????????????????record-stprs.
??ENDIF.
??PERFORM?bdc_dynpro??????USING?'SAPLMGMM'?'4000'.
??PERFORM?bdc_field???????USING?'BDC_OKCODE'
????????????????????????????????'=SP26'.
??PERFORM?bdc_dynpro??????USING?'SAPLMGMM'?'4000'.
??PERFORM?bdc_field???????USING?'BDC_OKCODE'
????????????????????????????????'=SP27'.
??PERFORM?bdc_field???????USING?'BDC_CURSOR'
????????????????????????????????'MARC-PRCTR'.
??PERFORM?bdc_field???????USING?'MBEW-EKALR'
????????????????????????????????record-ekalr.
??PERFORM?bdc_field???????USING?'MBEW-HKMAT'
????????????????????????????????record-hkmat.
??PERFORM?bdc_field???????USING?'MARC-PRCTR'
????????????????????????????????record-prctr.
??PERFORM?bdc_dynpro??????USING?'SAPLMGMM'?'4000'.
??PERFORM?bdc_field???????USING?'BDC_OKCODE'
????????????????????????????????'=BU'.
??PERFORM?bdc_transaction?USING?'MM01'.
ENDFORM.????????????????????"MM01_STA_L_ZROH
*&---------------------------------------------------------------------*
*&??????Form??SUB_READ_FILE
*&---------------------------------------------------------------------*
*???????text
*----------------------------------------------------------------------*
FORM?sub_read_file.
??DATA:?filename1?LIKE?rlgrap-filename.
??filename1?=?filename.
??TYPE-POOLS:truxs.
??DATA:l_raw_data?TYPE?truxs_t_text_data.
??CALL?FUNCTION?'TEXT_CONVERT_XLS_TO_SAP'
????EXPORTING
*???I_FIELD_SEPERATOR??????????=
*???I_LINE_HEADER??????????????=
??????i_tab_raw_data?????????????=?l_raw_data
??????i_filename?????????????????=?filename1
????TABLES
??????i_tab_converted_data???????=?record
*?EXCEPTIONS
*???CONVERSION_FAILED??????????=?1
*???OTHERS?????????????????????=?2
????????????.
??IF?sy-subrc?<>?0.
????MESSAGE?e398(00)?WITH?'數據在導入內表時出錯!'.
??ENDIF.
ENDFORM.????????????????????"?SUB_READ_FILE
*&---------------------------------------------------------------------*
*&??????Form??Exp2Excel
*&---------------------------------------------------------------------*
*???????text
*----------------------------------------------------------------------*
FORM?exp2excel.
??DATA:?filemsgs1?LIKE?rlgrap-filename.
??filemsgs1?=?filemsgs.
??DATA:?filemsgs2?LIKE?rlgrap-filename.
??filemsgs2?=?fileserr.
??WRITE:?/?'創建完成筆數:'?,?intokcnt.
??WRITE:?/?'創建失敗筆數:'?,?interrcnt.
??WRITE:?/?'更改完成筆數:'?,?intmdfokcnt.
??WRITE:?/?'更改失敗筆數:'?,?intmdferrcnt.
??CALL?FUNCTION?'SAP_CONVERT_TO_XLS_FORMAT'
????EXPORTING
*?????I_FIELD_SEPERATOR?=
*?????I_LINE_HEADER?????=
??????i_filename????????=?filemsgs1
*?????I_APPL_KEEP???????=?'?'
????TABLES
??????i_tab_sap_data????=?itemerrs.
*?CHANGING
*???I_TAB_CONVERTED_DATA???????=
*?EXCEPTIONS
*???CONVERSION_FAILED??????????=?1
*???OTHERS?????????????????????=?2
??.
??IF?sy-subrc?<>?0.
????MESSAGE?e398(00)?WITH?'數據在導出Excel時出錯!'.
??ENDIF.
??CALL?FUNCTION?'SAP_CONVERT_TO_XLS_FORMAT'
????EXPORTING
*?????I_FIELD_SEPERATOR?=
*?????I_LINE_HEADER?????=
??????i_filename????????=?filemsgs2
*?????I_APPL_KEEP???????=?'?'
????TABLES
??????i_tab_sap_data????=?messtabmsg.
*?CHANGING
*???I_TAB_CONVERTED_DATA???????=
*?EXCEPTIONS
*???CONVERSION_FAILED??????????=?1
*???OTHERS?????????????????????=?2
??.
??IF?sy-subrc?<>?0.
????MESSAGE?e398(00)?WITH?'數據在導出Excel時出錯!'.
??ENDIF.
ENDFORM.????????????????????"?SUB_READ_FILE
*&---------------------------------------------------------------------*
*&??????Form??BDC_TRANSACTION
*&---------------------------------------------------------------------*
*----------------------------------------------------------------------*
*????????Start?new?transaction?according?to?parameters?????????????????*
*----------------------------------------------------------------------*
FORM?bdc_transaction?USING?tcode.
??DATA:?l_mstring(480).
??DATA:?l_subrc?LIKE?sy-subrc.
*?call?transaction?using
??REFRESH?messtab.
??CALL?TRANSACTION?tcode?USING?bdcdata
???????????????????MODE???ctumode
???????????????????UPDATE?cupdate
???????????????????MESSAGES?INTO?messtab.
**CALL?FUNCTION?'SAP_CONVERT_TO_XLS_FORMAT'
**??EXPORTING
***???I_FIELD_SEPERATOR??????????=
***???I_LINE_HEADER??????????????=
**????I_FILENAME?????????????????=?'c:\ygytest.xls'
***???I_APPL_KEEP????????????????=?'?'
**??TABLES
**????I_TAB_SAP_DATA?????????????=?MESSTAB
***?CHANGING
***???I_TAB_CONVERTED_DATA???????=
***?EXCEPTIONS
***???CONVERSION_FAILED??????????=?1
***???OTHERS?????????????????????=?2
??.
??"itemerrs-matnr?=?record-matnr.
??IF?sy-subrc?<>?0.
*?Implement?suitable?error?handling?here
????"REFRESH?ItemErrs.
????IF?tcode?=?'MM01'.
??????itemerrs-remark?=?'創建失敗'.
??????interrcnt?=?interrcnt?+?1.
????ELSEIF?tcode?=?'MM02'.
??????itemerrs-remark?=?'更改失敗'.
??????intmdferrcnt?=?intmdferrcnt?+?1.
????ENDIF.
*??WRITE:?/?'E:'?,?RECORD-MATNR?,?'創建失敗'.
????APPEND?LINES?OF?messtab?TO?messtabmsg.
??ELSE.
????"WRITE:?/?'S:'?,?RECORD-MATNR.
????IF?tcode?=?'MM01'.
??????itemerrs-remark?=?'創建完成'.
??????intokcnt?=?intokcnt?+?1.
??????intokcreate?=?1.
????ELSEIF?tcode?=?'MM02'.
??????itemerrs-remark?=?'更改完成'.
??????intmdfokcnt?=?intmdfokcnt?+?1.
????ENDIF.
??ENDIF.
??itemerrs-matnr?=?record-matnr.
??APPEND?itemerrs.
??l_subrc?=?sy-subrc.
**?Erzeugen?fehlermappe?************************************************
??IF?l_subrc?<>?0?AND?e_group?<>?space.
????IF?e_group_opened?=?'?'.
??????CALL?FUNCTION?'BDC_OPEN_GROUP'
????????EXPORTING
??????????client???=?sy-mandt
??????????group????=?e_group
??????????user?????=?e_user
??????????keep?????=?e_keep
??????????holddate?=?e_hdate.
??????e_group_opened?=?'X'.
????ENDIF.
????CALL?FUNCTION?'BDC_INSERT'
??????EXPORTING
????????tcode?????=?tcode
??????TABLES
????????dynprotab?=?bdcdata.
??ENDIF.
??REFRESH?bdcdata.
ENDFORM.????????????????????"?BDC_TRANSACTION
*----------------------------------------------------------------------*
*????????Start?new?screen??????????????????????????????????????????????*
*----------------------------------------------------------------------*
FORM?bdc_dynpro?USING?program?dynpro.
??CLEAR?bdcdata.
??bdcdata-program??=?program.
??bdcdata-dynpro???=?dynpro.
??bdcdata-dynbegin?=?'X'.
??APPEND?bdcdata.
ENDFORM.????????????????????"BDC_DYNPRO
*----------------------------------------------------------------------*
*????????Insert?field??????????????????????????????????????????????????*
*----------------------------------------------------------------------*
FORM?bdc_field?USING?fnam?fval.
??IF?fval?<>?nodata.
????CLEAR?bdcdata.
????bdcdata-fnam?=?fnam.
????bdcdata-fval?=?fval.
????APPEND?bdcdata.
??ENDIF.
ENDFORM.????????????????????"BDC_FIELD
*&---------------------------------------------------------------------*
*&??????Form??CLOSE_GROUP
*&---------------------------------------------------------------------*
FORM?close_group.
??IF?e_group_opened?=?'X'.
????CALL?FUNCTION?'BDC_CLOSE_GROUP'.
????WRITE:?/.
????WRITE:?/(30)?'Fehlermappe?wurde?erzeugt'(i06).
??ENDIF.
ENDFORM.????????????????????"?CLOSE_GROUP
總結
以上是生活随笔為你收集整理的SAP 批量扩充会计和成本视图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 项目中涉及到的BAPI
- 下一篇: SAP中差异的一些概念