MIGO供應(yīng)商批次增強(qiáng)_第1頁(yè)
MIGO供應(yīng)商批次增強(qiáng)_第2頁(yè)
MIGO供應(yīng)商批次增強(qiáng)_第3頁(yè)
MIGO供應(yīng)商批次增強(qiáng)_第4頁(yè)
MIGO供應(yīng)商批次增強(qiáng)_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、MIGO增強(qiáng)增強(qiáng)最終效果:在MIGO界面新增一個(gè)頁(yè)簽用于輸入供應(yīng)商批次號(hào).1、 SE11建立數(shù)據(jù)表用于存儲(chǔ)供應(yīng)商批次,表結(jié)構(gòu)如下:MANDTMANDTCLNT30客戶端 MBLNRMBLNRCHAR100物料憑證編號(hào)MJAHRMJAHRNUMC40物料憑證年度ZEILEMBLPONUMC40物料憑證中的項(xiàng)目LICHAZLICHACHAR300供應(yīng)商批次 EBELNEBELNCHAR100采購(gòu)憑證號(hào) EBELPEBELPNUMC50采購(gòu)憑證的項(xiàng)目編號(hào) MATNRMATNRCHAR180物料號(hào) WERKSWERKS_DCHAR40工廠LGORTLGORT_DCHAR40庫(kù)存地點(diǎn)CHARGCHARG

2、_DCHAR100批號(hào)2、 建立結(jié)構(gòu),在屏幕數(shù)據(jù)交換時(shí)使用 3、建立表類型設(shè)置關(guān)鍵字段: 4、SE80建立函數(shù)組創(chuàng)建屏幕1000,設(shè)計(jì)格式,插入供應(yīng)商批次字段創(chuàng)建function: zmigo_103_get_dataFUNCTIONzmigo_103_get_data.*-*Localinterface:*EXPORTING*VALUE(ES_MIGO_BADI_SCREEN_FIELDS)TYPEZSMIGO_103*-*Getalldatafromfieldsofexternalscreen*Firstmoveallcustomer-fieldsMOVE-CORRESPONDINGzmi

3、go_103TOes_migo_badi_screen_fields.ENDFUNCTION.function: ZMIGO_103_PUT_DATAFUNCTIONZMIGO_103_PUT_DATA.*-*Localinterface:*IMPORTING*VALUE(IS_MIGO_BADI_SCREEN_FIELDS)TYPEZSMIGO_103OPTIONAL*-*Putalldatafromfieldstoexternalscreen*Firstfillallcustomer-fieldsMOVE-CORRESPONDINGis_migo_badi_screen_fieldsTOZ

4、MIGO_103.ENDFUNCTION.function: ZMIGO_103_UPDATE_DATAFUNCTIONzmigo_103_update_data.*-*Localinterface:*TABLES*IT_MIGO_BADI_EXAMPLESTRUCTUREZMIGO_103OPTIONAL*-INSERTzmigo_103FROMTABLEit_migo_badi_example.IFsy-subrc0.MESSAGEa398(00)WITH收貨批次更新失敗.ENDIF.ENDFUNCTION.5、 SE19創(chuàng)建實(shí)現(xiàn)6、 創(chuàng)建執(zhí)行類ZCL_IM_103_MIGO_BADI,激

5、活Z103_MIGO_BADI 雙擊類 維護(hù)類屬性維護(hù)下列方法,激活所有,運(yùn)行T_code MIGO 就可以看到第一個(gè)圖的效果了。在創(chuàng)建執(zhí)行類的時(shí)候所有方法里面會(huì)對(duì)應(yīng)生成相應(yīng)的代碼,有些方法用不到,就注釋掉不然激活的時(shí)候會(huì)報(bào)錯(cuò)。methodIF_EX_MB_MIGO_BADIINIT.*RegristrationofBAdI-Implementation:*AppendclassattributeGF_CLASS_ID(=MIGO_BADI_IMPLEMENTATION1)to*regristrationtable.APPENDgf_class_idTOct_init.endmethod.ME

6、THODif_ex_mb_migo_badipbo_detail.DATA:ls_extdataTYPEzsmigo_103.*Thischeckisobligatory,otherwisetheprogramflowisincorrect*(IftherewouldbemorethanoneimplementationofBAdIMB_MIGO_BADI,*onlyonesubscreenwouldbedisplayed).CHECKi_class_id=gf_class_id.*ShowscreenonlyifthereisanitemCHECKi_line_id0.*Externalsu

7、bscreen:*ThecontentofglobalfieldG_NO_INPUT(setinmethodMODE_SET)will*influencethenumberofexternalsubsreen:IFg_no_inputISINITIALANDg_bwart=103.e_cprog=SAPLZMIGO_103.e_dynnr=1000.Externalfields:Inpute_heading=收貨批次.ENDIF.*101移動(dòng)類型也增加輸入lanyf2016-1-13DEVK921012IFg_no_inputISINITIALANDg_bwart=101.e_cprog=SA

