Skip to Content
author's profile photo Former Member
Former Member

bdc

hello experts

MM01 data upload with all views

points for sure

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

4 Answers

  • Posted on Jun 07, 2007 at 08:37 AM

    Check the links -

    bdc----mm01

    mm01-bdc

    mm01

    You can use BAPI also instead of BDC -

    bapi-to-create-materials-mm01

    Regards,

    Amit

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jun 07, 2007 at 10:01 AM

    hi

    good

    go through this link,hope this would help you to solve your problem

    http://www.erpgenie.com/ecatt/index.htm

    thanks

    mrutyun^

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jun 07, 2007 at 01:53 PM

    Hi,

    You can use eCATT for Master data upload.

    All that you need to do is records the transaction MM01 by selelecting all the views. Then create variants/Load test data from file.then run the script aganist the test data created.With i a time eCATT will help u creating all the materails you want.

    for more information about eCATT please go tru the links below,

    http://help.sap.com/saphelp_nw04/helpdata/en/1b/e81c3b84e65e7be10000000a11402f/frameset.htm

    http://www.erpgenie.com/ecatt/index.htm

    http://saptechnical.com/Tutorials/eCATT/eCATTMain.htm

    http://prasadbabu.blogspot.com

    If you want to do it in ABAP using BDC let me know.

    i can help you out in this.

    Reward if it Helps.

    -Manjula P

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jun 08, 2007 at 03:53 AM

    hi,

    ***This is a BDC for Semi finished Materials*******

    report ZBDC_SEMIFIN

    no standard page heading line-size 255.

    include bdcrecx1.

    Tables: Mara,"General Material Data

    mard,"Storage Location Data for Material

    mvke,"Sales Data for Material

    Makt,"Material Descriptions

    marc,"Plant Data for Material

    mbew,"Material Valuation

    rlgrap."Program Fields/Screen Fields for SAPLGRAP

    Data: begin of ITAB occurs 0,"Internal table for Semi-Finished Material

    • Initial data

    matnr like mara-matnr, "Material Code

    mbrsh like mara-mbrsh, "Industry Data

    mtart like mara-mtart, "Material Type

    • Org Data

    Werks like marc-werks, "Plant

    lgort like mard-lgort, "Storage Location

    vkorg like mvke-vkorg, "Sales Orgnization

    vtweg like mvke-vtweg, "Distribution Chanel

    • Basic 1

    Maktx Like makt-maktx, "Description

    meins like mara-meins, "Uom

    matkl like mara-matkl, "Material Group

    BISMT LIKE MARA-BISMT, " Old Material Number

    spart like mara-spart, "Division

    brgew(7),"like mara-brgew, "Gross Weight

    gewei like MARA-GEWEI, "Weight Unit

    ntgew(7)," like mara-ntgew, "Net Weight

    • Purchasing

    MAKTL LIKE MARA-MATKL, "Material Group

    ekwsl like MARA-EKWSL, " Purchasing Value Key

    ekgrp like MARC-EKGRP, " Purchasing Group

    • Mrp 1

    disgr like MARC-DISGR, "Mrp Group

    • ekgrp like MARC-EKGRP, "Purchasing group

    dismm like MARC-DISMM, "Mrp Type

    dispo like MARC-DISPO, "Mrp Controller

    disls like MARC-DISLS, "Lot Size

    BSTMI like MARC-BSTMI,

    BSTMA like MARC-BSTMA,

    BSTRF like MARC-BSTRF,

    BSTFE like MARC-BSTFE,

    • Mrp 2

    beskz like MARC-BESKZ, "Procurement type

    lgpro like MARC-LGPRO, "Production Storage Location

    dzeit(3),"like MARC-DZEIT, "In house Production time

    plifz(3),"like MARC-PLIFZ, "Planned delivery time

    fhori(3),"like MARC-FHORI, "Sched margin key

    eisbe like MARC-EISBE, "Safety stock

    • Mrp 3

    PERKZ LIKE MARC-PERKZ,

    vrmod like MARC-VRMOD, "Consumption mode

    vint1(3)," like MARC-VINT1, "Backward Consumption period

    vint2(3),"like MARC-VINT2, "Forward Consumption period

    mtvfp like MARC-MTVFP, "Availability Check

    • Mrp 4

    sbdkz like MARC-SBDKZ, "Individual/ Collective

    SAUFT like MARC-SAUFT, "Repetitive Manufacturing

    SFEPR like MARC-SFEPR, "REM Profile

    • Work Scheduling View

    ausme like MARC-AUSME, "Unit of issue

    FEVOR LIKE MARC-FEVOR, "Production Scheduler

    SFCPF like MARC-SFCPF, "Production Scheduler Profile

    umren(5)," like RMMZU-UMREN, "Val for base uom

    umrez(5) ,"like RMMZU-UMREz, "Value for uo issue

    • Accounting 1

    bklas like MBEW-BKLAS, "Valuation Class

    vprsv like MBEW-VPRSV, "Price Control Indicator

    verpr(7)," like MBEW-VERPR, "Value/Price

    STPRS like MBEW-STPRS,

    *COSTING

    EKALR LIKE MBEW-EKALR," With qty str

    LOSGR like MARC-LOSGR, " Costing Lot size

    end of ITAB.

    **********************************************************

    Data: W_record type I, "Record Allready exists.

    w_trecord type I. "Total record processed

    start-of-selection.

    perform upload. "Upload Data from Text File

    Perform Open_group. "Create a session

    clear : w_record,w_trecord.

    perform semi. "Create Semi Finish Materials

    if w_trecord gt 0 or w_record gt 0.

    perform batch_job.

    endif.

    perform close_group. "Close session

    FORM SEMI.

    loop at ITAB.

    • Check for material in master *************************

    select single * from mara where matnr eq ITAB-matnr.

    if sy-subrc ne 0.

    w_trecord = w_trecord + 1.

    *Initial Screen

    perform bdc_dynpro using 'SAPLMGMM' '0060'.

    perform bdc_field using 'BDC_CURSOR'

    'RMMG1-MTART'.

    perform bdc_field using 'BDC_OKCODE'

    '=AUSW'.

    perform bdc_field using 'RMMG1-MATNR'

    ITAB-MATNR.

    perform bdc_field using 'RMMG1-MBRSH'

    'M'.

    perform bdc_field using 'RMMG1-MTART'

    'HALB'.

    **********************Views*********************************

    *Select Views

    perform bdc_dynpro using 'SAPLMGMM' '0070'.

    perform bdc_field using 'BDC_CURSOR'

    'MSICHTAUSW-DYTXT(17'.

    perform bdc_field using 'BDC_OKCODE'

    '/00'.

    perform bdc_field using 'MSICHTAUSW-KZSEL(01)'

    'X'.

    perform bdc_field using 'MSICHTAUSW-KZSEL(09)'

    '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(17)'

    'X'.

    **********************Views*********************************

    *perform bdc_dynpro using 'SAPLMGMM' '0070'.

    *perform bdc_field using 'BDC_CURSOR'

    • 'MSICHTAUSW-DYTXT(01)'.

    *perform bdc_field using 'BDC_OKCODE'

    • '/00'.

    *perform bdc_dynpro using 'SAPLMGMM' '0070'.

    *perform bdc_field using 'BDC_CURSOR'

    • 'MSICHTAUSW-DYTXT(17)'.

    *perform bdc_field using 'BDC_OKCODE'

    • '/00'.

    *perform bdc_field using 'MSICHTAUSW-KZSEL(17)'

    • ITAB-KZSEL_17_011.

    *perform bdc_dynpro using 'SAPLMGMM' '0070'.

    *perform bdc_field using 'BDC_CURSOR'

    • 'MSICHTAUSW-DYTXT(01)'.

    *perform bdc_field using 'BDC_OKCODE'

    • '/00'.

    *perform bdc_dynpro using 'SAPLMGMM' '0070'.

    *perform bdc_field using 'BDC_CURSOR'

    • 'MSICHTAUSW-DYTXT(13)'.

    *perform bdc_field using 'BDC_OKCODE'

    • '=ENTR'.

    *perform bdc_field using 'MSICHTAUSW-KZSEL(13)'

    • ITAB-KZSEL_13_012.

    *Org Data

    perform bdc_dynpro using 'SAPLMGMM' '0080'.

    perform bdc_field using 'BDC_CURSOR'

    'RMMG1-LGORT'.

    perform bdc_field using 'BDC_OKCODE'

    '=ENTR'.

    perform bdc_field using 'RMMG1-WERKS'

    ITAB-WERKS.

    perform bdc_field using 'RMMG1-LGORT'

    ITAB-LGORT.

    *Basic 1

    perform bdc_dynpro using 'SAPLMGMM' '4004'.

    perform bdc_field using 'BDC_OKCODE'

    '=SP09'.

    perform bdc_field using 'MAKT-MAKTX'

    ITAB-MAKTX.

    perform bdc_field using 'MARA-MEINS'

    ITAB-MEINS.

    perform bdc_field using 'MARA-MATKL'

    ITAB-MATKL.

    perform bdc_field using 'MARA-BISMT'

    ITAB-BISMT.

    perform bdc_field using 'MARA-SPART'

    ITAB-SPART.

    perform bdc_field using 'MARA-MTPOS_MARA'

    'NORM'.

    perform bdc_field using 'BDC_CURSOR'

    'MARA-NTGEW'.

    perform bdc_field using 'MARA-BRGEW'

    ITAB-BRGEW.

    perform bdc_field using 'MARA-GEWEI'

    ITAB-GEWEI.

    perform bdc_field using 'MARA-NTGEW'

    ITAB-NTGEW.

    *Purchasing

    perform bdc_dynpro using 'SAPLMGMM' '4000'.

    perform bdc_field using 'BDC_OKCODE'

    '=SP12'.

    perform bdc_field using 'MAKT-MAKTX'

    ITAB-MAKTX.

    perform bdc_field using 'MARA-MEINS'

    ITAB-MEINS.

    perform bdc_field using 'MARC-EKGRP'

    ITAB-EKGRP.

    perform bdc_field using 'MARA-MATKL'

    ITAB-MATKL.

    perform bdc_field using 'BDC_CURSOR'

    'MARA-EKWSL'.

    perform bdc_field using 'MARA-EKWSL'

    ITAB-EKWSL.

    *MRP 1

    perform bdc_dynpro using 'SAPLMGMM' '4000'.

    perform bdc_field using 'BDC_OKCODE'

    '=SP13'.

    perform bdc_field using 'MAKT-MAKTX'

    ITAB-MAKTX.

    perform bdc_field using 'MARA-MEINS'

    ITAB-MEINS.

    perform bdc_field using 'MARC-EKGRP'

    ITAB-EKGRP.

    perform bdc_field using 'MARC-DISMM'

    ITAB-DISMM.

    perform bdc_field using 'MARC-DISPO'

    ITAB-DISPO.

    perform bdc_field using 'BDC_CURSOR'

    'MARC-DISLS'.

    perform bdc_field using 'MARC-DISLS'

    ITAB-DISLS.

    IF ITAB-DISLS EQ 'EX' .

    perform bdc_field using 'MARC-BSTMI'

    ITAB-BSTMI."MIN LOT SIZE

    perform bdc_field using 'MARC-BSTMA'

    ITAB-BSTMA."MAX LOT SIZE

    perform bdc_field using 'MARC-BSTRF'

    ITAB-BSTRF."RNDING

    ELSEIF ITAB-DISLS EQ 'FX'.

    perform bdc_field using 'MARC-BSTFE'

    ITAB-BSTFE.

    ENDIF.

    *MRP 2

    perform bdc_dynpro using 'SAPLMGMM' '4000'.

    perform bdc_field using 'BDC_OKCODE'

    '=SP14'.

    perform bdc_field using 'MAKT-MAKTX'

    ITAB-MAKTX.

    perform bdc_field using 'MARC-BESKZ'

    ITAB-BESKZ.

    perform bdc_field using 'MARC-LGPRO'

    ITAB-LGPRO.

    perform bdc_field using 'MARC-DZEIT'

    ITAB-DZEIT.

    perform bdc_field using 'MARC-PLIFZ'

    ITAB-PLIFZ.

    perform bdc_field using 'MARC-FHORI'

    ITAB-FHORI.

    perform bdc_field using 'BDC_CURSOR'

    'MARC-EISBE'.

    perform bdc_field using 'MARC-EISBE'

    ITAB-EISBE.

    *MRP 3

    perform bdc_dynpro using 'SAPLMGMM' '4000'.

    perform bdc_field using 'BDC_OKCODE'

    '=SP15'.

    perform bdc_field using 'MAKT-MAKTX'

    ITAB-MAKTX.

    perform bdc_field using 'MARC-PERKZ'

    ITAB-PERKZ.

    perform bdc_field using 'MARC-VRMOD'

    ITAB-VRMOD.

    perform bdc_field using 'MARC-VINT1'

    ITAB-VINT1.

    perform bdc_field using 'MARC-VINT2'

    ITAB-VINT2.

    perform bdc_field using 'BDC_CURSOR'

    'MARC-MTVFP'.

    perform bdc_field using 'MARC-MTVFP'

    ITAB-MTVFP.

    *MRP 4

    perform bdc_dynpro using 'SAPLMGMM' '4000'.

    perform bdc_field using 'BDC_OKCODE'

    '=SP17'.

    perform bdc_field using 'MAKT-MAKTX'

    ITAB-MAKTX.

    perform bdc_field using 'MARC-SBDKZ'

    ITAB-SBDKZ.

    perform bdc_field using 'BDC_CURSOR'

    'MARC-SFEPR'.

    perform bdc_field using 'MARC-SAUFT'

    ITAB-SAUFT.

    perform bdc_field using 'MARC-SFEPR'

    ITAB-SFEPR.

    *Work Scheduling

    perform bdc_dynpro using 'SAPLMGMM' '4000'.

    perform bdc_field using 'BDC_OKCODE'

    '=SP24'.

    perform bdc_field using 'MAKT-MAKTX'

    ITAB-MAKTX.

    perform bdc_field using 'BDC_CURSOR'

    'MARC-SFCPF'.

    perform bdc_field using 'MARA-MEINS'

    ITAB-MEINS.

    perform bdc_field using 'MARC-FEVOR'

    ITAB-FEVOR.

    perform bdc_field using 'MARC-LGPRO'

    ITAB-LGPRO.

    perform bdc_field using 'MARC-SFCPF'

    ITAB-SFCPF.

    perform bdc_field using 'MARC-DZEIT'

    ITAB-DZEIT.

    *Check for Conversation Factor

    if ITAB-MEINS ne iTAB-ausme and iTAB-umren gt 0

    and iTAB-umrez gt 0.

    perform bdc_dynpro using 'SAPLMGMM' '0510'.

    perform bdc_field using:

    'BDC_OKCODE' '=ENTR',

    'RMMZU-UMREN' ITAB-UMREN,

    'RMMZU-UMREZ' ITAB-UMREZ.

    endif.

    perform bdc_field using 'MARC-LGPRO'

    itab-LGPRO.

    perform bdc_field using 'MARC-DZEIT'

    itab-DZEIT.

    *Accounting

    perform bdc_dynpro using 'SAPLMGMM' '4000'.

    perform bdc_field using 'BDC_OKCODE'

    '=SP26'.

    perform bdc_field using 'MAKT-MAKTX'

    ITAB-MAKTX.

    perform bdc_field using 'MARA-MEINS'

    ITAB-MEINS.

    perform bdc_field using 'MARA-SPART'

    ITAB-SPART.

    perform bdc_field using 'BDC_CURSOR'

    'MBEW-STPRS'.

    perform bdc_field using 'MBEW-BKLAS'

    ITAB-BKLAS.

    perform bdc_field using 'MBEW-VPRSV'

    ITAB-VPRSV.

    perform bdc_field using 'MBEW-STPRS'

    ITAB-STPRS.

    IF ITAB-VPRSV = 'S'.

    perform bdc_field using 'MBEW-STPRS' "FILLS STD PRICE

    ITAB-VERPR.

    ELSEIF ITAB-VPRSV ='V'.

    perform bdc_field using 'MBEW-VERPR' "FILLS VALUE

    ITAB-VERPR.

    ENDIF.

    *Cost Estimate

    perform bdc_dynpro using 'SAPLMGMM' '4000'.

    perform bdc_field using 'BDC_OKCODE'

    '=BU'.

    perform bdc_field using 'MAKT-MAKTX'

    ITAB-MAKTX.

    perform bdc_field using 'BDC_CURSOR'

    'MARC-PRCTR'.

    perform bdc_field using 'MARA-MEINS'

    ITAB-MEINS.

    perform bdc_field using 'MBEW-EKALR'

    ITAB-EKALR.

    perform bdc_field using 'MARC-LOSGR'

    ITAB-LOSGR.

    perform bdc_transaction using 'MM01'.

    REFRESH BDCDATA.

    • *************************************************************

    else.

    w_record = w_record + 1.

    endif.

    ENDLOOP.

    ENDFORM.

    form Upload.

    CALL FUNCTION 'UPLOAD'

    EXPORTING

    CODEPAGE = ' '

    FILENAME = ' '

    FILETYPE = ' '

    TABLES

    DATA_TAB = ITAB

    EXCEPTIONS

    CONVERSION_ERROR = 1

    INVALID_TABLE_WIDTH = 2

    INVALID_TYPE = 3

    NO_BATCH = 4

    UNKNOWN_ERROR = 5

    GUI_REFUSE_FILETRANSFER = 6

    OTHERS = 7.

    ENDFORM.

    form batch_job.

    uline.

    format color col_heading.

    if w_trecord gt 0.

    Write:/ 'Background Job has been Created for ',

    w_trecord right-justified, 'Semi-Fin', 80 ''.

    write:/ 'Please follow the following steps to run this job',

    80 ''.

    write:/ 'as listed below.', 80 ''.

    format color col_normal.

    skip.

    write:/05 '1.Goto Transaction SM35', 80 ''.

    write:/05 '2.Select your Session Name', 80 ''.

    write:/05 '3.Click On Execute Button', 80 ''.

    endif.

    if w_record gt 0.

    format color col_negative.

    write:/ w_record ,'records already existed', 80 ''.

    format color off.

    endif.

    uline.

    endform.

    Look at the below code for MM01

    http://www.sap-img.com/abap/example-how-views-are-dealt-in-bdc.htm

    You have + button in the MK01 trasaction code, if you press that you

    can enter new record in the table control, so every time, enter a New

    record and press that + button, then enter the record then press + , like this we need to handle the table control

    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.