Google Search - Blog...........

ABAP - BDC Program To Upload Material Master Data (MM01).

REPORT ZIMMC001.
************************************************************************
* D A T A D E C L A R A T I O N *
************************************************************************
*------------------------------------
* Type Declaration of the Structure.
*------------------------------------
TYPES: BEGIN OF TY_SAVE_INDEX,
IDNO TYPE I, " SAVE Index
END OF TY_SAVE_INDEX.
TYPES: BEGIN OF TY_TABDATA,
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Create Material (Initial Screen).
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
MATNR(18) TYPE C, " Material Number.
MBRSH(01) TYPE C, " Industry Sector.
MTART(04) TYPE C, " Material Type.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Organizational Levels.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
WERKS(04) TYPE C, " Plant.
LGORT(04) TYPE C, " Storage Location.
VKORG(04) TYPE C, " Sales Organization.
VTWEG(02) TYPE C, " Distribution Channel.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Sales Org. 1 : Tax Classification.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
TAXKM1(01) TYPE C, " Tax classification material 1.
TAXKM2(01) TYPE C, " Tax classification material 2.
TAXKM3(01) TYPE C, " Tax classification material 3.
TAXKM4(01) TYPE C, " Tax classification material 4.
TAXKM5(01) TYPE C, " Tax classification material 5.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Additional Data - UoM.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
UMREN1(06) TYPE C, " Denominator for Conversion to Base Units of Measure 1.
MEINH1(03) TYPE C, " Alternative Unit of Measure for Stockkeeping Unit 1.
UMREZ1(06) TYPE C, " Numerator for Conversion to Base Units of Measure 1.
* ..........................................................................................
UMREN2(06) TYPE C, " Denominator for Conversion to Base Units of Measure 2.
MEINH2(03) TYPE C, " Alternative Unit of Measure for Stockkeeping Unit 2.
UMREZ2(06) TYPE C, " Numerator for Conversion to Base Units of Measure 2.
* ..........................................................................................
UMREN3(06) TYPE C, " Denominator for Conversion to Base Units of Measure 3.
MEINH3(03) TYPE C, " Alternative Unit of Measure for Stockkeeping Unit 3.
UMREZ3(06) TYPE C, " Numerator for Conversion to Base Units of Measure 3.
* ..........................................................................................
UMREN4(06) TYPE C, " Denominator for Conversion to Base Units of Measure 4.
MEINH4(03) TYPE C, " Alternative Unit of Measure for Stockkeeping Unit 4.
UMREZ4(06) TYPE C, " Numerator for Conversion to Base Units of Measure 4.
* ..........................................................................................
UMREN5(06) TYPE C, " Denominator for Conversion to Base Units of Measure 5.
MEINH5(03) TYPE C, " Alternative Unit of Measure for Stockkeeping Unit 5.
UMREZ5(06) TYPE C, " Numerator for Conversion to Base Units of Measure 5.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Sales Org. 1
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
VRKME(03) TYPE C, " Sales unit.
DWERK(04) TYPE C, " Delivering Plant (Own or External).
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Sales Org. 2
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
VERSG(01) TYPE C, " Material statistics group.
KTGRM(02) TYPE C, " Account assignment group for this material.
MTPOS(04) TYPE C, " Item category group from material master.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* General/Plant.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
BRGEW(17) TYPE C, " Gross weight.
NTGEW(17) TYPE C, " Net weight.
MTVFP(02) TYPE C, " Checking Group for Availability Check.
TRAGR(04) TYPE C, " Transportation group
LADGR(04) TYPE C, " Loading group.
PRCTR(10) TYPE C, " Profit Center.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Foreign Trade Export.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
HERKL(03) TYPE C, " Country of origin of the material.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Purchasing.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
BSTME(03) TYPE C, " Order unit.
KAUTB(01) TYPE C, " Indicator: "automatic purchase order allowed".
XCHPF(01) TYPE C, " Batch management requirement indicator.
EKGRP(03) TYPE C, " Purchasing Group.
WEBAZ(03) TYPE C, " Goods receipt processing time in days.
EKWSL(04) TYPE C, " Purchasing Value Key.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Purch.Order Text.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
PTEXT(40) TYPE C, " Purchase Order Text.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* MRP 1
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
DISGR(04) TYPE C, " MRP Group.
DISMM(02) TYPE C, " MRP Type.
MINBE(17) TYPE C, " Reorder point.
DISPO(03) TYPE C, " MRP Controller.
DISLS(02) TYPE C, " Lot size (materials planning).
BSTFE(17) TYPE C, " Fixed lot size.
BSTMI(17) TYPE C, " Minimum lot size.
BSTMA(17) TYPE C, " Maximum lot size.
AUSSS(06) TYPE C, " Assembly scrap in percent.
BSTRF(17) TYPE C, " Rounding value for purchase order quantity.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* MRP 2
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
BESKZ(01) TYPE C, " Procurement Type.
SOBSL(02) TYPE C, " Special procurement type.
LGPRO(04) TYPE C, " Issue Storage Location.
RGEKZ(01) TYPE C, " Indicator: Backflush.
LGFSB(04) TYPE C, " Default storage location for external procurement.
DZEIT(03) TYPE C, " In-house production time.
PLIFZ(03) TYPE C, " Planned delivery time in days.
MRPPP(03) TYPE C, " PPC planning calendar.
FHORI(03) TYPE C, " Scheduling Margin Key for Floats.
EISBE(17) TYPE C, " Safety stock.
WEBAZ1(03) TYPE C, " Goods receipt processing time in days.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* MRP 3
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
STRGR(02) TYPE C, " Planning strategy group.
VRMOD(01) TYPE C, " Consumption mode.
VINT1(03) TYPE C, " Consumption period: backward.
VINT2(03) TYPE C, " Consumption period: forward.
MISKZ(01) TYPE C, " Mixed MRP indicator.
MTVFP1(02) TYPE C, " Checking Group for Availability Check.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* MRP 4
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
ALTSL(01) TYPE C, " Method for Selecting Alternative Bills of Material.
KAUSF(06) TYPE C, " Component scrap in percent.
SBDKZ(01) TYPE C, " Dependent requirements ind. for individual and coll. reqmts.
SAUFT(01) TYPE C, " Ind.: Repetitive mfg allowed.
SFEPR(04) TYPE C, " Repetitive manufacturing profile.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Work Scheduling.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
FRTME(03) TYPE C, " Production unit.
FEVOR(03) TYPE C, " Production scheduler.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Plant Data / Stor. 1
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
AUSME(03) TYPE C, " Unit of issue.
MHDRZ(05) TYPE C, " Minimum remaining shelf life.
MHDHB(05) TYPE C, " Total shelf life.
IPRKZ(01) TYPE C, " Period indicator for shelf life expiration date.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Quality Management.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
WEBAZ2(03) TYPE C, " Goods receipt processing time in days.
QMPUR(01) TYPE C, " QM in Procurement is Active.
SSQSS(08) TYPE C, " Control Key for Quality Management in Procurement.
QZGTP(04) TYPE C, " Certificate Type.
QMATV(01) TYPE C, " Inspection Setup Exists for Material/Plant.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Inspection Setup Data.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
ART1(08) TYPE C, " Inspection Type 1.
AKTIV1(01) TYPE C, " Inspection Type - Material Combination is Active 1.
ART2(08) TYPE C, " Inspection Type 2.
AKTIV2(01) TYPE C, " Inspection Type - Material Combination is Active 2.
ART3(08) TYPE C, " Inspection Type 3.
AKTIV3(01) TYPE C, " Inspection Type - Material Combination is Active 3.
ART4(08) TYPE C, " Inspection Type 4.
AKTIV4(01) TYPE C, " Inspection Type - Material Combination is Active 4.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Accounting 1.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
BKLAS(04) TYPE C, " Valuation Class.
VPRSV(01) TYPE C, " Price Control Indicator.
PEINH(06) TYPE C, " Price Unit.
STPRS(15) TYPE C, " Standard Price.
VERPR(15) TYPE C, " Moving Average Price/Periodic Unit Price.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
* Cost Estimate 1.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
EKALR(01) TYPE C, " Material Is Costed with Quantity Structure.
HKMAT(01) TYPE C, " Material Origin.
AWSLS(06) TYPE C, " Variance Key.
PRCTR1(10) TYPE C, " Profit Center.
LOSGR(17) TYPE C, " Lot Size for Product Costing.
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
ROWCNT TYPE I, " Normal Row Count.
ROW TYPE I, " Row Count --> Line Items
* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
END OF TY_TABDATA.
*------------------------------------------------
* Declaration of the Internal Table & Work Area.
*------------------------------------------------
DATA: IT_SAVE_INDEX TYPE STANDARD TABLE OF TY_SAVE_INDEX,
WA_SAVE_INDEX TYPE TY_SAVE_INDEX.
DATA: IT_TABDATA TYPE STANDARD TABLE OF TY_TABDATA,
WA_TABDATA TYPE TY_TABDATA.
*-------------------------------------------------------------------------------------
* Declaration of the Internal Table with Header Line comprising of the uploaded data.
*-------------------------------------------------------------------------------------
DATA: BEGIN OF IT_FILE_UPLOAD OCCURS 0.
INCLUDE STRUCTURE ALSMEX_TABLINE. " Rows for Table with Excel Data
DATA: END OF IT_FILE_UPLOAD.
*-------------------------------
* Global Variable Declarations.
*-------------------------------
DATA: GV_ANS TYPE C.
*--------------------------------------------
* Batch Input Data for a single Transaction.
* Message of Call Transaction.
*--------------------------------------------
DATA: BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
MSGTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
************************************************************************
* S E L E C T I O N - S C R E E N *
************************************************************************
SELECTION-SCREEN: BEGIN OF BLOCK B1 WITH FRAME,
BEGIN OF BLOCK B2 WITH FRAME.
PARAMETERS: P_FNAME LIKE RLGRAP-FILENAME OBLIGATORY.
SELECTION-SCREEN: END OF BLOCK B2,
END OF BLOCK B1.
************************************************************************
* E V E N T : AT S E L E C T I O N - S C R E E N *
************************************************************************
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FNAME.
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
* PROGRAM_NAME = SYST-REPID
* DYNPRO_NUMBER = SYST-DYNNR
* FIELD_NAME = ' '
STATIC = 'X'
* MASK = '.'
CHANGING
FILE_NAME = P_FNAME
* EXCEPTIONS
* MASK_TOO_LONG = 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.
************************************************************************
* E V E N T : S T A R T - O F - S E L E C T I O N *
************************************************************************
START-OF-SELECTION.
* --------------------------------------
* Upload Excel file into Internal Table.
* --------------------------------------
PERFORM UPLOAD_EXCEL_FILE.
IF NOT IT_FILE_UPLOAD IS INITIAL.
* ----------------------------------------------------
* Confirm whether you want to proceed with the Upload.
* ----------------------------------------------------
PERFORM CONFIRM_UPLOAD.
IF GV_ANS EQ '1'.
* -------------------------------------------------------
* Organize the uploaded data into another Internal Table.
* -------------------------------------------------------
PERFORM ORGANIZE_UPLOADED_DATA.
* -----------------------------------
* Modify Row No. for Line Item Count.
* -----------------------------------
PERFORM MODIFY_ROW_NUMBER.
* -----------------
* Open BDC Session.
* -----------------
* PERFORM OPEN_BDC_SESSION.
* ------------------------
* Kick-start BDC Operation
* ------------------------
PERFORM BDC_OPERATION.
* ------------------
* Close BDC Session.
* ------------------
* PERFORM CLOSE_BDC_SESSION.
ENDIF.
ENDIF.
************************************************************************
* E V E N T : E N D - O F - S E L E C T I O N *
************************************************************************
END-OF-SELECTION.
*&---------------------------------------------------------------------*
*& Form UPLOAD_EXCEL_FILE
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text *----------------------------------------------------------------------* FORM UPLOAD_EXCEL_FILE . CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE' EXPORTING FILENAME = P_FNAME I_BEGIN_COL = 1 I_BEGIN_ROW = 4 I_END_COL = 107 I_END_ROW = 32000 TABLES INTERN = IT_FILE_UPLOAD EXCEPTIONS INCONSISTENT_PARAMETERS = 1 UPLOAD_OLE = 2 OTHERS = 3 . IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " UPLOAD_EXCEL_FILE
*&---------------------------------------------------------------------*
*& Form CONFIRM_UPLOAD
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text *----------------------------------------------------------------------* FORM CONFIRM_UPLOAD . CALL FUNCTION 'POPUP_TO_CONFIRM' EXPORTING TITLEBAR = 'Pop-Up to Confirm' * DIAGNOSE_OBJECT = ' ' TEXT_QUESTION = 'Do you like to proceed with the Upload ???' * TEXT_BUTTON_1 = 'Ja'(001) * ICON_BUTTON_1 = ' ' * TEXT_BUTTON_2 = 'Nein'(002) * ICON_BUTTON_2 = ' ' * DEFAULT_BUTTON = '1' * DISPLAY_CANCEL_BUTTON = 'X' * USERDEFINED_F1_HELP = ' ' * START_COLUMN = 25 * START_ROW = 6 * POPUP_TYPE = * IV_QUICKINFO_BUTTON_1 = ' ' * IV_QUICKINFO_BUTTON_2 = ' ' IMPORTING ANSWER = GV_ANS * TABLES * PARAMETER = EXCEPTIONS TEXT_NOT_FOUND = 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.
ENDFORM. " CONFIRM_UPLOAD
*&---------------------------------------------------------------------*
*& Form ORGANIZE_UPLOADED_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text *----------------------------------------------------------------------* FORM ORGANIZE_UPLOADED_DATA . DATA: LV_ROW_CNT TYPE I. CLEAR: LV_ROW_CNT. SORT IT_FILE_UPLOAD BY ROW COL. LOOP AT IT_FILE_UPLOAD. CASE IT_FILE_UPLOAD-COL. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Create Material (Initial Screen). * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 1. WA_TABDATA-MATNR = IT_FILE_UPLOAD-VALUE. WHEN 2. WA_TABDATA-MBRSH = IT_FILE_UPLOAD-VALUE. WHEN 3. WA_TABDATA-MTART = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Organizational Levels. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 4. WA_TABDATA-WERKS = IT_FILE_UPLOAD-VALUE. WHEN 5. WA_TABDATA-LGORT = IT_FILE_UPLOAD-VALUE. WHEN 6. WA_TABDATA-VKORG = IT_FILE_UPLOAD-VALUE. WHEN 7. WA_TABDATA-VTWEG = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Sales Org. 1 : Tax Classification. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 8. WA_TABDATA-TAXKM1 = IT_FILE_UPLOAD-VALUE. WHEN 9. WA_TABDATA-TAXKM2 = IT_FILE_UPLOAD-VALUE. WHEN 10. WA_TABDATA-TAXKM3 = IT_FILE_UPLOAD-VALUE. WHEN 11. WA_TABDATA-TAXKM4 = IT_FILE_UPLOAD-VALUE. WHEN 12. WA_TABDATA-TAXKM5 = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Additional Data - UoM. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 13. WA_TABDATA-UMREN1 = IT_FILE_UPLOAD-VALUE. WHEN 14. WA_TABDATA-MEINH1 = IT_FILE_UPLOAD-VALUE. WHEN 15. WA_TABDATA-UMREZ1 = IT_FILE_UPLOAD-VALUE. * ........................................................... WHEN 16. WA_TABDATA-UMREN2 = IT_FILE_UPLOAD-VALUE. WHEN 17. WA_TABDATA-MEINH2 = IT_FILE_UPLOAD-VALUE. WHEN 18. WA_TABDATA-UMREZ2 = IT_FILE_UPLOAD-VALUE. * ........................................................... WHEN 19. WA_TABDATA-UMREN3 = IT_FILE_UPLOAD-VALUE. WHEN 20. WA_TABDATA-MEINH3 = IT_FILE_UPLOAD-VALUE. WHEN 21. WA_TABDATA-UMREZ3 = IT_FILE_UPLOAD-VALUE. * ........................................................... WHEN 22. WA_TABDATA-UMREN4 = IT_FILE_UPLOAD-VALUE. WHEN 23. WA_TABDATA-MEINH4 = IT_FILE_UPLOAD-VALUE. WHEN 24. WA_TABDATA-UMREZ4 = IT_FILE_UPLOAD-VALUE. * ........................................................... WHEN 25. WA_TABDATA-UMREN5 = IT_FILE_UPLOAD-VALUE. WHEN 26. WA_TABDATA-MEINH5 = IT_FILE_UPLOAD-VALUE. WHEN 27. WA_TABDATA-UMREZ5 = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Sales Org. 1 * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 28. WA_TABDATA-VRKME = IT_FILE_UPLOAD-VALUE. WHEN 29. WA_TABDATA-DWERK = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Sales Org. 2 * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 30. WA_TABDATA-VERSG = IT_FILE_UPLOAD-VALUE. WHEN 31. WA_TABDATA-KTGRM = IT_FILE_UPLOAD-VALUE. WHEN 32. WA_TABDATA-MTPOS = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * General/Plant. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 33. WA_TABDATA-BRGEW = IT_FILE_UPLOAD-VALUE. WHEN 34. WA_TABDATA-NTGEW = IT_FILE_UPLOAD-VALUE. WHEN 35. WA_TABDATA-MTVFP = IT_FILE_UPLOAD-VALUE. WHEN 36. WA_TABDATA-TRAGR = IT_FILE_UPLOAD-VALUE. WHEN 37. WA_TABDATA-LADGR = IT_FILE_UPLOAD-VALUE. WHEN 38. WA_TABDATA-PRCTR = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Foreign Trade Export. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 39. WA_TABDATA-HERKL = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Purchasing. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 40. WA_TABDATA-BSTME = IT_FILE_UPLOAD-VALUE. WHEN 41. WA_TABDATA-KAUTB = IT_FILE_UPLOAD-VALUE. WHEN 42. WA_TABDATA-XCHPF = IT_FILE_UPLOAD-VALUE. WHEN 43. WA_TABDATA-EKGRP = IT_FILE_UPLOAD-VALUE. WHEN 44. WA_TABDATA-WEBAZ = IT_FILE_UPLOAD-VALUE. WHEN 45. WA_TABDATA-EKWSL = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Purch.Order Text. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 46. WA_TABDATA-PTEXT = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * MRP 1 * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 47. WA_TABDATA-DISGR = IT_FILE_UPLOAD-VALUE. WHEN 48. WA_TABDATA-DISMM = IT_FILE_UPLOAD-VALUE. WHEN 49. WA_TABDATA-MINBE = IT_FILE_UPLOAD-VALUE. WHEN 50. WA_TABDATA-DISPO = IT_FILE_UPLOAD-VALUE. WHEN 51. WA_TABDATA-DISLS = IT_FILE_UPLOAD-VALUE. WHEN 52. WA_TABDATA-BSTFE = IT_FILE_UPLOAD-VALUE. WHEN 53. WA_TABDATA-BSTMI = IT_FILE_UPLOAD-VALUE. WHEN 54. WA_TABDATA-BSTMA = IT_FILE_UPLOAD-VALUE. WHEN 55. WA_TABDATA-AUSSS = IT_FILE_UPLOAD-VALUE. WHEN 56. WA_TABDATA-BSTRF = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * MRP 2 * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 57. WA_TABDATA-BESKZ = IT_FILE_UPLOAD-VALUE. WHEN 58. WA_TABDATA-SOBSL = IT_FILE_UPLOAD-VALUE. WHEN 59. WA_TABDATA-LGPRO = IT_FILE_UPLOAD-VALUE. WHEN 60. WA_TABDATA-RGEKZ = IT_FILE_UPLOAD-VALUE. WHEN 61. WA_TABDATA-LGFSB = IT_FILE_UPLOAD-VALUE. WHEN 62. WA_TABDATA-DZEIT = IT_FILE_UPLOAD-VALUE. WHEN 63. WA_TABDATA-PLIFZ = IT_FILE_UPLOAD-VALUE. WHEN 64. WA_TABDATA-MRPPP = IT_FILE_UPLOAD-VALUE. WHEN 65. WA_TABDATA-FHORI = IT_FILE_UPLOAD-VALUE. WHEN 66. WA_TABDATA-EISBE = IT_FILE_UPLOAD-VALUE. WHEN 67. WA_TABDATA-WEBAZ1 = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * MRP 3 * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 68. WA_TABDATA-STRGR = IT_FILE_UPLOAD-VALUE. WHEN 69. WA_TABDATA-VRMOD = IT_FILE_UPLOAD-VALUE. WHEN 70. WA_TABDATA-VINT1 = IT_FILE_UPLOAD-VALUE. WHEN 71. WA_TABDATA-VINT2 = IT_FILE_UPLOAD-VALUE. WHEN 72. WA_TABDATA-MISKZ = IT_FILE_UPLOAD-VALUE. WHEN 73. WA_TABDATA-MTVFP1 = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * MRP 4 * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 74. WA_TABDATA-ALTSL = IT_FILE_UPLOAD-VALUE. WHEN 75. WA_TABDATA-KAUSF = IT_FILE_UPLOAD-VALUE. WHEN 76. WA_TABDATA-SBDKZ = IT_FILE_UPLOAD-VALUE. WHEN 77. WA_TABDATA-SAUFT = IT_FILE_UPLOAD-VALUE. WHEN 78. WA_TABDATA-SFEPR = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Work Scheduling. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 79. WA_TABDATA-FRTME = IT_FILE_UPLOAD-VALUE. WHEN 80. WA_TABDATA-FEVOR = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Plant Data / Stor. 1 * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 81. WA_TABDATA-AUSME = IT_FILE_UPLOAD-VALUE. WHEN 82. WA_TABDATA-MHDRZ = IT_FILE_UPLOAD-VALUE. WHEN 83. WA_TABDATA-MHDHB = IT_FILE_UPLOAD-VALUE. WHEN 84. WA_TABDATA-IPRKZ = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Quality Management. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 85. WA_TABDATA-WEBAZ2 = IT_FILE_UPLOAD-VALUE. WHEN 86. WA_TABDATA-QMPUR = IT_FILE_UPLOAD-VALUE. WHEN 87. WA_TABDATA-SSQSS = IT_FILE_UPLOAD-VALUE. WHEN 88. WA_TABDATA-QZGTP = IT_FILE_UPLOAD-VALUE. WHEN 89. WA_TABDATA-QMATV = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Inspection Setup Data. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 90. WA_TABDATA-ART1 = IT_FILE_UPLOAD-VALUE. WHEN 91. WA_TABDATA-AKTIV1 = IT_FILE_UPLOAD-VALUE. * ........................................................... WHEN 92. WA_TABDATA-ART2 = IT_FILE_UPLOAD-VALUE. WHEN 93. WA_TABDATA-AKTIV2 = IT_FILE_UPLOAD-VALUE. * ........................................................... WHEN 94. WA_TABDATA-ART3 = IT_FILE_UPLOAD-VALUE. WHEN 95. WA_TABDATA-AKTIV3 = IT_FILE_UPLOAD-VALUE. * ........................................................... WHEN 96. WA_TABDATA-ART4 = IT_FILE_UPLOAD-VALUE. WHEN 97. WA_TABDATA-AKTIV4 = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Accounting 1. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 98. WA_TABDATA-BKLAS = IT_FILE_UPLOAD-VALUE. WHEN 99. WA_TABDATA-VPRSV = IT_FILE_UPLOAD-VALUE. WHEN 100. WA_TABDATA-PEINH = IT_FILE_UPLOAD-VALUE. WHEN 101. WA_TABDATA-STPRS = IT_FILE_UPLOAD-VALUE. WHEN 102. WA_TABDATA-VERPR = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: * Cost Estimate 1. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: WHEN 103. WA_TABDATA-EKALR = IT_FILE_UPLOAD-VALUE. WHEN 104. WA_TABDATA-HKMAT = IT_FILE_UPLOAD-VALUE. WHEN 105. WA_TABDATA-AWSLS = IT_FILE_UPLOAD-VALUE. WHEN 106. WA_TABDATA-PRCTR1 = IT_FILE_UPLOAD-VALUE. WHEN 107. WA_TABDATA-LOSGR = IT_FILE_UPLOAD-VALUE. * ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ENDCASE. AT END OF ROW. LV_ROW_CNT = LV_ROW_CNT + 1. WA_TABDATA-ROWCNT = LV_ROW_CNT. APPEND WA_TABDATA TO IT_TABDATA. CLEAR: WA_TABDATA. ENDAT. ENDLOOP. ENDFORM. " ORGANIZE_UPLOADED_DATA *&---------------------------------------------------------------------* *& Form MODIFY_ROW_NUMBER *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text
* <-- p2 text *----------------------------------------------------------------------* FORM MODIFY_ROW_NUMBER . DATA: LV_ROW TYPE I. LOOP AT IT_TABDATA INTO WA_TABDATA. IF WA_TABDATA-MATNR NE SPACE. CLEAR: LV_ROW. ENDIF. LV_ROW = LV_ROW + 1. WA_TABDATA-ROW = LV_ROW. MODIFY IT_TABDATA FROM WA_TABDATA TRANSPORTING ROW. ENDLOOP. ENDFORM. " MODIFY_ROW_NUMBER *&---------------------------------------------------------------------* *& Form OPEN_BDC_SESSION *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text
* <-- p2 text *----------------------------------------------------------------------* FORM OPEN_BDC_SESSION . DATA: LV_SESSION TYPE APQ_GRPN. LV_SESSION = 'MATMAST_1'. CALL FUNCTION 'BDC_OPEN_GROUP' EXPORTING CLIENT = SY-MANDT * DEST = FILLER8 GROUP = LV_SESSION * HOLDDATE = FILLER8 KEEP = 'X' USER = SY-UNAME * RECORD = FILLER1 * PROG = SY-CPROG * IMPORTING * QID = EXCEPTIONS CLIENT_INVALID = 1 DESTINATION_INVALID = 2 GROUP_INVALID = 3 GROUP_IS_LOCKED = 4 HOLDDATE_INVALID = 5 INTERNAL_ERROR = 6 QUEUE_ERROR = 7 RUNNING = 8 SYSTEM_LOCK_ERROR = 9 USER_INVALID = 10 OTHERS = 11. IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " OPEN_BDC_SESSION
*&---------------------------------------------------------------------*
*& Form BDC_OPERATION
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text *----------------------------------------------------------------------* FORM BDC_OPERATION . LOOP AT IT_TABDATA INTO WA_TABDATA. IF WA_TABDATA-MATNR NE ''. * ------------------------------------------------------------ * Transaction Code - MM01 Create Material : Initial Screen. * ------------------------------------------------------------ PERFORM BDC_DYNPRO USING 'SAPLMGMM' '0060'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'RMMG1-MTART'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=ENTR'. PERFORM BDC_FIELD USING 'RMMG1-MATNR' WA_TABDATA-MATNR. PERFORM BDC_FIELD USING 'RMMG1-MBRSH' WA_TABDATA-MBRSH. PERFORM BDC_FIELD USING 'RMMG1-MTART' WA_TABDATA-MTART. IF WA_TABDATA-MTART NE 'ROH'. * ------------------------------------------------------------ * Transaction Code - MM01 Views Selection Screen (not ROH). * ------------------------------------------------------------ PERFORM BDC_DYNPRO USING 'SAPLMGMM' '0070'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MSICHTAUSW-DYTXT(17)'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=P+'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(04)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(05)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(06)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(07)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(09)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(11)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(12)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(13)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(14)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(15)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(16)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(17)' 'X'. PERFORM BDC_DYNPRO USING 'SAPLMGMM' '0070'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MSICHTAUSW-DYTXT(07)'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=ENTR'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(04)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(05)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(07)' 'X'. ELSE. * ------------------------------------------------------------ * Transaction Code - MM01 Views Selection Screen ( = ROH). * ------------------------------------------------------------ PERFORM BDC_DYNPRO USING 'SAPLMGMM' '0070'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MSICHTAUSW-DYTXT(16)'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=P+'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(04)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(05)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(06)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(07)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(09)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(11)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(12)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(13)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(14)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(15)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(16)' 'X'. PERFORM BDC_DYNPRO USING 'SAPLMGMM' '0070'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MSICHTAUSW-DYTXT(07)'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=ENTR'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(03)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(04)' 'X'. PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(06)' 'X'. ENDIF. * -------------------------------------------------------- * Transaction Code - MM01 Organizational Levels Screen. * -------------------------------------------------------- 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' WA_TABDATA-WERKS. PERFORM BDC_FIELD USING 'RMMG1-LGORT' WA_TABDATA-LGORT. PERFORM BDC_FIELD USING 'RMMG1-VKORG' WA_TABDATA-VKORG. PERFORM BDC_FIELD USING 'RMMG1-VTWEG' WA_TABDATA-VTWEG. * --------------------------------------------------------------------- * Transaction Code - MM01 Sales Organization 1 - Tax Classification. * --------------------------------------------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MG03STEUER-TAXKM(02)'. PERFORM BDC_FIELD USING 'MG03STEUER-TAXKM(01)' WA_TABDATA-TAXKM1. PERFORM BDC_FIELD USING 'MG03STEUER-TAXKM(02)' WA_TABDATA-TAXKM2. PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4200'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MG03STEUER-TAXKM(05)'. PERFORM BDC_FIELD USING 'MG03STEUER-TAXKM(03)' WA_TABDATA-TAXKM3. PERFORM BDC_FIELD USING 'MG03STEUER-TAXKM(04)' WA_TABDATA-TAXKM4. PERFORM BDC_FIELD USING 'MG03STEUER-TAXKM(05)' WA_TABDATA-TAXKM5. * ------------------------------------------------- * Transaction Code - MM01 Additional Data - UoM. * ------------------------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=ZU01'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MAKT-MAKTX'. PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4300'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=ZU02'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'RMMG1-MATNR'. PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4300'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'SMEINH-UMREZ(06)'. PERFORM BDC_FIELD USING 'SMEINH-UMREN(02)' WA_TABDATA-UMREN1. PERFORM BDC_FIELD USING 'SMEINH-MEINH(02)' WA_TABDATA-MEINH1. PERFORM BDC_FIELD USING 'SMEINH-UMREZ(02)' WA_TABDATA-UMREZ1. PERFORM BDC_FIELD USING 'SMEINH-UMREN(03)' WA_TABDATA-UMREN2. PERFORM BDC_FIELD USING 'SMEINH-MEINH(03)' WA_TABDATA-MEINH2. PERFORM BDC_FIELD USING 'SMEINH-UMREZ(03)' WA_TABDATA-UMREZ2. PERFORM BDC_FIELD USING 'SMEINH-UMREN(04)' WA_TABDATA-UMREN3. PERFORM BDC_FIELD USING 'SMEINH-MEINH(04)' WA_TABDATA-MEINH3. PERFORM BDC_FIELD USING 'SMEINH-UMREZ(04)' WA_TABDATA-UMREZ3. PERFORM BDC_FIELD USING 'SMEINH-UMREN(05)' WA_TABDATA-UMREN4. PERFORM BDC_FIELD USING 'SMEINH-MEINH(05)' WA_TABDATA-MEINH4. PERFORM BDC_FIELD USING 'SMEINH-UMREZ(05)' WA_TABDATA-UMREZ4. PERFORM BDC_FIELD USING 'SMEINH-UMREN(06)' WA_TABDATA-UMREN5. PERFORM BDC_FIELD USING 'SMEINH-MEINH(06)' WA_TABDATA-MEINH5. PERFORM BDC_FIELD USING 'SMEINH-UMREZ(06)' WA_TABDATA-UMREZ5. PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4300'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=MAIN'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MAKT-MAKTX'. * ------------------------------------------------ * Transaction Code - MM01 Sales Organization 1. * ------------------------------------------------ PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MVKE-DWERK'. PERFORM BDC_FIELD USING 'MVKE-VRKME' WA_TABDATA-VRKME. PERFORM BDC_FIELD USING 'MVKE-DWERK' WA_TABDATA-DWERK. * ------------------------------------------------ * Transaction Code - MM01 Sales Organization 2. * ------------------------------------------------ PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MVKE-MTPOS'. PERFORM BDC_FIELD USING 'MVKE-VERSG' WA_TABDATA-VERSG. PERFORM BDC_FIELD USING 'MVKE-KTGRM' WA_TABDATA-KTGRM. PERFORM BDC_FIELD USING 'MVKE-MTPOS' WA_TABDATA-MTPOS. * ------------------------------------------- * Transaction Code - MM01 General / Plant. * ------------------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'MARA-BRGEW' WA_TABDATA-BRGEW. PERFORM BDC_FIELD USING 'MARA-NTGEW' WA_TABDATA-NTGEW. PERFORM BDC_FIELD USING 'MARC-MTVFP' WA_TABDATA-MTVFP. PERFORM BDC_FIELD USING 'MARA-TRAGR' WA_TABDATA-TRAGR. PERFORM BDC_FIELD USING 'MARC-LADGR' WA_TABDATA-LADGR. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MARC-PRCTR'. PERFORM BDC_FIELD USING 'MARC-PRCTR' WA_TABDATA-PRCTR. * ------------------------------------------------ * Transaction Code - MM01 Foreign Trade Export. * ------------------------------------------------ PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4004'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MARC-HERKL'. PERFORM BDC_FIELD USING 'MARC-HERKL' WA_TABDATA-HERKL. * -------------------------------------- * Transaction Code - MM01 Purchasing. * -------------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MARC-EKGRP'. PERFORM BDC_FIELD USING 'MARA-BSTME' WA_TABDATA-BSTME. PERFORM BDC_FIELD USING 'MARC-KAUTB' WA_TABDATA-KAUTB. PERFORM BDC_FIELD USING 'MARC-XCHPF' WA_TABDATA-XCHPF. PERFORM BDC_FIELD USING 'MARC-EKGRP' WA_TABDATA-EKGRP. PERFORM BDC_FIELD USING 'MARC-WEBAZ' WA_TABDATA-WEBAZ. PERFORM BDC_FIELD USING 'MARA-EKWSL' WA_TABDATA-EKWSL. * ----------------------------------------------- * Transaction Code - MM01 Purchase Order Text. * ----------------------------------------------- * PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4040'. * PERFORM BDC_FIELD USING 'BDC_OKCODE' '=LTEX'. * * PERFORM BDC_DYNPRO USING 'SAPLSTXX' '1100'. * PERFORM BDC_FIELD USING 'BDC_CURSOR' 'RSTXT-TXLINE(02)'. * PERFORM BDC_FIELD USING 'BDC_OKCODE' '=TXBA'. * PERFORM BDC_FIELD USING 'RSTXT-TXLINE(02)' WA_TABDATA-PTEXT. * * PERFORM BDC_DYNPRO USING 'SAPLSPO1' '0100'. * PERFORM BDC_FIELD USING 'BDC_OKCODE' '=YES'. PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4040'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=SP12'. * --------------------------------- * Transaction Code - MM01 MRP 1. * --------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'MARC-DISGR' WA_TABDATA-DISGR. PERFORM BDC_FIELD USING 'MARC-DISMM' WA_TABDATA-DISMM. PERFORM BDC_FIELD USING 'MARC-MINBE' WA_TABDATA-MINBE. PERFORM BDC_FIELD USING 'MARC-DISPO' WA_TABDATA-DISPO. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MARC-BSTRF'. PERFORM BDC_FIELD USING 'MARC-DISLS' WA_TABDATA-DISLS. PERFORM BDC_FIELD USING 'MARC-BSTFE' WA_TABDATA-BSTFE. PERFORM BDC_FIELD USING 'MARC-BSTMI' WA_TABDATA-BSTMI. PERFORM BDC_FIELD USING 'MARC-BSTMA' WA_TABDATA-BSTMA. PERFORM BDC_FIELD USING 'MARC-AUSSS' WA_TABDATA-AUSSS. PERFORM BDC_FIELD USING 'MARC-BSTRF' WA_TABDATA-BSTRF. * --------------------------------- * Transaction Code - MM01 MRP 2. * --------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' 'SP14'. PERFORM BDC_FIELD USING 'MARC-BESKZ' WA_TABDATA-BESKZ. PERFORM BDC_FIELD USING 'MARC-SOBSL' WA_TABDATA-SOBSL. PERFORM BDC_FIELD USING 'MARC-LGPRO' WA_TABDATA-LGPRO. PERFORM BDC_FIELD USING 'MARC-RGEKZ' WA_TABDATA-RGEKZ. PERFORM BDC_FIELD USING 'MARC-LGFSB' WA_TABDATA-LGFSB. PERFORM BDC_FIELD USING 'MARC-DZEIT' WA_TABDATA-DZEIT. PERFORM BDC_FIELD USING 'MARC-PLIFZ' WA_TABDATA-PLIFZ. PERFORM BDC_FIELD USING 'MARC-MRPPP' WA_TABDATA-MRPPP. PERFORM BDC_FIELD USING 'MARC-FHORI' WA_TABDATA-FHORI. PERFORM BDC_FIELD USING 'MARC-EISBE' WA_TABDATA-EISBE. IF WA_TABDATA-WEBAZ EQ ''. PERFORM BDC_FIELD USING 'MARC-WEBAZ' WA_TABDATA-WEBAZ1. ENDIF. * --------------------------------- * Transaction Code - MM01 MRP 3. * --------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' 'SP15'. PERFORM BDC_FIELD USING 'MARC-STRGR' WA_TABDATA-STRGR. PERFORM BDC_FIELD USING 'MARC-VRMOD' WA_TABDATA-VRMOD. PERFORM BDC_FIELD USING 'MARC-VINT1' WA_TABDATA-VINT1. PERFORM BDC_FIELD USING 'MARC-VINT2' WA_TABDATA-VINT2. PERFORM BDC_FIELD USING 'MARC-MISKZ' WA_TABDATA-MISKZ. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MARC-MTVFP'. IF WA_TABDATA-MTVFP EQ ''. PERFORM BDC_FIELD USING 'MARC-MTVFP' WA_TABDATA-MTVFP1. ENDIF. * --------------------------------- * Transaction Code - MM01 MRP 4. * --------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'MARC-ALTSL' WA_TABDATA-ALTSL. PERFORM BDC_FIELD USING 'MARC-KAUSF' WA_TABDATA-KAUSF. PERFORM BDC_FIELD USING 'MARC-SBDKZ' WA_TABDATA-SBDKZ. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MARC-SFEPR'. PERFORM BDC_FIELD USING 'MARC-SAUFT' WA_TABDATA-SAUFT. PERFORM BDC_FIELD USING 'MARC-SFEPR' WA_TABDATA-SFEPR. IF WA_TABDATA-MTART NE 'ROH'. * ------------------------------------------- * Transaction Code - MM01 Work Scheduling. * ------------------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MARC-FEVOR'. PERFORM BDC_FIELD USING 'MARC-FRTME' WA_TABDATA-FRTME. PERFORM BDC_FIELD USING 'MARC-FEVOR' WA_TABDATA-FEVOR. ENDIF. * ------------------------------------------------ * Transaction Code - MM01 Plant Data / Stor. 1. * ------------------------------------------------ PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'MARC-AUSME' WA_TABDATA-AUSME. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MARA-IPRKZ'. PERFORM BDC_FIELD USING 'MARA-MHDRZ' WA_TABDATA-MHDRZ. PERFORM BDC_FIELD USING 'MARA-MHDHB' WA_TABDATA-MHDHB. PERFORM BDC_FIELD USING 'MARA-IPRKZ' WA_TABDATA-IPRKZ. * ---------------------------------------------- * Transaction Code - MM01 Quality Management. * ---------------------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=PB01'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MARC-QZGTP'. PERFORM BDC_FIELD USING 'MARC-WEBAZ' WA_TABDATA-WEBAZ2. PERFORM BDC_FIELD USING 'MARA-QMPUR' WA_TABDATA-QMPUR. PERFORM BDC_FIELD USING 'MARC-SSQSS' WA_TABDATA-SSQSS. PERFORM BDC_FIELD USING 'MARC-QZGTP' WA_TABDATA-QZGTP. IF WA_TABDATA-QMATV EQ 'X'. * ------------------------------------------------- * Transaction Code - MM01 Inspection Setup Data. * ------------------------------------------------- PERFORM BDC_DYNPRO USING 'SAPLQPLS' '0100'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'RMQAM-ARGUMENT'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=NEU'. PERFORM BDC_DYNPRO USING 'SAPLQPLS' '0100'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'RMQAM-AKTIV(04)'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=WEIT'. PERFORM BDC_FIELD USING 'RMQAM-ART(01)' WA_TABDATA-ART1. PERFORM BDC_FIELD USING 'RMQAM-AKTIV(01)' WA_TABDATA-AKTIV1. PERFORM BDC_FIELD USING 'RMQAM-ART(02)' WA_TABDATA-ART2. PERFORM BDC_FIELD USING 'RMQAM-AKTIV(02)' WA_TABDATA-AKTIV2. PERFORM BDC_FIELD USING 'RMQAM-ART(03)' WA_TABDATA-ART3. PERFORM BDC_FIELD USING 'RMQAM-AKTIV(03)' WA_TABDATA-AKTIV3. PERFORM BDC_FIELD USING 'RMQAM-ART(04)' WA_TABDATA-ART4. PERFORM BDC_FIELD USING 'RMQAM-AKTIV(04)' WA_TABDATA-AKTIV4. PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MAKT-MAKTX'. ENDIF. * ---------------------------------------- * Transaction Code - MM01 Accounting 1. * ---------------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=SP26'. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MBEW-BKLAS'. PERFORM BDC_FIELD USING 'MBEW-BKLAS' WA_TABDATA-BKLAS. PERFORM BDC_FIELD USING 'MBEW-VPRSV' WA_TABDATA-VPRSV. PERFORM BDC_FIELD USING 'MBEW-PEINH' WA_TABDATA-PEINH. PERFORM BDC_FIELD USING 'MBEW-STPRS' WA_TABDATA-STPRS. PERFORM BDC_FIELD USING 'MBEW-VERPR' WA_TABDATA-VERPR. * ------------------------------------------- * Transaction Code - MM01 Cost Estimate 1. * ------------------------------------------- PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4000'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '/00'. PERFORM BDC_FIELD USING 'MBEW-EKALR' WA_TABDATA-EKALR. PERFORM BDC_FIELD USING 'MBEW-HKMAT' WA_TABDATA-HKMAT. IF WA_TABDATA-MTART NE 'ROH'. PERFORM BDC_FIELD USING 'MARC-AWSLS' WA_TABDATA-AWSLS. ENDIF. PERFORM BDC_FIELD USING 'MARC-PRCTR' WA_TABDATA-PRCTR1. PERFORM BDC_FIELD USING 'BDC_CURSOR' 'MARC-LOSGR'. PERFORM BDC_FIELD USING 'MARC-LOSGR' WA_TABDATA-LOSGR. * ------------------------------------------ * Transaction Code - MM01 Saving of Data. * ------------------------------------------ PERFORM BDC_DYNPRO USING 'SAPLSPO1' '0300'. PERFORM BDC_FIELD USING 'BDC_OKCODE' '=YES'. * ------------------------------------------ * Call Transaction - MM01 to create Routing. * ------------------------------------------ CALL TRANSACTION 'MM01' USING BDCDATA MODE 'E' UPDATE 'A' MESSAGES INTO MSGTAB. CLEAR: BDCDATA. REFRESH BDCDATA. ENDIF. ENDLOOP. ENDFORM. " BDC_OPERATION *&---------------------------------------------------------------------* *& Form CLOSE_BDC_SESSION *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text
* <-- p2 text *----------------------------------------------------------------------* FORM CLOSE_BDC_SESSION . CALL FUNCTION 'BDC_CLOSE_GROUP' EXCEPTIONS NOT_OPEN = 1 QUEUE_ERROR = 2 OTHERS = 3. IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " CLOSE_BDC_SESSION
*&---------------------------------------------------------------------*
*& Form BDC_DYNPRO
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->PROGRAM text
* -->DYNPRO text
*----------------------------------------------------------------------*
FORM BDC_DYNPRO USING PROGRAM
DYNPRO.
CLEAR: BDCDATA.
BDCDATA-PROGRAM = PROGRAM.
BDCDATA-DYNPRO = DYNPRO.
BDCDATA-DYNBEGIN = 'X'.
APPEND BDCDATA.
ENDFORM. " BDC_DYNPRO
*&---------------------------------------------------------------------*
*& Form BDC_FIELD
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->FNAM text
* -->FVAL text
*----------------------------------------------------------------------*
FORM BDC_FIELD USING FNAM
FVAL.
CLEAR: BDCDATA.
BDCDATA-FNAM = FNAM.
BDCDATA-FVAL = FVAL.
APPEND BDCDATA.
ENDFORM. " BDC_FIELD


No comments:

Post a Comment