8、PLZMIGO_103.e_dynnr=1000.Externalfields:Inpute_heading=收貨批次.ENDIF.IFg_no_inputISINITIALANDg_bwart=105.e_cprog=SAPLZMIGO_103.e_dynnr=1000.Externalfields:Inpute_heading=供應(yīng)商批次.ENDIF.*SetG_LINE_ID(=line_idofitemdisplayedondetail-tabstrip)g_line_id=i_line_id.*ReaddataREADTABLEgt_extdataINTOls_extdataWITH

9、TABLEKEYline_id=i_line_id.*Exportdatatofunctiongroup(fordisplayonsubscreen)CALLFUNCTIONZMIGO_103_PUT_DATAEXPORTINGis_migo_badi_screen_fields=ls_extdata.ENDMETHOD.IF_EX_MB_MIGO_BADIPBO_DETAILMETHODif_ex_mb_migo_badipai_detail.*-*ChangingparameterE_FORCE_CHANGEcanbesettoX.Inthiscase*methodLINE_MODIFYi

10、scalled.*ATTENTION:*DONOTSETparameterE_FORCE_CHANGE=.Inthiscaseyoumight*overwriteparameterE_FORCE_CHANGEofanotherBAdIimplementation.*-DATA:ls_extdata_newTYPEzsmigo_103,ls_extdata_oldTYPEzsmigo_103.*OnlyifalineexistsCHECKi_line_id0.*GetdatafromexternalscreenCALLFUNCTIONZMIGO_103_GET_DATAIMPORTINGes_m

11、igo_badi_screen_fields=ls_extdata_new.*ComparenewdatawitholddataREADTABLEgt_extdataINTOls_extdata_oldWITHTABLEKEYline_id=i_line_id.ls_extdata_new-line_id=i_line_id.IFls_extdata_oldls_extdata_new.*Iftherewereanychanges,itsobligatorytoforceMIGOtotrigger*methodLINE_MODIFY.e_force_change=X.ENDIF.ENDMETH

12、OD.IF_EX_MB_MIGO_BADIPAI_DETAILMETHODif_ex_mb_migo_badiline_modify.DATA:ls_extdata_oldTYPEzsmigo_103,ls_extdata_newTYPEzsmigo_103,ls_migo_badi_examplTYPEzmigo_103,l_subrcTYPEsy-subrc.*Getexternaldatafrominternaltable:READTABLEgt_extdataINTOls_extdata_oldWITHTABLEKEYline_id=i_line_id.l_subrc=sy-subrc

13、.*Updatedataininternaltable:IFl_subrc0.*Lineisnew:IfGOITEMhasareferencetoamaterialdocument,*thealreadyexistingexternaldatacanberead.IFNOTcs_goitem-mblnrISINITIALANDNOTcs_goitem-mjahrISINITIALANDNOTcs_goitem-zeileISINITIAL.IFcs_goitem-bwart=103orcs_goitem-bwart=101.增強(qiáng)101收貨批次2016-1-13SELECTSINGLE*FROM

14、zmigo_103INTOls_migo_badi_examplWHEREmblnr=cs_goitem-mblnrANDmjahr=cs_goitem-mjahrANDzeile=cs_goitem-zeile.IFsy-subrc=0.MOVE-CORRESPONDINGls_migo_badi_examplTOls_extdata_new.ENDIF.ELSEIFcs_goitem-bwart=105orcs_goitem-bwart=101.增強(qiáng)101收貨批次2016-1-13SELECTSINGLE*FROMzmigo_103INTOls_migo_badi_exampl*WHERE

15、ebeln=cs_goitem-ebeln*ANDebelp=cs_goitem-ebelpWHEREmjahr=cs_goitem-lfbjaANDmblnr=cs_goitem-lfbnrANDzeile=cs_goitem-lfpos.IFsy-subrc=0.MOVE-CORRESPONDINGls_migo_badi_examplTOls_extdata_new.ENDIF.ENDIF.ENDIF.ls_extdata_new-line_id=i_line_id.INSERTls_extdata_newINTOTABLEgt_extdata.ELSE.*Lineexists:Gete

16、xternaldataenteredonBAdI-subscreeen,butonly*ifline_modifywascalledfortheitemdisplayedinthe*detailtabstrip.CHECKg_line_id=i_line_id.CALLFUNCTIONZMIGO_103_GET_DATAIMPORTINGes_migo_badi_screen_fields=ls_extdata_new.ls_extdata_new-line_id=i_line_id.*ifls_extdata_new-sgtxtls_extdata_old-sgtxt.*Fieldwasch

17、angedonexternalscreen*cs_goitem-sgtxt=ls_extdata_new-sgtxt.*else.*TakedatafromGOITEM*ls_extdata_new-sgtxt=cs_goitem-sgtxt.*endif.MODIFYTABLEgt_extdataFROMls_extdata_new.ENDIF.IFcs_goitem-bwart=105ORcs_goitem-bwart=101.SELECTSINGLElichaINTOcs_goitem-lichaFROMzmigo_103WHEREebeln=cs_goitem-ebelnANDebel

