




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
總體信 TS_ZPVCOI003_V1.0物料 FS_ZNACOIP003_V1.0物料 作者: 最后修改日期 開發(fā)對象類型 報 負責該技術說明書顧問 文檔修改歷2010-6-未解決Issue一、接口簡單說1CATSBOMCATSBOMCATSBOMSAPCATSE/IPC-CONVERTION,SAPSAP23456無78二、輸入頁指定接口文件路三、輸出頁接口程序執(zhí)行完成后會有報告生四、數(shù)據(jù)源說BOM物BOMBOMBOM五、程序流程主程序開程序主程序開程序結(jié)解析數(shù)據(jù)內(nèi)數(shù)據(jù)校獲取上載數(shù)六、程序規(guī)1、獲取上載數(shù)據(jù)文件frm_get_data2、解析數(shù)據(jù)內(nèi)容3、對每個文件進行處理:frm_transact_file3、1BOM數(shù)據(jù)整理frm_collect_data3、2數(shù)據(jù)校驗:frm_data_check4、BOM主物料組件信息:frm_read_bomhead4、1frm_create_changeno5、15、3將文件從Inbound移到backup :frm_inputback_file5、4程序日志尾:frm_log_end5、5寫程序日志:frm_write_log5、6七、虛擬代碼(Virtual*PROGRAMID/NAME: DATEWRITTEN:AUTHOR'S LASTUPDATE:PROGRAM 物料導PROJECT VERSION: INCLUDE: CALLS:(RFCAND CHANGE REPORTzpvcoi003MESSAGE-IDzpvin01"程序中會用到messageclassNOSTANDARDPAGEHEADING LINE-SIZE193 LINE-COUNT INCLUDE: INCLUDEzpvca000form.INCLUDEzibdc_form. CALLS:(RFCAND TABLES: INTERNALTABLES BEGINOFgt_contentfilename(130)TYPEmatnr(18)TYPEwerks(4)TYPEdatuv(8)TYPEstlal(2)TYPEstlan(1)TYPEbmeng(13)TYPEidnrk(18)TYPEmengeLIKEstpo-meins(3)TYPEpostp(1)TYPElgort(4)TYPEENDOFBEGINOFgt_bomheadmatnr(18)TYPEwerks(4)TYPEdatuv(8)TYPEstlal(2)TYPEstlan(1)TYPEbmeng(13)TYPEENDOFgs_mastTYPEbapibommst,gs_stzuTYPEgt_stkoLIKEbapibomstkOCCURS0WITHHEADERLINE,gt_stpoLIKEbapibomstpOCCURS0WITHHEADERLINE,gt_stasLIKEbapibomstaOCCURS0WITHHEADERBEGINOFgt_errcontentOCCURSmatnr(18)TYPE werks(4)TYPE datuv(8)TYPE stlal(2)TYPE stlan(1)TYPE bmeng(13)TYPE idnrk(18)TYPE menge(13)TYPE meins(3)TYPE postp(1)TYPE lgort(4)TYPEc, ENDOFgt_errcontent.DATA:BEGINOFgt_werksOCCURSwerksLIKEt001w-werks,ENDOFgt_werks.DATA:BEGINOFgt_marcOCCURSmatnrLIKEmarc-matnr,werksLIKEmarc-ENDOFDATA:BEGINOFgt_lgortOCCURSwerksLIKEt001w-werks,lgortLIKEt001l-ENDOFDATA:BEGINOFgt_bomOCCURSmatnrLIKEmast-matnr,stlalLIKEmast-stlal,stlanLIKEmast-stlan,werksLIKEmast-werks,idnrkLIKEstpo-ENDOFDATA:BEGINOFgt_werks_vOCCURS0,werksLIKEt001w-werks,ENDOFDATA:BEGINOFgt_marc_vOCCURS0,matnrLIKEmarc-matnr,werksLIKEmarc-werks,lvormLIKEmara-lvorm,ENDOFDATA:BEGINOFgt_lgort_vOCCURS0,werksLIKEt001w-werks,lgortLIKEt001l-lgort,ENDOFDATA:BEGINOFgt_bom_vOCCURSmatnrLIKEmast-matnr,stlalLIKEmast-stlal,stlanLIKEmast-stlan,werksLIKEmast-werks,idnrkLIKEstpo-idnrk,posnrLIKEstpo-ENDOFGLOBALVARIANT g_failedTYPEiVALUE0,g_succeedTYPEiVALUEg_changenoTYPEbapibomstz-DATA:gt_f_listLIKEzpv_t_bflocalOCCURS0WITHHEADERLINE,gt_s_listLIKEzpv_t_bflocalOCCURS0WITHHEADERLINE,gt_zpv_t_bombflocLIKEzpv_t_bombflocOCCURS0WITHHEADER c_file(6)TYPEcVALUEc_menge(8)TYPEcVALUE'組件數(shù)量',c_matnr(10)TYPEcVALUE'主物料編號',c_werks(8)TYPEcVALUE'工廠代碼',c_datuv(11)TYPEcVALUE'BOM有效日期',c_stlal(11)TYPEcVALUE'可選BOM編號',c_stlan(7)TYPEcVALUE'BOM用途',c_bmeng(8)TYPEcVALUE'基準數(shù)量',c_idnrk(12)TYPEcVALUE'組件物料編號',c_postp(8)TYPEcVALUE'項目類別',c_lgort(8)TYPEcVALUE'庫存地點',c_log(18TYPEcVALUECO03的運行日志',c_msgtype(8)TYPEcVALUE'消息類型',c_rundate(8)TYPEcVALUE'運行日期',c_runtime(8)TYPEcVALUE'運行時間',c_programm(8)TYPEcVALUE'程序名稱',c_msgdesp(8)TYPEcVALUE'消息描述',c_item_catLIKEstpo-postpVALUE'L',c_config_desp(50TYPEcVALUEBOM組件日志',c_deldeps(50)TYPEcVALUE'(刪除子件',c_adddeps(50)TYPEcVALUEATSELECTION- SELECTION-SCREEN:BEGINOFBLOCKb1WITHFRAME.PARAMETERS:p_fname(128)TYPEcDEFAULTc_file*parameters:p_configascheckboxdefault'X'. 新BOM主數(shù),addbylxhSELECTION-SCREEN:ENDOFBLOCKPERFORM MOVEp_fnameTOg_filename."接口對應的文件名的前輟PERFORMfrm_get_data. PERFORMfrm_resolve_data. PERFORM END-OF-PERFORMPERFORMPERFORM Form *&功能說明:對程序中用到的全局變量進行初始 *&參數(shù)說明 FORMREFRESH REFRESHgt_input_content."接口文件保存數(shù)據(jù)的內(nèi)REFRESH CLEAR CLEAR "成功計CLEAR "失敗計REFRESHgt_content."接口數(shù)據(jù)refreshgt_errcontent."出錯數(shù)據(jù)CLEARg_changeno.LOOPATSCREEN.IFscreen-name='P_FNAME'.screen-input=''.MODIFY Form *&功能說明:生成批量導入BOM的更改編 *&參數(shù)說明 FORMl_subrcLIKEsy-subrc,l_changenameTYPErc29a-aennr,l_changeno_despLIKEzpv_s_lgcont-desp.CLEARg_changeno.CLEAR CLEARl_changename."notebyjet.zengCLEARl_changeno_desp.READTABLEgt_input_contentINDEX1.g_changeno=gt_bomhead-datuv.CONCATENATE'PV'g_changenoINTOSELECTSINGLEaennrINTOg_changenoFROMaenrWHEREaennrEQg_changeno.IFsy-subrcNECONCATENATEgt_bomhead-datuv'PV整車BOM修'INTOPERFORMfrm_populate_bdc_tabUSING:'X''SAPMC29C''0100','''RC29A-AENNR'g_changeno,'''BDC_OKCODE''/00','X''SAPMC29C''''RC29A-AETXT'l_changeno_desp,'''RC29A-DATUV'gt_bomhead-datuv,'''RC29A-AENST''01','''BDC_OKCODE''X''SAPMC29C''''RC29A-AEERL(01)''''BDC_OKCODE'PERFORMfrm_trans_testUSING'CC01'CHANGINGIFl_subrcNE0. Form *&功能說明:解析gt_input_content中的內(nèi)容到gt_content內(nèi)表 *&參數(shù)說明 FORMDATA:l_menge(13)TYPEc,l_numberTYPEc,l_c_despLIKEzpv_s_lgcont-desp,l_despLIKEzpv_s_lgcont-desp.REFRESHREFRESHREFRESHREFRESHREFRESHLOOPATgt_content-filename=gt_input_content-name."保存文件名,不能刪除gt_content-matnr=gt_input_content-value+0(18).gt_content-werks=gt_input_content-value+18(4).gt_content-datuv=gt_input_content-value+22(8).gt_content-stlal=gt_input_content-value+30(2).gt_content-stlan=gt_input_content-value+32(1).gt_content-bmeng=gt_input_content-value+33(13).gt_content-idnrk=gt_input_content-value+46(18).CALLFUNCTION'Z_PV_DEC_CHECK'p_str_in=gt_input_content-value+64(13)p_result=IFl_numberEQ'N'.gt_content-menge=0.gt_content-menge=gt_input_content-gt_content-meins=gt_input_content-value+77(3).gt_content-postp=gt_input_content-value+80(1).gt_content-lgort=gt_input_content-TRANSLATEgt_content-matnrTOUPPERCASE.TRANSLATEgt_content-stlalTOUPPERCASE.TRANSLATEgt_content-idnrkTOUPPERCASE.TRANSLATEgt_content-meinsTOUPPERCASE.TRANSLATEgt_content-postpTOUPPERCASE.CALLFUNCTION'CONVERSION_EXIT_MATN1_INPUT'input=gt_content-matnroutput=gt_content-gt_werks-werks=gt_content-werks.APPENDgt_werks.gt_marc-matnr=gt_content-CALLFUNCTION'CONVERSION_EXIT_MATN1_INPUT'input=gt_marc-matnroutput=gt_marc-matnr.gt_marc-werks=gt_content-werks.APPENDgt_marc.gt_marc-matnr=gt_content-CALLFUNCTION'CONVERSION_EXIT_MATN1_INPUT'input=gt_marc-matnroutput=gt_marc-gt_marc-werks=gt_content-werks.APPENDgt_marc.gt_lgort-werks=gt_content-werks.gt_lgort-lgort=gt_content-lgort.APPENDgt_lgort.gt_bom-matnr=gt_content-matnr.gt_bom-werks=gt_content-werks.gt_bom-stlal=gt_content-stlal.gt_bom-stlan=gt_content-stlan.gt_bom-idnrk=gt_content-idnrk.APPENDgt_bom.COLLECTCLEARgt_file_name-filename=gt_input_content-name.COLLECTgt_file_name."存放所有文件的文件名CLEARgt_file_name.SORTgt_marcBYmatnrDELETEADJACENTDUPLICATESFROMSORTgt_lgortBYwerksDELETEADJACENTDUPLICATESFROMREFRESHIFNOTgt_werks[]ISINITIAL.SELECTwerksINTOTABLEgt_werks_vFROMt001wFORALLENTRIESINgt_werksWHEREwerks=gt_werks-werks.REFRESHIFNOTgt_marc[]ISSELECTINTOTABLEgt_marc_vFROMmarcFORALLENTRIESINgt_marcWHEREmatnr=gt_marc-ANDwerks=gt_marc-REFRESHIFNOTgt_lgort[]ISINITIAL.SELECTwerkslgortINTOTABLEgt_lgort_vFROMt001lFORALLENTRIESINgt_lgortWHERElgort=gt_lgort-ANDwerks=gt_lgort- Form *&功能說明:業(yè)務處理,需要重點處 *&參數(shù)說明 FORMl_desp(255)TYPEc,l_subrcLIKEsy-subrc.l_totalTYPEi.SORTgt_file_name.LOOPATgt_file_name.REFRESHgt_errcontent. MOVE:'0'TOg_succeed.MOVE:'0'TOPERFORMfrm_log_headUSINGgt_file_name-filename.PERFORMfrm_collect_data."BOM數(shù)據(jù)整理PERFORM PERFORMfrm_read_bomhead."BOM主物料組件信息l_total=g_failed+g_succeed.PERFORMfrm_statisticUSINGgt_file_name-filenamel_totalg_succeedg_failed.PERFORMfrm_write_err_fileUSINGgt_file_name-filename.PERFORMfrm_inputback_fileUSINGgt_file_name-filenameCHANGINGl_subrc."將文件從CLEARgt_file_name.REFRESHgt_file_name. " Form *&功能說明:業(yè)務數(shù)據(jù)校 *&參數(shù)說明 FORMDATA:l_menge(13)TYPEc,l_retTYPEc,l_numberTYPEc,l_idnrkLIKEmarc-matnr,l_matklLIKEmara- vLIKEzpv_t_coi0032-al l_flagTYPEc,l_c_despLIKEzpv_s_lgcont-desp,lw_coi0032TYPEzpv_t_coi0032,l_despLIKEzpv_s_lgcont-desp.BEGINOFlt_coi0032OCCURSINCLUDESTRUCTURE countTYPEDATAENDOFSORTgt_bomheadBYmatnrwerksdatuvstlal.LOOPATgt_bomhead. READTABLEgt_werks_vWITHKEYwerks=gt_bomhead-werks.IFsy-subrcNEPERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_bomhead-datuvgt_bomhead-werksgt_bomhead-matnrgt_bomhead-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'123'l_c_despc_werksgt_bomhead-werks''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_data_check'l_desp.PERFORMfrm_move_errdata. **************BO**********************************READTABLEgt_marc_vWITHKEYmatnr=gt_bomhead-matnrwerks=gt_bomhead-werkslvorm=''.IFsy-subrcNEPERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_bomhead-datuvgt_bomhead-werksgt_bomhead-matnrgt_bomhead-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'123'l_c_despc_matnrgt_bomhead-matnr''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_data_check'l_desp.PERFORMfrm_move_errdata.**************EO**************BOBOM有效日期校驗*********************************PERFORMfrm_date_checkUSINGgt_bomhead-datuvCHANGINGl_ret.IFl_retEQ'N'.PERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_bomhead-datuvgt_bomhead-werksgt_bomhead-matnrgt_bomhead-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'122'l_c_despc_datuvgt_bomhead-datuv''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_data_check'l_desp.PERFORMfrm_move_errdata.**************EOBOM有效日期校驗**************BOBOM編號校驗*********************************IFgt_bomhead-stlalEQspace.PERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_bomhead-datuvgt_bomhead-werksgt_bomhead-matnrgt_bomhead-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'122'l_c_despc_stlalgt_bomhead-stlal''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_data_check'l_desp.PERFORMfrm_move_errdata.**************EOBOM編號校驗 CONDENSEgt_bomhead-stlanNO-GAPS.IFgt_bomhead-stlanNEPERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_bomhead-datuvgt_bomhead-werksgt_bomhead-matnrgt_bomhead-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'127'l_c_despc_stlangt_bomhead-stlan''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_data_check'l_desp.PERFORMfrm_move_errdata. **************BO基準數(shù)量校驗***********************************CONDENSEgt_bomhead-bmengNO-GAPS.CALLFUNCTION'CONVERSION_EXIT_ALPHA_OUTPUT'input=gt_bomhead-bmengoutput=gt_bomhead-IFgt_bomhead-bmengNEPERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_bomhead-datuvgt_bomhead-werksgt_bomhead-matnrgt_bomhead-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'127'l_c_despc_bmenggt_bomhead-bmeng''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_data_check'l_desp.PERFORMfrm_move_errdata.**************EO基準數(shù)量校驗***********************************CLEARl_matkl.CLEARlt_coi0032.REFRESHlt_coi0032.LOOPATgt_contentWHEREmatnrEQgt_bomhead-matnrANDwerksEQgt_bomhead-werksANDdatuvEQgt_bomhead-datuvANDstlalEQgt_bomhead-stlal.**************BO組件物料編號校驗***BOmodifybyjiangjg ZNAcallfunctioninput=gt_content-output=***EOmodifybyjiangjg ZNAREADTABLEgt_marc_vWITHKEY matnr=l_idnrk *****modifybyjiangjgZNA轉(zhuǎn)換函數(shù)更新****matnr=gt_content-idnrkwerks=gt_content-werkslvorm=''.IFsy-subrcNEPERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_bomhead-datuvgt_bomhead-werksgt_bomhead-matnrgt_bomhead-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'123'l_c_despc_idnrkgt_content-idnrk''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_data_check'l_desp.PERFORMfrm_move_errdata.**************EO組件物料編號校驗 SELECTSINGLEmatklINTOl_matklFROMmaraWHEREmatnrEQgt_bomhead-matnr.IFsy-subrcEQ0.SELECTSINGLEmatklmatnral vINTO(lt_coi0032-matkl,lt_coi0032- FROMWHEREmatklEQl_matklANDmatnrEQgt_bomhead-matnrANDidnrkEQl_idnrk.IFsy-subrcEQ0.lt_coi0032-count=1.COLLECTlt_coi0032.SELECTSINGLEmatklmatnral vINTO(lt_coi0032-matkl,lt_coi0032- FROMWHEREmatklEQl_matklANDidnrkEQl_idnrk.IFsy-subrcEQ0.lt_coi0032-count=1.COLLECTlt_coi0032.CLEAR v=lt_coi0032- CLEARLOOPATlt_coi0032WHEREmatklEQl_matklANDmatnrEQgt_bomhead-matnrANDal EQl_al vANDcountGT1.DELETEgt_contentWHEREmatnrEQgt_bomhead-matnrANDwerksEQgt_bomhead-werksANDdatuvEQgt_bomhead-datuvANDstlalEQgt_bomhead-stlalANDidnrkEQl_flag='X'.IFl_flagEQ **************BO&重置*******************************l_menge=gt_content-menge.CONDENSEl_mengeNO-GAPS.CALLFUNCTION'Z_PV_DEC_CHECK'p_str_in=l_mengep_result=IFl_numberEQPERFORMPERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_bomhead-datuvgt_bomhead-werksgt_bomhead-matnrgt_bomhead-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'128'l_c_despc_menge''''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_data_check'l_desp.IFgt_content-mengeEQPERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_bomhead-datuv
gt_bomhead-matnrgt_bomhead-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'124'l_c_despgt_content-idnrkc_menge''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_data_check'l_desp.PERFORMfrm_move_errdata.SELECTSINGLEmengeINTOgt_content-mengeFROMzpv_t_coi0033WHEREmatkl=ANDmatnr=gt_bomhead-matnrANDidnrk=l_idnrk.IFsy-subrcEQMODIFYSELECTSINGLEmengeINTOgt_content-mengeFROMzpv_t_coi0033WHEREmatkl=l_matklANDidnrk=l_idnrk.IFsy-subrcEQ0.MODIFY**************EO&重置 IFgt_content-postpNE'L'.PERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_bomhead-datuvgt_bomhead-werksgt_bomhead-matnrgt_bomhead-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'129'l_c_despc_postpgt_content-postp''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_data_check'l_desp.PERFORMfrm_move_errdata. READTABLEgt_lgort_vWITHKEYlgort=gt_content-lgortwerks=gt_content-werks.IFsy-subrcNE0.PERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_bomhead-datuvgt_bomhead-werksgt_bomhead-matnrgt_bomhead-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'129'l_c_despc_lgortgt_content-lgort''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_data_check'l_desp.PERFORMfrm_move_errdata. " Form *&功能說明:把錯誤的文件放在server *&參數(shù)說明 FORMfrm_write_err_fileUSINGl_subrcLIKEsy-lt_errcontentLIKElineOCCURS0WITHHEADER*檢查是否有錯誤的內(nèi)容,如果有,則產(chǎn)生錯誤的文件放在serverCHECKgt_errcontent[]ISNOTINITIAL.lt_errcontent[]=gt_errcontent[].PERFORMfrm_write_err_file_to_srvTABLESlt_errcontentUSINGpr_filenameCHANGING " Form *>_bomhead*&參數(shù)說明 FORMSORTgt_contentBYfilenamematnrwerksdatuvstlalLOOPATgt_contentWHEREfilenameEQgt_file_name-filename."將BOMhead數(shù)據(jù)MOVE:gt_content-matnrTOgt_bomhead-matnr,gt_content-werksTOgt_bomhead-werks,gt_content-datuvTOgt_bomhead-datuv,gt_content-stlalTOgt_bomhead-stlal,gt_content-stlanTOgt_bomhead-stlan,gt_content-bmengTOgt_bomhead-APPENDSORTDELETEADJACENTDUPLICATESFROMgt_bomheadCOMPARINGALL Form *&功能說明:將錯誤數(shù)據(jù)轉(zhuǎn)移到表gt_errcontent *&參數(shù)說明 FORMSORTgt_content.g_failed=g_failed+1.LOOPATgt_contentWHEREmatnrEQgt_bomhead-matnrANDwerksEQgt_bomhead-werksANDdatuvEQgt_bomhead-datuvANDstlalEQgt_bomhead-stlal.MOVE-CORRESPONDINGgt_contentTOgt_errcontent.APPENDgt_errcontent.DELETEDELETEgt_bomheadWHEREmatnrEQgt_bomhead-matnrANDwerksEQgt_bomhead-werksANDdatuvEQgt_bomhead-datuvANDstlalEQgt_bomhead-stlal. *&BOM表頭數(shù)據(jù)轉(zhuǎn)移到表gt_bomhead中,并填寫B(tài)API主物料參數(shù)*&參數(shù)說明:輸出BAPI調(diào)用成功、失敗類 FORMSORTDATA:l_typeLIKEbapiret2-type.LOOPATgt_bomhead.gt_bomhead-matnrTOgs_mast-material,gt_bomhead-werksTOgs_mast-nt,gt_bomhead-datuvTOgs_mast-create_dat,gt_bomhead-stlalTOgs_mast-alt_bom,gt_bomhead-stlanTOgs_mast-bom_usage.PERFORM PERFORM PERFORMfrm_add_sunnyengine. PERFORMfrm_update_bomCHANGINGl_type."調(diào)用BAPI更新物料IFl_typeISINITIAL.g_succeed=g_succeed+1.REFRESHgt_bomhead.CLEARgt_bomhead. *&功能說明:將BOM組件數(shù)據(jù)轉(zhuǎn)移到gt_bomitem中,并填寫B(tài)API組件參 *&參數(shù)說明:主物料編號,工廠,BOM有效日期,可選BOM編 FORMl_numberTYPEc,l_matklLIKEmara-matkl,l_idnrkLIKEmara-matnr,l_stlalLIKEmast-stlal.SORTgt_content.LOOPATgt_contentWHEREfilenameEQgt_file_name-filenameANDmatnrEQgt_bomhead-ANDwerksEQgt_bomhead-werksANDdatuvEQgt_bomhead-datuvANDstlalEQgt_bomhead-CLEARCLEARSELECTSINGLEmatklINTOl_matklFROMmaraWHEREmatnrEQgt_bomhead-matnr.IFsy-subrcEQ***BOmodifybyJiangjg ZNAZNA無陽光件ifl_matkleq***************BO增加陽光四門兩蓋過濾selectsinglematnrintogt_content-idnrkfromwhereidnrkeqgt_content-ifsy-subrceqcallfunctioninput=gt_content-output=gt_content-selectsinglemeins pfromwherematnreqgt_content-move:1 gt_content-meins gt_content-menge ***EOmodifybyJiangjg ZNAZNA無陽光件*CALLFUNCTION'CONVERSION_EXIT_ALPHA_INPUT'input=gt_content-stlaloutput=CALLFUNCTION'CONVERSION_EXIT_ALPHA_OUTPUT'input=gt_content-idnrkoutput=l_idnrkTO g_changenoTOgt_stpo-change_no,gt_content-postpTOgt_stpo-item_cat.***BOmodifybyjiangjg PERFORMfrm_find_bombflocUSINGgt_content-werks CHANGINGgt_stpo-***EOmodifybyjiangjg IFgt_stpo-stor_locISMOVEgt_content-lgortTOgt_stpo-APPENDCLEAR *&功能說明:針對陽光車,添加組件發(fā)動 *&參數(shù)說明 FORM***BOmodifybyjiangjg l_matklLIKEmara-l_despLIKEzpv_s_lgcont-lw_coi0031TYPECLEARCLEARSELECTSINGLEmatklINTOl_matklFROMWHEREmatnrEQgt_bomhead-IFsy-subrcEQIFl_matklEQSELECTSINGLE*INTOFROMWHEREmatkl=ANDmatnr=gt_bomhead-IFsy-subrcEQpon_qty=ponent=lw_coi0031-gt_content-meins gt_content-postpTOgt_stpo-PERFORMfrm_find_bombflocUSINGgt_bomhead-werks CHANGINGgt_stpo-IFgt_stpo-stor_locISMOVEgt_content-lgortTOgt_stpo-APPENDPERFORMfrm_build_msgUSINGc_msg_cls_in'132'l_matklgt_bomhead-matnrgt_bomhead-stlal''CHANGINGl_desp.PERFORMfrm_add_logUSING'W'sy-datumsy-uzeit'frm_add_sunnyengine'CLEAR***EOmodifybyjiangjg- ENDFORM."frm_add_sunnyengine *&功能說明:查找組件的反沖庫存地 *&參數(shù)說明 ***BOmodifybyjiangjg *FORMfrm_find_bombflocUSING CHANGINGDATA:lw_bombflocTYPEl_lgortLIKEstpo- l_despLIKEzpv_s_lgcont-l_countTYPEDATA:BEGINOFlt_lgortOCCURSf_listLIKEzpv_t_bombfloc-s_listLIKEzpv_t_bombfloc-bf_lgortLIKEzpv_t_bombfloc-ENDOFCALLFUNCTIONinput=output=CALLFUNCTIONinput output **MOVEpv_werksTOlw_bombfloc-**SELECTSINGLEmtartmatklINTO(lw_bombfloc-f_type,lw_bombfloc-FROMWHEREmatnrEQIFsy-subrcNE**SELECTSINGLEmtartmatklINTO(lw_bombfloc-s_type,lw_bombfloc-FROMWHEREmatnr IFsy-subrcNE**SELECTSINGLEbklasINTOlw_bombfloc-FROMWHEREmatnr ANDbwkeyEQIFsy-subrcNEDATAl_resultTYPE***CLEARPERFORMfrm_no_nullUSINGpv_matnrpv_idnrkCHANGINGIFl_resultLT***CLEARPERFORMfrm_f_nullUSINGpv_matnrCHANGINGIFl_resultLE***PERFORMfrm_s_nullUSINGpv_idnrkCHANGINGIFl_resultLT***CLEARPERFORMfrm_all_nullUSINGpv_matnrCHANGING***EOmodifybyjiangjg *ENDFORM. *&功能說明:調(diào)用BAPI更新物料 **&參數(shù)說明 FORMfrm_update_bomCHANGINGDATA:ls_bapiret2TYPEbapiret2,l_c_despLIKEzpv_s_lgcont-desp,l_despLIKEzpv_s_lgcont-desp.CLEARgs_stzu-last_ch_no=CALLFUNCTION'Z_BAPI_BOM_UPLOAD_SAVE' =gs_mast =es_return=ls_bapiret2it_stas=gt_stasit_stko=gt_stkoit_stpo=IFls_bapiret2-numberEQ'022'ANDls_bapiret2-typeEQCALLFUNCTION'DEQUEUE_EBOM_LOCK'mode_bom_class_lock='E' =sy-mandt =' =' =' = =' ='CALLFUNCTIONCALLFUNCTION'Z_BAPI_BOM_UPLOAD_SAVE' =gs_mast =es_return=ls_bapiret2 =gt_stas = =IFls_bapiret2-typeEQ'E'ORls_bapiret2-typeEQCALLFUNCTIONPERFORMPERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_content-datuvgt_content-werksgt_content-matnrgt_content-stlalCHANGINGl_c_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'124'l_c_despls_bapiret2-numberls_bapiret2-message''CHANGINGl_desp.PERFORMfrm_add_logUSING'E'sy-datumsy-uzeit'frm_update_bom'CALLFUNCTION IFgt_stpo[]ISPERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_content-datuvgt_content-werksgt_content-matnrgt_content-stlalCHANGINGl_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'126'l_desp''''''CHANGINGPERFORMfrm_build_msgUSINGc_msg_cls_in'121'gt_content-datuvgt_content-werksgt_content-matnrgt_content-stlalCHANGINGl_desp.PERFORMfrm_build_msgUSINGc_msg_cls_in'125'l_desp''''''CHANGINGPERFORMfrm_add_logUSING'S'sy-datumsy-uzeit'frm_update_bom'pv_type=ls_bapiret2-type.CLEARgs_mast.CLEARCLEARCLEARREFRESHREFRESHREFRESH Form --> <-- ***BOmodifybyjiangjg *FORMfrm_get_list**select*fromintocorrespondingfieldsoftablewherefiledeqorfiledeqorfiledeqorfiledeqorfiledeqifsy-subrceq**select*fromintocorrespondingfieldsoftablewherefiledeqorfiledeqorfiledeqorfiledeqorfiledeqifsy-subrceq**select*intocorrespondingfieldsoftablefromifsy-subrceq "***EOmodifybyjiangjg FORMfrm_no_nullUSINGpv_matnrpw_bombflocSTRUCTUREzpv_t_bombflocCHANGINGpv_lgortLOOPATgt_f_listWHEREmatnrEQLOOPATgt_s_listWHEREmatnrEQREADTABLEgt_zpv_t_bombflocWITHKEYnt=pw_bombfloc-f_type=pw_bombfloc-f_typef_group=pw_bombfloc-f_groups_type=pw_bombfloc-s_typeIFsy-subrcEQpr_result=pr_result+IFpr_resultGTIFpr_resultGTIFpr_resultEQpv_lgort=gt_zpv_t_bombfloc-CLEAR
s_group=pw_bombfloc-s_groups_vclass=pw_bombfloc-s_vclassf_list=gt_f_list-fileds_list=gt_s_list-filed. FORMfrm_f_nullUSINGpv_matnrpw_bombflocSTRUCTUREzpv_t_bombflocCHANGINGpv_lgortLOOPATgt_f_listWHEREmatnrEQREADTABLEgt_zpv_t_bombflocWITH nt=pw_bombfloc-f_type=pw_bombfloc-f_typef_group=pw_bombfloc-f_groups_type=pw_bombfloc-s_types_group=pw_bombfloc-s_groups_vclass=pw_bombfloc-s_vclassf_list=gt_f_list-fileds_list=''.IFsy-subrcEQpr_result=pr_result+IFpr_resultGTIFpr_resultEQpv_lgort=gt_zpv_t_bombfloc-CLEAR FORMfrm_s_nullUSINGpv_idnrkpw_bombflocSTRUCTUREzpv_t_bombflocCHANGINGpv_lgortLOOPATgt_s_listWHEREmatnrEQREADTABLEgt_zpv_t_bombflocWITH nt=pw_bombfloc-f_type=pw_bombfloc-f_typef_group=pw_bombfloc-f_groups_type=pw_bombfloc-s_types_group=pw_bombfloc-s_groups_vclass=pw_bombfloc-s_vclassf_list=''s_list=gt_s_list-IFsy-subrcEQpr_result=pr_result+IFpr_resultGTIFpr_resultEQpv_lgort=gt_zpv_t_bombfloc-CLEAR FORMfrm_all_nullUSINGpv_matnrpw_bombflocSTRUCTUREzpv_t_bombflocCHANGINGpv_lgortLOOPATgt_zpv_t_bombfloc nt= ANDf_type=pw_bombfloc-f_typeANDf_group=pw_bombfloc-f_groupANDs_type=pw_bombfloc-s_typeANDs_group=pw_bombfloc-s_groupANDs_vclass=pw_bombfloc-s_vclassANDf_list=''ANDs_list=''.pr_result=pr_result+1.IFpr_resultGTIFpr_resultEQpv_lgort=gt_zpv_t_bombfloc-CLEAR Form <--P_L_SUBRC FORMfrm_trans_testUSINGpv_tcodeCHANGINGCALLTRANSACTIONpv_tcode MESSAGESINTOgt_bdc_msg.pv_subrc=sy-subrc.LOOPATgt_bdc_msgWHEREmsgtypEQ'E'.pv_subrc=4.REFRESHgt_bdc_tab.CLEARgt_bdc_tab. " Form --> <-- FORMfrm_config_update_pvDATA:BEGINOFlt_bomaddkOCCURSINCLUDESTRUCTURE meinsLIKEmara-meins.DATA:ENDOFlt_bomaddk.lt_mastLIKEmastOCCURS0WITHHEADERlt_bomdelkLIKEzpv_t_bomdelkOCCURS0WITHHEADERDATA:BEGINOFlt_bomlistOCCURS0,matnrLIKEmast-matnr,werksLIKEmast-werks,stlanLIKEmast-stlan,stlnrLIKEmast-stlnr,stlalLIKEmast-stlal,ENDOFDATA:l_bom_validfrmLIKEstko-datuv.IFg_changenoISINITIAL.g_changeno=sy-PERFORMfrm_create_changeno1.PERFORMfrm_add_logUSING'S'sy-datumsy-uzeit'frm_config_update_pv'SELECT*FROMINTOCORRESPONDINGFIELDSOFTABLESELECT*FROMzpv_t_bomdelkINTOTABLElt_bomdelk.LOOPATSELECTSINGLEINTOlt_bomaddk-FROMmaraWHEREmatnrEQlt_bomaddk-SELECTSINGLEINTOlt_bomaddk-FROMmaraWHEREmatnrEQlt_bomaddk-MODIFYlt_bomaddkTRANSPORTINGmatklmeins.CLEARlt_bomaddk.LOOPATSELECTSINGLEINTOlt_bomdelk-FROMmaraWHEREmatnrEQlt_bomdelk-MODIFYlt_bomdelkTRANSPORTINGmatkl.CLEARlt_bomdelk.*根據(jù)配置表ZPV_T_BOMADDKBOMLOOPATPERFORMfrm_get_mastTABLESLOOPATSELECTSINGLEdatuvFROMstkoINTOl_bom_validfrmWHEREstlty='M'ANDstlnrEQlt_mast-stlnrANDstlalEQlt_mast-stlal.PERFORMfrm_bom_addidnrkUSINGREFRESHCLEAR**根據(jù)配置表ZPV_T_BOMALTRN更新BOM子件LOOPATlt_bomdelk.PERFORMfrm_get_mastTABLESCALLFUNCTIONinput=lt_bomdelk-output=lt_bomdelk-LOOPATSELECTSINGLEdatuvFROMstkoINTOl_bom_validfrmWHEREstlty='M'ANDstlnrEQlt_mast-stlnrANDstlalEQlt_mast-stlal.PERFORMfrm_bom_delidnrkUSINGCLEARREFRESH " Form --> <-- FORMfrm_config_update_ptDATA:BEGINOFlt_bomaddkOCCURSINCLUDESTRUCTUREzpt_t_bomaddk meinsLIKEmara-meins.DATA:ENDOFlt_bomaddk.lt_mastLIKEmastOCCURS0WITHHEADERlt_bomdelkLIKEzpt_t_bomdelkOCCURS0WITHHEADERDATA:BEGINOFlt_bomlistOCCURS0,matnrLIKEmast-matnr,werksLIKEmast-werks,stlanLIKEmast-stlan,stlnrLIKEmast-stlnr,stlalLIKEmast-stlal,ENDOFDATA:l_bom_validfrmLIKEstko-datuv.IFg_changenoISINITIAL.g_changeno=sy-PERFORMfrm_create_changeno1.PERFORMfrm_add_logUSING'S'sy-datumsy-uzeit'frm_config_update'SELECT*FROMINTOCORRESPONDINGFIELDSOFTABLESELECT*FROMzpt_t_bomdelkINTOTABLElt_bomdelk.LOOPATlt_bomaddk.SELECTSINGLEINTOlt_bomaddk-FROMmaraWHEREmatnrEQlt_bomaddk-SELECTSINGLEINTOlt_bomaddk-FROMmaraWHEREmatnrEQlt_bomaddk-MODIFYlt_bomaddkTRANSPORTINGmatklmeins.CLEARlt_bomaddk.LOOPATSELECTSINGLEINTOlt_bomdelk-FROMmaraWHEREmatnrEQlt_bomdelk-MODIFYlt_bomdelkTRANSPORTINGmatkl.CLEARlt_bomdelk.*根據(jù)配置表zpt_t_bomaddkBOMLOOPATPERFORMfrm_get_mastTABLESCALLFUNCTIONinput=lt_bomaddk-output=lt_bomaddk-LOOPATSELECTSINGLEdatuvFROMstkoINTOl_bom_validfrmWHEREstlty='M'ANDstlnrEQlt_mast-stlnrANDstlalEQlt_mast-stlal.PERFORMfrm_bom_addidnrkUSINGREFRESHCLEAR**根據(jù)配置表ZPT_T_BOMALTRN更新BOM子件LOOPATlt_bomdelk.PERFORMfrm_get_mastTABLESCALLFUNCTIONinput=lt_bomdelk-output=lt_bomdelk-LOOPATSELECTSINGLEdatuvFROMstkoINTOl_bom_validfrmWHEREstlty='M'ANDstlnrEQlt_mast-stlnrANDstlalEQlt_mast-stlal.PERFORMfrm_bom_delidnrkUSINGCLEARREFRESH " Form textGetBom FORMfrm_get_mast pt_mastSTRUCTURE DATA:BEGINOFlt_matnrOCCURSmatnrLIKEmara-matnr,ENDOFlt_matnr.s_matnrFORmara-matnr,s_stlalFORmast-IFpv_matnrISINITIAL.IFpv_matklISSELECTmatnrINTOTABLElt_matnrFROMmaraWHERElvormEQ''SELECTmatnrINTOTABLElt_matnrFROMmaraWHERElvormEQ''ANDmatklEQLOOPATlt_matnr.s_matnr-sign='I'.s_matnr-option='EQ'.s_matnr-low=lt_matnr-matnr.APPENDs_matnr.CLEARs_matnr-sign='I'.s_matnr-option='EQ'.s_matnr-low=pv_matnr.APPENDs_matnr.CLEARIFNOTpv_stlalISINITIAL.s_stlal-sign='I'.s_stlal-option='EQ'.s_stlal-low=pv_stlal.APPENDs_stlal.CLEARSELECT*INTOTABLEpt_mastFROMWHEREmatnrINs_matnrANDwerksEQpv_werksANDstlanEQ'1'ANDstlalINs_stlal. " Form textinsertidnrkinto FORMfrm_bom_addidnrkUSINGpw_mastSTRUCTURElt_bom_itemLIKEcapp_itmOCCURS0WITHHEADERLINE.ls_mastTYPEbapibommst,ls_stzuTYPElt_stkoLIKEbapibomstkOCCURS0WITHHEADERLINE,lt_stpoLIKEbapibomstpOCCURS0WITHHEADERLINE,lt_stasLIKEbapibomstaOCCURS0WITHHEADERLINE,ls_ret2TYPEbapiret2.**Importanttest*********ct_stpo_api02TYPEstpo_api02OCCURS0WITHHEADERLINE,ct_stko_api02TYPEstko_api02OCCURS0WITHHEADERl_validfrmLIKEcapp_itm-datuv,l_c_desp(255)TYPEc,l_desp(255)TYPEc.****BAPIBOMMAST表****************************MOVE:pw_mast-matnrTOls_mast-material,pw_mast-werksTOls_mast-pw_mast-datuvTOls_mast-create_dat,pw_mast-stlalTOls_mast-alt_bom,pw_mast-stlanTOls_mast-bom_usage.l_validfrm=g_changeno+2.CALLFUNCTION'CABM_READ_BOM_ITEM' = =pw_mast- =pw_mast-stlal =l_validfrm =' '"sy-datum =pw_mast-werks =lt_bom_itemno_record_found= =DATA:l_matnrLIKEcsap_mbom-l_werksLIKEcsap_mbom-l_stlalLIKEcsap_mbom-l_stlanLIKEcsap_mbom-l_datumLIKEcsap_mbom-l_dattoLIKEcsap_mbom-l_matnr=pw_mast-l_werks=pw_mast-l_stlal=pw_mast-l_stlan=pw_mast-l_datum=sy-l_datto= CALLFUNCTION = = = = = =l_datto"pw_mast- =ls_mbom- revision_level=ls_mbom- = = = =IFsy-subrcEQ0ORsy-subrcEQLOOPATMOVE:lt_bom_item-meinsTO lt_bom_item-mengeTO lt_bom_item-idnrkTO lt_bom_item-postpTOlt_stpo-item_cat,lt_bom_item-aennrTOlt_stpo-change_no,lt_bom_item-lgorttolt_stpo-lgort,lt_bom_item-posnrTOlt_stpo-bom_itm_no.APPENDlt_stpo.CLEARlt_stpo.READTABLElt_stpoWITHKEYcomponentpv_idnrk.IFsy-subrcNE0.MOVE:pv_meinsTO pv_idnrkTO c_ite
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 品牌策劃與營銷策略培訓材料
- 電子商務物流時效分析對比表
- 婚姻考題復習試題含答案
- 三農(nóng)信息采集與共享平臺建設方案
- 農(nóng)業(yè)資源整合與可持續(xù)發(fā)展解決方案
- 出版行業(yè)數(shù)字化內(nèi)容管理系統(tǒng)設計
- 高效辦公實踐教程
- 通訊設備業(yè)5G基站建設與維護管理方案
- 農(nóng)業(yè)科技精準種植與養(yǎng)殖技術推廣方案
- 不同行業(yè)運營成本分析比較表
- 無機化學實驗(下)知到智慧樹章節(jié)測試課后答案2024年秋陜西師范大學
- 高等教育自學考試自考《英語二》試題及答案指導(2025年)
- 2024年皖北衛(wèi)生職業(yè)學院單招職業(yè)技能測試題庫
- 軍工產(chǎn)品保密協(xié)議
- 商務數(shù)據(jù)分析理論試題題庫及答案
- 2025屆高考英語一輪復習應用文之申請信課件
- 人教版九年級上冊音樂 1.5中國人民解放軍軍歌 教案
- DB34-T 4859-2024 農(nóng)村河道清淤規(guī)范
- 【課件】秦統(tǒng)一中國+課件-2024-2025學年統(tǒng)編版七年級歷史上冊
- 《單片機項目化教程(C語言版)(第2版)》全套教學課件
- 陽光食品APP培訓考核題庫(含答案)食品生產(chǎn)企業(yè)端
評論
0/150
提交評論