18、p=cs_goitem-ebelpANDmjahr=cs_goitem-lfbjaANDmblnr=cs_goitem-lfbnrANDzeile=cs_goitem-lfpos.ENDIF.ENDMETHOD.IF_EX_MB_MIGO_BADILINE_MODIFYMETHODIF_EX_MB_MIGO_BADILINE_DELETE.DELETETABLEgt_extdataWITHTABLEKEYline_id=i_line_id.ENDMETHOD.IF_EX_MB_MIGO_BADILINE_DELETEMETHODIF_EX_MB_MIGO_BADIRESET.*Clearall

19、internaldata:CLEAR:gt_extdata,g_no_input,gs_exdata_header,G_BWART,G_XS,g_cancel,g_line_id.ENDMETHOD.IF_EX_MB_MIGO_BADIRESETMETHODif_ex_mb_migo_badipost_document.DATA:ls_migo_badi_exampleTYPEzmigo_103,lt_migo_badi_exampleTYPETABLEOFzmigo_103,ls_extdataTYPEzsmigo_103,ls_xmsegTYPEmseg,l_xcharTYPEmarc-x

20、char.FIELD-SYMBOLS:TYPEzsmigo_103.*TransactionMIGOwillnowpostamaterialdocument.*AnyerrorshereMUSTbeissuedasA-message(better:X-message)*CopydatafrommaterialdocumentintointernaltableLOOPATgt_extdataINTOls_extdata.IFg_cancelISINITIAL.READTABLEit_msegINTOls_xmsegWITHKEYline_id=ls_extdata-line_id.ELSE.RE

21、ADTABLEit_msegINTOls_xmsegWITHKEYsmbln=ls_extdata-mblnrsmblp=ls_extdata-zeilesjahr=ls_extdata-mjahr.ENDIF.IFsy-subrcISINITIAL.IF(ls_xmseg-bwart=103ORls_xmseg-bwart=101)ANDls_xmseg-werks=1000.MOVE-CORRESPONDINGls_extdataTOls_migo_badi_example.*MOVE-CORRESPONDINGls_xmsegTOls_migo_badi_example.ls_migo_

22、badi_example-mblnr=ls_xmseg-mblnr.ls_migo_badi_example-zeile=ls_xmseg-zeile.ls_migo_badi_example-mjahr=ls_xmseg-mjahr.ls_migo_badi_example-ebeln=ls_xmseg-ebeln.ls_migo_badi_example-ebelp=ls_xmseg-ebelp.ls_migo_badi_example-matnr=ls_xmseg-matnr.ls_migo_badi_example-werks=ls_xmseg-werks.ls_migo_badi_e

23、xample-lgort=ls_xmseg-lgort.ls_migo_badi_example-charg=ls_xmseg-charg.*判斷是否為必填SELECTSINGLExchpfINTOl_xcharFROMmarcWHEREmatnr=ls_xmseg-matnrANDwerks=ls_xmseg-werksANDxchpf.IFls_extdata-lichaISINITIAL.IFl_xcharISNOTINITIAL.MESSAGE請(qǐng)輸入供應(yīng)商批次,謝謝!TYPEE.ENDIF.ELSE.IFl_xcharISINITIAL.物料沒(méi)有進(jìn)行批次管理不需要供應(yīng)商檢驗(yàn)批2016-

24、1-13MESSAGE物料沒(méi)有進(jìn)行批次管理,不需要輸入供應(yīng)商批次TYPEW.ENDIF.ENDIF.*供應(yīng)商批次為空則不寫(xiě)入IFls_extdata-lichaISNOTINITIAL.APPENDls_migo_badi_exampleTOlt_migo_badi_example.ENDIF.ENDIF.ENDIF.ENDLOOP.*Thedatafromexternaldetailscreencanbesavednow:CHECKlt_migo_badi_exampleISNOTINITIAL.CALLFUNCTIONZMIGO_103_UPDATE_DATATABLESit_migo_b

25、adi_example=lt_migo_badi_example.*Thedatafromexternalheaderscreencanbesavednow:*MOVE-CORRESPONDINGis_mkpfTOgs_exdata_header.*CALLFUNCTIONMIGO_BADI_EXAMPLE_UPDATE_HEADINUPDATETASK*EXPORTING*is_migo_badi_header_fields=gs_exdata_header.ENDMETHOD.IF_EX_MB_MIGO_BADIPOST_DOCUMENTMETHODIF_EX_MB_MIGO_BADIMODE_SET.*ACTIONandREFDOCwilldiscribethemodeoftransactionMIGO.*-*i_action:*A01=Goodsreceipt*A02=Returndelivery*A03=Cancellation*A04=Display*A05=ReleaseG

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論