Inbound process for material master

hi abapers,
i have on req my req is iam sending material master from one server to other server..
in inbound side i want to do mapping for materials,
like matetial type 'FERT' in sending  system ,in receving side this material type should be 'HAWA'.
like this kind of mapping i need to do.,   for this i found one badi 'badi_matmas_alv_in'.
In this badi there are 'idoc_control' and 'idoc_data'  exporting parameters and in changing parametes 'material tables' are there, now i did mapping passed values to different tables .
upto now is fine but  probelms what i face is
1. The changed records  are not updating in database.
so how the cding should should be done in inbound side ,,
any other exits or any sol's plaese let me know..

thanks prabhu,
here i found one exit 'MGV00001'
in that there two fm's 'EXIT_SAPLMV02_002' Enhancements in Material Master: IDoc - Post
here i want testing this by putting break point init .and going to we19 giving the idoc no executing in begguing mode in foreground,
but here this exit is not triggering, see below code of idoc_input_matmas01.
PERFORM CHECK_USER_EXIT TABLES T_EDIDD       " zu 3.1H
                                         USER_SEGMENTS
                                  USING  CURRENT_TABIX.
          LOOP AT USER_SEGMENTS.
            REFRESH T_RES_FIELDS.
            SY-SUBRC = 0.
            CALL CUSTOMER-FUNCTION '002'
                EXPORTING
                     MESSAGE_TYPE      = IDOC_CONTRL-MESTYP
                     F_CUST_SEGMENT    = USER_SEGMENTS
                TABLES
                     RES_FIELDS        = T_RES_FIELDS
                CHANGING
                     F_MARA_UEB        = I_MARA_UEB
                EXCEPTIONS
                     APPLICATION_ERROR = 1
                     OTHERS            = 2.
            IF SY-SUBRC NE 0.
              APPLICATION_SUBRC = SY-SUBRC.
              PERFORM HANDLE_ERROR
                          TABLES
                             IDOC_CONTRL
                             IDOC_STATUS
                             RETURN_VARIABLES
                             T_MERRDAT
                             T_IDOC_MATNR     "JH/4.0C/KPr100004993
                          USING
                             APPLICATION_SUBRC
                          CHANGING
                             WORKFLOW_RESULT.
              EXIT.
            ENDIF.
            APPEND_RESFIELDS COUNTER-TRANC.
          ENDLOOP.
here it is checking user segments table ,and when i exexuted this code it show empty,for this reason it is not going to  the exit.
just see it and help me..

Similar Messages

  • Release process for Material Master, Vendor master creation

    Hi Sap Gurus,
    We currently have a business process where in a particular User / Dep't collects the field values for Master data creation. the requirement is untill an verifier (releasing authority) releases it, the material must not be put to use.
    is there an release process which could be built for Master data creation in SAP, please suggest how to go about to meet this requirement.
    some Options iam thinking are.
    Locking or Blocking for use Initiallly by the creator, and the verifier Unlocks or Releases it.
    1) Say the creater creates and locks the material master after creation. but i did not find any authorization object for Locking / blocking the material separately,so the is problem what if the initial user creates the material and did not Lock the same, this is the issue with this solution
    can this be configured / automated that, with the Creator User ID, the material  getting created always gets to the Locked status / Blocked status.
    and the same material is Unlocked by the Verifier User ID.
    Please suggest how this can be done with Fool proof solution, May be with Standard or slight development if required
    Thanks and regards
    Priya S

    Thanks for your quick reply rahul,
    But the Issue is there should be 2 People for the complete creation of Material master. one should place the values and the other should verify the value and release.
    The material should not be created or put to use untill the it is released by the Verifier.
    and i could not find any authorization object resticting the creator for blocking or locking the material master, with out actually creating the same.
    ( the creator should only have the authorization for blocking or Locking the material, or when ever the material is getting created by the Creator it should go to the Locked status or Blocked status)
    The releaser can then go and release the same. wold expect the nearest possibility with out big development.
    and if it is a development please explain the same.
    Thanks and regards,
    Priya S

  • Approval for Material Master Creation !

    Dear All ,
    My requirement is to have approval process for Material master. is it possible.?
    My Client is expecting approval process same like PO ( release strategy )
    Is there any standard approval  process for every masters which are  created as part of MM transactions.
    Can it  be achieved by means of any workflow.?
    Thanks
    Jinoy

    Hi,
    Yes it can be achieved by Work flow & also through the Enterprise Portal development.
    If you have Workflow consultant you can take a help in setting up the approval for Material master creation.
    If you want high fund & centralization of Material master you can go for EP development but Cost & effort will be on higher side.
    Discuss with your Workflow consultant he will help you.
    rgds
    gsc

  • SRM and MDM for material master in SRM contracts for multiple R/3

    Dear all,
    my question is:
    We are implementing SRM 4.0 in classic scenario with multiple R/3 back-end and we want to set-up Global Outline Agreements in SRM in a multi-backend environment where the Material Master are not harmonized.
    We heard that MDM and COntent Integraton can be a solution.
    Then detailled question is:
    Can we have 2 material numbers (e.g. ABC and XYZ) in 2 different R/3 systems refering the same product.
    Have the mapping done in MDM (Content Integrator?) to a third material number:123
    Replicating the material master 123 to SRM from MDM(?)
    Create global Outline Agreements in SRM for Material Master 123.
    Distribute the GOA as Outline Agreement to R/3 system 1 with the translation to ABC and to R/3 system 2 with the translation XYZ, all of that during the distribution step (or another).
    Have the call-offs quantities correct on 123 in SRM and BW?
    IF yes, how is it working, do you have some documentation discribing the scenario and the config steps to do?
    Thanks in avance

    Hello RD,
    That's a good question.
    You are on the right way. MDM is the tool for you.
    But..
    Content Integrator (CI) was first developped for Shell, to address the need of cross-referencing of material/supplier/category IDs, for:
    - reporting purpose (actual Spend Analysis)
    - mapping purpose (send of XML PO)
    CI was later "fusionned" into the new MDM (1.0) solution.
    So now, you can not order CI without MDM (even if some SRM slides still present CI).
    But mapping API where developped for all inboud/outbound interfaces in SRM, for materials only (good luck for you).
    You will find everywhere this piece of code:
      Call ECI
        CALL FUNCTION 'BBP_PRODUCT_MAP'
          TABLES
            it_input          = lt_mapping_in
            et_output         = lt_mapping_out
          EXCEPTIONS
            logsys_not_found  = 1
            driver_not_found  = 2
            product_not_found = 3
            internal_error    = 4
            OTHERS            = 5.
    So it is ok, you have the mapping call, but I don't know if all the rest of the process was really "finalized" (call of API mapping in CI, via XI). I personnaly never used it, but I assume it should work.
    I my opinion your process is supported by SAP:
    - Extract materials from both R/3 and consolidate them as a single product in MDM.
    - Distribute this product into SRM.
    - Maintain contracts on those products.
    - Distribute them to R/3 (The ECI call is also used during contract distribution).
    - Call offs corrects in SRM and BW
    For MDM documentation, look at netweaver area of service.sap.com.
    For MDM/SRM integration, look at SRM 4.0 spend analysis:
    https://websmp206.sap-ag.de/~sapdownload/011000358700004424262004E/GlobalSpendOverview.ppt
    For SRM contract distribution, call-offs, BW, look at SRM in details in service.sap.com/srm/SRM4.0:
    https://websmp206.sap-ag.de/~sapdownload/011000358700001966382004E/contracten.ppt
    For SRM5.0, see online help on help.sap.com.
    Rgds
    Christophe

  • BDC for Material master

    Hi ,
        I am developing the BI program for Material Master (MM01) and change MM02(Both create and change).
    Can you let me know how do i select particular views before creating/changing the material .
    Is there any specific function module available to do this ..
    If you help me with any sample coding ,that would be great.
    Thanks
    Raj

    & Description                : This program is used to create material
    *& master (tcode MM01) . Material data is available in tab delimited   *
    *& flat file.                                                          *
    *& The Following is the flat file Structure:                           *
                     MATNR(018)  "Material Number
                     MBRSH(001)  "Industry Sectory
                     MTART(004)  "Material Type
                     WERKS(004)  "Plant
                     LGORT(004)  "Storage Location
                     MAKTX(040)  "Material Text
                     MEINS(003)  "Basic Unit of Measurement
                     MATKL(009)  "Material Group
                     PRDHA(018), "Product Hierarchy
                     MTPOS_MARA(004), "General Item Categoy Group
                     ZEINR(022)  "Document
                     ZEIVR(002)  "Doc Version
                     SPART(002)  "Division
                     DWERK(004)  "Delivery Plant
                     TAXKM(001)  "Tax
                     KTGRM(002)  "Account Assignemnt Group
                     MTPOS_MARA(004), "General. Item Category Group
                     MTPOS(004), "Item Category Group
                     MTVFP(002)  "Availability check
    */ Begin of changes by Anoop for Sales Text Date: 17 feb 2004
                     s_ltex1(40), "Sales Text line 1
                     s_ltex2(40), "Sales Text line 2
                     s_ltex3(40), "Sales Text line 3
                     s_ltex4(40), "Sales Text line 4
                     s_ltex5(40), "Sales Text line 5
                     s_ltex6(40), "Sales Text line 6
    **/ End of changes by Anoop for Sales Text Date: 17 feb 2004
    **/ Begin of changes by Anoop for Purchase Order Text Date: 17 feb 2004
                     po_ltex1(40), "Purchase Order Text line 1
                     po_ltex2(40), "Purchase Order Text line 2
                     po_ltex3(40), "Purchase Order Text line 3
                     po_ltex4(40), "Purchase Order Text line 4
                     po_ltex5(40), "Purchase Order Text line 5
                     po_ltex6(40), "Purchase Order Text line 6
                     MAKTX(040)  "Sales text
                     EKGRP(003)  "Purchasing Group
                     DISMM(002)  "MRP Type
                     DISPO(003)  "MRP Controller
                     DISLS(002)  "Lot Size
                     EKGRP(003)  "Purchasing group
                     BSTFE(017)  "Fixed Lot Size
                     BESKZ(001)  "Procurement Type
                     LGPRO(004)  "Prod. Storage Location
                     DZEIT(003)  "In house production
                     PLIFZ(003)  "Planned Delivery Time
                     FHORI(003)  "Sch. Margin Key
                     STRGR(002)  "Planning Strategy Group
                     MTVFP(002)  "Availabilty Check
                     SBDKZ(001)  "Ind/Collective
                     SERNP(004)  "Serial Number Profile
                     LGPBE(010)  "Storage Bin
                     GROES(032)  "Size and Dimension
                     WEBAZ(003)  "GR Processing Time
                     BKLAS(004)  "Valuation Class
                     VPRSV(001)  "Price Control
                     VERPR(015)  "Moving Average Price
                     STPRS(015)  "Standard Price
                     MYPOL(004)  "LIFO Pool
                     EKALR(001)  "With Qty structure
                     HKMAT(001)  "Material Origin
                     ZPLP1(014)  "Planned Price 1
                     ZPLD1(010)  "Planned Price Date 1
    *Include
    INCLUDE bdcrecx1.
    *Variables
    DATA : v_filename TYPE string,
           v_flag(1) TYPE c,
           v_counter(2) TYPE c,
           v_lines TYPE i,
           v_count TYPE i VALUE 0.
    *Selection-screen
    SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
    PARAMETER : filename LIKE rlgrap-filename OBLIGATORY.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN BEGIN OF BLOCK blk2 WITH FRAME TITLE text-002.
    PARAMETER : v_basic1    TYPE checkbox,
                v_basic2    TYPE checkbox,
                v_sales1    TYPE checkbox,
                v_sales2    TYPE checkbox,
                v_salesg    TYPE checkbox,
                v_salest    TYPE checkbox,
                v_purcha    TYPE checkbox,
    Begin of changes by Anoop Date: 18 feb 2004.
                v_potext    TYPE checkbox,
    *End of changes by Anoop Date: 18 feb 2004
                v_mrp1      TYPE checkbox,
                v_mrp2      TYPE checkbox,
                v_mrp3      TYPE checkbox,
                v_mrp4      TYPE checkbox,
                v_wrksch    TYPE checkbox,
                v_gplnt1    TYPE checkbox,
                v_gplnt2    TYPE checkbox,
                v_qality    TYPE checkbox,
                v_acct1     TYPE checkbox,
                v_acct2     TYPE checkbox,
                v_testi     TYPE checkbox,
                v_cost2     TYPE checkbox.
    SELECTION-SCREEN END OF BLOCK blk2.
    SELECTION-SCREEN END OF BLOCK blk1.
    */ Comments given are the view names that have been incorporated into
    the BDC for the transaction MM01.
    **Internal Tables
    DATA: BEGIN OF record,
    */ Basic Data 1..
    data element: MATNR
            matnr_001(018),  "Material Number
    data element: MBRSH
            mbrsh_002(001),  "Industry Sectory
    data element: MTART
            mtart_003(004),  "Material Type
    data element: WERKS_D
            werks_019(004),  "Plant
    data element: LGORT_D
            lgort_020(004),  "Storage Location
    *DATA ELEMENT : vkorg
            vkorg(004),      "Sales Organisation
    *DATA ELEMENT : VTWEG
            vtweg(002),      "Distribution channel
    data element: MAKTX
            maktx_021(040),  "Material Text
    data element: MEINS
            meins_022(003),  "Basic Unit of Measurement
    data element: MATKL
            matkl_023(009),  "Material Group
    data element: PRODH_D
            prdha_015(018),
    data element: MTPOS_MARA
            mtpos_mara_016(004),
    data element: MTPOS_MARA
           MTPOS_MARA_024(004),
    */ Basic Data 2...
    data element: DZEINR
            zeinr_026(022),  "Document
    data element: DZEIVR
            zeivr_027(002),  "Doc Version
    data element: MEINS
           MEINS_029(003),
    */ Sales : Sales Org. Data 1
    data element: SPART
            spart_020(002),
    data element: DWERK_EXT
            dwerk_021(004),
    data element: TAXKM
            taxkm_01_024(001),
    */ Sales  : Sales Org. Data 2
    data element: KTGRM
            ktgrm_033(002),
    data element: MTPOS_MARA
            mtpos_mara_034(004),
    data element: MTPOS
            mtpos_035(004),
    */ Sales : General Plant/Data
    data element: MTVFP
            mtvfp_040(002),
    data element: PRCTR
            prctr_041(007),
    */ Sales Text
    */commented by Anoop
    data element: MAKTX
           maktx_041(040),
    */commented up to here by Anoop
    */ Begin of changes by Anoop for Sales Text Date: 17 feb 2004
            s_ltex1(40),
            s_ltex2(40),
            s_ltex3(40),
            s_ltex4(40),
            s_ltex5(40),
            s_ltex6(40),
    */ End of changes by Anoop for Sales Text Date: 17 feb 2004
    */ Purchasing..
    data element: EKGRP
            ekgrp_030(003),
    data element: MEINS
           MEINS_033(003),
    data element: EKGRP
           EKGRP_034(003),
    */ Begin of changes by Anoop for Purchase Order Text Date: 17 feb 2004
    */ Purchase Order Text
            po_ltex1(40),
            po_ltex2(40),
            po_ltex3(40),
            po_ltex4(40),
            po_ltex5(40),
            po_ltex6(40),
    */ MRP1..
    data element: DISMM
            dismm_035(002), "MRP Type
    data element: DISPO
            dispo_036(003), "MRP Controller
    data element: DISLS
            disls_037(002), "Lot Size
    data element : EKGRP
            ekgrp(003),
    data element: MEINS
           MEINS_039(003),
    data element: EKGRP
           EKGRP_040(003),
    data element: DISMM
           DISMM_041(002),
    data element: DISPO
           DISPO_042(003),
    data element: DISLS
           DISLS_043(002), "Proc. Type
    data element: BSTFE
            bstfe_044(017),
    */ MRP2..
    data element: BESKZ
            beskz_046(001),
    data element: LGPRO
            lgpro_047(004),
    data element: DZEIT
            dzeit_048(003),
    data element: PLIFZ
            plifz_049(003),
    data element: FHORI
            fhori_050(003),
    data element: PERKZ
           PERKZ_052(001),
    */ MRP3..
    data element: STRGR
            strgr_053(002),
    data element: MTVFP
            mtvfp_054(002),
    */ MRP4
    data element: SBDKZ
            sbdkz_056(001),
    data element: MEINS
           MEINS_058(003),
    data element: LGPRO
           LGPRO_059(004),
    */ Work Scheduling
    data element: SERAIL
            sernp_060(004),
    data element: DZEIT
           DZEIT_061(003),
    data element: MEINS
           MEINS_063(003),
    */ Plant Data/Str1
    data element: LGPBE
            lgpbe_064(010),
    data element: DATTP
           IPRKZ_065(001),
    */ Plant Data/Str2
    data element: GROES
            groes_067(032),
    data element: SERAIL
           SERNP_068(004),
    data element: MEINS
           MEINS_070(003),
    */ Quality Management
    data element: WEBAZ
            webaz_071(003),
    data element: MEINS
           MEINS_073(003),
    */ Accounting 1
    data element: BKLAS
            bklas_074(004),
    data element: VPRSV
            vprsv_075(001),
    data element: PEINH
           PEINH_076(006),
    data element: VERPR
            verpr_077(015),
    data element: STPRS
            stprs_078(015),
    */ Accounting 2
    data element: MYPOOL
            mypol_080(004),
    data element: MEINS
           MEINS_082(003),
    */ Cost Estimate 1.
    data element: CK_EKALREL
            ekalr_083(001),
    data element: HKMAT
            hkmat_084(001),
    data element: CK_LOSGR
           LOSGR_085(017),
    */ Costing 2..
    data element: DZPLP1
           zplp1_087(014),
    data element: DZPLD1
            zpld1_088(010),
    data element: BKLAS
           BKLAS_089(004),
    data element: VPRSV
           VPRSV_090(001),
    data element: PEINH
           PEINH_091(006),
    data element: VERPR
           VERPR_092(015),
    data element: STPRS
           STPRS_093(015),
          END OF record.
    */ Begin of changes by Anoop Date: 17 feb 2004
    */ intermediate internal table for Sales Text and Purchase Order Text
    *DATA: BEGIN OF s_tab OCCURS 0,
         matnr LIKE mara-matnr,
         s_ltex1 LIKE makt-maktx,
         s_ltex2 LIKE makt-maktx,
         s_ltex3 LIKE makt-maktx,
         s_ltex4 LIKE makt-maktx,
         s_ltex5 LIKE makt-maktx,
         s_ltex6 LIKE makt-maktx,
         END OF s_tab.
    *DATA: BEGIN OF po_tab OCCURS 0,
         matnr LIKE mara-matnr,
         po_ltex1 LIKE makt-maktx,
         po_ltex2 LIKE makt-maktx,
         po_ltex3 LIKE makt-maktx,
         po_ltex4 LIKE makt-maktx,
         po_ltex5 LIKE makt-maktx,
         po_ltex6 LIKE makt-maktx,
         END OF po_tab.
    */ End of changes by Anoop Date: 17 feb 2004
    DATA : itab LIKE record OCCURS 0 WITH HEADER LINE.
    DATA : ok_code(5) TYPE c.
    *AT SELECTION-SCREEN
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR filename.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
        EXPORTING
          field_name = filename
        CHANGING
          file_name  = filename.
    *START-OF-SELECTION
    START-OF-SELECTION.
      v_filename = filename.
      CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
          filename                      = v_filename
          filetype                      = 'ASC'
          has_field_separator           = 'X'
      HEADER_LENGTH                 = 0
      READ_BY_LINE                  = 'X'
      DAT_MODE                      = ' '
      CODEPAGE                      = ' '
      IGNORE_CERR                   = ABAP_TRUE
      REPLACEMENT                   = '#'
    IMPORTING
      FILELENGTH                    =
      HEADER                        =
        TABLES
          data_tab                      = itab.
    */ Begin of changes by Anoop Date: 17 feb 2004
       LOOP AT itab.
       move itab-s_ltext+0(40) to itab-s_ltex1.
       move itab-s_ltext+40(40) to itab-s_ltex2.
       move itab-s_ltext+80(40) to itab-s_ltex3.
       move itab-s_ltext+120(40) to itab-s_ltex4.
       move itab-s_ltext+160(40) to itab-s_ltex5.
       move itab-s_ltext+200(40) to itab-s_ltex6.
       move itab-po_ltext+0(40) to itab-po_ltex1.
       move itab-po_ltext+40(40) to itab-po_ltex2.
       move itab-po_ltext+80(40) to itab-po_ltex3.
       move itab-po_ltext+120(40) to itab-po_ltex4.
       move itab-po_ltext+160(40) to itab-po_ltex5.
       move itab-po_ltext+200(40) to itab-po_ltex6.
       modify itab.
       ENDLOOP.
    */ End of changes by Anoop Date: 17 feb 2004
      DELETE itab WHERE  matnr_001 = ' '.
      DESCRIBE TABLE itab LINES v_lines.
      PERFORM open_group.
      LOOP AT itab.
        v_count = v_count + 1.
        PERFORM bdc_dynpro      USING 'SAPLMGMM' '0060'.
        IF v_count = v_lines.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                       '=BACK'.
        ENDIF.
        PERFORM bdc_field       USING 'BDC_CURSOR'
                                      'RMMG1-MATNR'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '/00'.
        PERFORM bdc_field       USING 'RMMG1-MATNR'
                                      itab-matnr_001.
        PERFORM bdc_field       USING 'RMMG1-MBRSH'
                                      itab-mbrsh_002.
        PERFORM bdc_field       USING 'RMMG1-MTART'
                                      itab-mtart_003.
        PERFORM bdc_dynpro      USING 'SAPLMGMM' '0070'.
        PERFORM bdc_field       USING 'BDC_CURSOR'
                                      'MSICHTAUSW-DYTXT(17)'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=P+'.
        TRANSLATE itab-mtart_003 TO UPPER CASE.
    */ IF the data to be uploaded is of Material type 'Trading Goods'
    the following view selection
        IF itab-mtart_003 = 'HAWA'.
          PERFORM view_sel3.
        ENDIF.
    */ IF the data to be uploaded is of Material type 'Finished Goods'
    the following view selection
        IF itab-mtart_003 = 'FERT'.
          PERFORM view_sel1.
        ENDIF.
    */ IF the data to be uploaded is of Material type 'Semi-Finished Goods'
    the following view selection
        IF itab-mtart_003 = 'HALB'.
          PERFORM view_sel2.
        ENDIF.
        PERFORM bdc_dynpro      USING 'SAPLMGMM' '0080'.
        PERFORM bdc_field       USING 'BDC_CURSOR'
                                      'T001L-LGOBE'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=ENTR'.
        PERFORM bdc_field       USING 'RMMG1-WERKS'
                                      itab-werks_019.
        PERFORM bdc_field       USING 'RMMG1-LGORT'
                                      itab-lgort_020.
        PERFORM bdc_field       USING 'RMMG1-VKORG'
                                      itab-vkorg.
        PERFORM bdc_field       USING 'RMMG1-VTWEG'
                                      itab-vtweg.
        PERFORM bdc_dynpro      USING 'SAPLMGMM' '4004'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '/00'.
        IF  v_basic1 = 'X'.
    */ Basic Data 1
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARA-MATKL'.
          PERFORM bdc_field       USING 'MARA-MEINS'
                                        itab-meins_022.
          PERFORM bdc_field       USING 'MARA-MATKL'
                                        itab-matkl_023.
          PERFORM bdc_field       USING 'MARA-PRDHA'
                                        itab-prdha_015.
          PERFORM bdc_field       USING 'MARA-MTPOS_MARA'
                                        itab-mtpos_mara_016.
       perform bdc_field       using 'MARA-MTPOS_MARA'
                                     itab-MTPOS_MARA_024.
        ENDIF.
        IF v_basic2 = 'X'.
    */ Basic Data 2
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4004'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARA-ZEIVR'.
          PERFORM bdc_field       USING 'MARA-ZEINR'
                                        itab-zeinr_026.
          PERFORM bdc_field       USING 'MARA-ZEIVR'
                                        itab-zeivr_027.
        ENDIF.
        IF itab-vkorg(004) <> ' '.
          IF v_sales1 = 'X'.
    */ Sales : Sales Org. Data 1
            PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
            PERFORM bdc_field       USING 'BDC_OKCODE'
                                          '/00'.
            PERFORM bdc_field       USING 'MAKT-MAKTX'
                                          itab-maktx_021.
            PERFORM bdc_field       USING 'MARA-MEINS'
                                          itab-meins_022.
            PERFORM bdc_field       USING 'MARA-SPART'
                                          itab-spart_020.
            PERFORM bdc_field       USING 'MVKE-DWERK'
                                          itab-dwerk_021.
            PERFORM bdc_field       USING 'MARA-MATKL'
                                          itab-matkl_023.
    ****perform bdc_field       using 'MVKE-SKTOF'
                                 record-SKTOF_023.
            IF itab-taxkm_01_024 <> ' '.
              PERFORM bdc_field       USING 'BDC_CURSOR'
                                            'MG03STEUER-TAXKM(01)'.
              PERFORM bdc_field       USING 'MG03STEUER-TAXKM(01)'
                                            itab-taxkm_01_024.
    */ After entering tax another screen in which no data has to be *
    populated
              PERFORM bdc_dynpro      USING 'SAPLMGMM' '4200'.
              PERFORM bdc_field       USING 'BDC_OKCODE'
                                            '/00'.
              PERFORM bdc_field       USING 'BDC_CURSOR'
                                            'MAKT-MAKTX'.
       PERFORM bdc_field       USING 'MAKT-MAKTX'
                                     record-maktx_021.
            ENDIF.
            PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
            PERFORM bdc_field       USING 'BDC_OKCODE'
                                          '/00'.
            PERFORM bdc_field       USING 'MAKT-MAKTX'
                                          itab-maktx_021.
            PERFORM bdc_field       USING 'MARA-MEINS'
                                          itab-meins_022.
            PERFORM bdc_field       USING 'MARA-SPART'
                                          itab-spart_020.
            PERFORM bdc_field       USING 'MVKE-DWERK'
                                          itab-dwerk_021.
            PERFORM bdc_field       USING 'MARA-MATKL'
                                          itab-matkl_023.
          ENDIF.
          IF v_sales2 = 'X'.
    */ Sales : Sales Org. Data 2
            PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
            PERFORM bdc_field       USING 'BDC_OKCODE'
                                          '/00'.
            PERFORM bdc_field       USING 'MAKT-MAKTX'
    */commented by Anoop
    */                                 itab-maktx_041.
    */commented up to here by Anoop
    */ Begin of changes by Anoop Date: 17 feb 2004
                                          itab-maktx_021.
    */ End of changes by Anoop Date: 17 feb 2004
            PERFORM bdc_field       USING 'BDC_CURSOR'
                                          'MVKE-MTPOS'.
            PERFORM bdc_field       USING 'MVKE-KTGRM'
                                          itab-ktgrm_033.
            IF itab-mtpos_mara_034 <> ' '.
              PERFORM bdc_field       USING 'MARA-MTPOS_MARA'
                                            itab-mtpos_mara_034.
            ENDIF.
            IF itab-mtpos_035 <> ' '.
              PERFORM bdc_field       USING 'MVKE-MTPOS'
                                            itab-mtpos_035.
            ENDIF.
          ENDIF.
          IF v_salesg = 'X'.
    */ Sales : General/Plant Data
            PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
            PERFORM bdc_field       USING 'BDC_OKCODE'
                                          '/00'.
            PERFORM bdc_field       USING 'MAKT-MAKTX'
                                          itab-maktx_021.
            PERFORM bdc_field       USING 'BDC_CURSOR'
                                          'MARC-MTVFP'.
           PERFORM bdc_field       USING 'MARA-MEINS'
                                         itab-meins_022.
    ***perform bdc_field       using 'MARA-GEWEI'
                                 record-GEWEI_039.
            PERFORM bdc_field       USING 'MARC-MTVFP'
                                          itab-mtvfp_040.
            IF itab-prctr_041 <> ' '.
              PERFORM bdc_field       USING 'BDC_CURSOR'
                                            'MARC-PRCTR'.
              PERFORM bdc_field       USING 'MARC-PRCTR'
                                            itab-prctr_041.
            ENDIF.
          ENDIF.
          IF v_salest = 'X'.
    */ Sales Text
            PERFORM bdc_dynpro      USING 'SAPLMGMM' '4040'.
            IF itab-mtart_003 = 'HAWA' OR itab-mtart_003 = 'HALB'.
              PERFORM bdc_field       USING 'BDC_OKCODE'
                                            '=SP09'.
              ok_code = '=SP09'.
            ELSEIF itab-mtart_003 = 'FERT'.
              PERFORM bdc_field       USING 'BDC_OKCODE'
                                           '=SP12'.
              ok_code = '=SP12'.
            ENDIF.
    */commented by Anoop
          PERFORM bdc_field       USING 'MAKT-MAKTX'
    */                                 itab-maktx_041.
    */commented up to here by Anoop
    */ Begin of changes by Anoop for Sales Text Date: 17 feb 2004
            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)' itab-s_ltex1.
            perform bdc_field      using 'RSTXT-TXLINE(03)' itab-s_ltex2.
            perform bdc_field      using 'RSTXT-TXLINE(04)' itab-s_ltex3.
            perform bdc_field      using 'RSTXT-TXLINE(05)' itab-s_ltex4.
            perform bdc_field      using 'RSTXT-TXLINE(06)' itab-s_ltex5.
            perform bdc_field      using 'RSTXT-TXLINE(07)' itab-s_ltex6.
            PERFORM bdc_dynpro      USING 'SAPLSPO1'   '0100'.
            PERFORM bdc_field       USING 'BDC_OKCODE'     '=YES' .
    */ End of changes by Anoop for Sales Text Date: 17 feb 2004
            PERFORM bdc_dynpro      USING 'SAPLMGMM' '4040'.
            PERFORM bdc_field       USING 'BDC_OKCODE'  '/00'.
          ENDIF.
        ENDIF.
        IF v_purcha = 'X' AND ok_code = '=SP09'.
          CLEAR ok_code.
    */ Purchasing
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        'SP11'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARC-EKGRP'.
          PERFORM bdc_field       USING 'MARA-MEINS'
                                        itab-meins_022.
          PERFORM bdc_field       USING 'MARC-EKGRP'
                                        itab-ekgrp_030.
          PERFORM bdc_field       USING 'MARA-MATKL'
                                        itab-matkl_023.
       perform bdc_dynpro      using 'SAPLMGMM' '4000'.
       perform bdc_field       using 'BDC_OKCODE'
                                     'ENTR'.
       perform bdc_field       using 'MAKT-MAKTX'
                                     itab-maktx_021.
       perform bdc_field       using 'MARA-MEINS'
                                     itab-meins_022.
       perform bdc_field       using 'MARC-EKGRP'
                                     itab-ekgrp_030.
       perform bdc_field       using 'BDC_CURSOR'
                                     'MARC-DISMM'.
       perform bdc_field       using 'MARC-DISMM'
                                     itab-DISMM_035.
       perform bdc_field       using 'MARC-DISPO'
                                     itab-DISPO_036.
       perform bdc_field       using 'MARC-DISLS'
                                     itab-DISLS_037.
        ENDIF.
    */ Begin of changes by Anoop for Purchase Order Text Date: 18 feb 2004
       PERFORM bdc_dynpro      USING 'SAPLMGMM' '4040'.
       PERFORM bdc_field       USING 'BDC_OKCODE'  '/00'.
        IF v_potext = 'X' .
          CLEAR ok_code.
    *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)' itab-po_ltex1.
            perform bdc_field      using 'RSTXT-TXLINE(03)' itab-po_ltex2.
            perform bdc_field      using 'RSTXT-TXLINE(04)' itab-po_ltex3.
            perform bdc_field      using 'RSTXT-TXLINE(05)' itab-po_ltex4.
            perform bdc_field      using 'RSTXT-TXLINE(06)' itab-po_ltex5.
            perform bdc_field      using 'RSTXT-TXLINE(07)' itab-po_ltex6.
         PERFORM bdc_field       USING 'RSTXT-TXLINE(02)' itab-po_ltex1 .
       PERFORM bdc_field       USING 'BDC_CURSOR' 'RSTXT-TXPARGRAPH(03)'.
         PERFORM bdc_field       USING 'RSTXT-TXPARGRAPH(03)' '*'.
         PERFORM bdc_field       USING 'RSTXT-TXLINE(03)' itab-po_ltex2 .
        PERFORM bdc_field       USING 'BDC_CURSOR' 'RSTXT-TXPARGRAPH(04)'.
         PERFORM bdc_field       USING 'RSTXT-TXPARGRAPH(04)' '*'.
         PERFORM bdc_field       USING 'RSTXT-TXLINE(04)' itab-po_ltex3 .
         PERFORM bdc_field      USING 'BDC_CURSOR' 'RSTXT-TXPARGRAPH(05)'.
         PERFORM bdc_field       USING 'RSTXT-TXPARGRAPH(05)' '*'.
         PERFORM bdc_field       USING 'RSTXT-TXLINE(05)' itab-po_ltex4 .
         PERFORM bdc_field      USING 'BDC_CURSOR' 'RSTXT-TXPARGRAPH(06)'.
         PERFORM bdc_field       USING 'RSTXT-TXPARGRAPH(06)' '*'.
         PERFORM bdc_field       USING 'RSTXT-TXLINE(06)' itab-po_ltex5 .
        PERFORM bdc_field       USING 'BDC_CURSOR' 'RSTXT-TXPARGRAPH(07)'.
         PERFORM bdc_field       USING 'RSTXT-TXPARGRAPH(07)' '*'.
         PERFORM bdc_field       USING 'RSTXT-TXLINE(07)' itab-po_ltex6 .
        PERFORM bdc_field       USING 'BDC_CURSOR' 'RSTXT-TXPARGRAPH(08)'.
         PERFORM bdc_field       USING 'RSTXT-TXPARGRAPH(08)' '*'.
          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'   '/00'.
        endif.
    */ End of changes by Anoop for Purchase Order Text Date: 18 feb 2004
        IF v_mrp1 = 'X'.
    */ MRP 1
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        'ENTR'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'MARA-MEINS'
                                        itab-meins_022.
          PERFORM bdc_field       USING 'MARC-EKGRP'
                                        itab-ekgrp_030.
          PERFORM bdc_field       USING 'MARC-DISMM'
                                        itab-dismm_035.
          PERFORM bdc_field       USING 'MARC-DISPO'
                                        itab-dispo_036.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARC-DISLS'.
          PERFORM bdc_field       USING 'MARC-DISLS'
                                        itab-disls_037.
          IF itab-ekgrp <> ' '.
            PERFORM bdc_field       USING 'MARC-EKGRP'
                                          itab-ekgrp.
          ENDIF.
          PERFORM bdc_field       USING 'MARC-BSTFE'
                                        itab-bstfe_044.
        ENDIF.
        IF v_mrp2 = 'X'.
    */ MRP 2
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'MARC-BESKZ'
                                        itab-beskz_046.
          PERFORM bdc_field       USING 'MARC-LGPRO'
                                        itab-lgpro_047.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARC-DZEIT'.
          PERFORM bdc_field       USING 'MARC-DZEIT'
                                        itab-dzeit_048.
          PERFORM bdc_field       USING 'MARC-PLIFZ'
                                        itab-plifz_049.
          PERFORM bdc_field       USING 'MARC-FHORI'
                                        itab-fhori_050.
        ENDIF.
        IF v_mrp3 = 'X'.
    */ MRP 3
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
       perform bdc_field       using 'MARC-PERKZ'
                                     itab-PERKZ_052.
          PERFORM bdc_field       USING 'MARC-STRGR'
                                        itab-strgr_053.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARC-MTVFP'.
          PERFORM bdc_field       USING 'MARC-MTVFP'
                                        itab-mtvfp_054.
        ENDIF.
        IF v_mrp4 = 'X'.
    */ MRP 4
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARC-SBDKZ'.
          PERFORM bdc_field       USING 'MARC-SBDKZ'
                                        itab-sbdkz_056.
        ENDIF.
        IF v_wrksch = 'X'.
    */ WORK SCHEDULES
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARC-SERNP'.
          PERFORM bdc_field       USING 'MARA-MEINS'
                                        itab-meins_022.
          PERFORM bdc_field       USING 'MARC-LGPRO'
                                        itab-lgpro_047.
          PERFORM bdc_field       USING 'MARC-SERNP'
                                        itab-sernp_060.
          PERFORM bdc_field       USING 'MARC-DZEIT'
                                        itab-dzeit_048.
        ENDIF.
        IF v_gplnt1 = 'X'.
    */ PLANT DATA/STR1
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARD-LGPBE'.
          PERFORM bdc_field       USING 'MARA-MEINS'
                                        itab-meins_022.
          PERFORM bdc_field       USING 'MARD-LGPBE'
                                        itab-lgpbe_064.
       perform bdc_field       using 'MARA-IPRKZ'
                                     itab-IPRKZ_065.
        ENDIF.
        IF v_gplnt2 = 'X'.
    */ PLANT DATA/STR2
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARA-GROES'.
          PERFORM bdc_field       USING 'MARA-GROES'
                                        itab-groes_067.
          PERFORM bdc_field       USING 'MARC-SERNP'
                                        itab-sernp_060.
        ENDIF.
        IF v_qality = 'X'.
    */ QUALITY MANAGEMENT
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=PB01'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARC-WEBAZ'.
          PERFORM bdc_field       USING 'MARA-MEINS'
                                        itab-meins_022.
          PERFORM bdc_field       USING 'MARC-WEBAZ'
                                        itab-webaz_071.
    Addition done by Hymavathi on 24-01-2005
          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(01)'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=WEIT'.
          PERFORM bdc_field       USING 'RMQAM-ART(01)'
                                         '01'.
          PERFORM bdc_field       USING 'RMQAM-AKTIV(01)'
                                        'X'.
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MARC-WEBAZ'.
          PERFORM bdc_field       USING 'MARA-MEINS'
                                        itab-meins_022.
          PERFORM bdc_field       USING 'MARC-WEBAZ'
                                        itab-webaz_071.
    End Of Addition Done By Hymavathi
        ENDIF.
        IF v_acct1 = 'X'.
    */ ACCOUNTING 1
          PERFORM bdc_dynpro      USING 'SAPLMGMM' '4000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          PERFORM bdc_field       USING 'MAKT-MAKTX'
                                        itab-maktx_021.
          PERFORM bdc_field       USING 'MARA-MEINS'
                                        itab-meins_022.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'MBEW-STPRS'.
          PERFORM bdc_field       USING 'MBEW-BKLAS'
                                        itab-bklas_074.
          PERFORM bdc_field       USING 'MBEW-VPRSV'
                                 

  • Problem with mass IDoc for Material Master

    Hi All,
    Can anyone suggest a solution to work with mass IDocs for Material master?
    We have DEBMDM and CREMDM as mass capable IDocs for Customer and Vendor. How do we get mass Material Master IDocs from R/3 in a single XML file?
    Also the standard Material repository supplied with SAP MDM 5.5 SP3 doesn't have any XSD definition for MATMDM. Can anyone throw some light on this problem?
    Regards
    Pooja

    Hello Pooja:
    The standard way to do it is to generate a single file containing multiple idocs (And for the sake of performance, I suggest you stick to this technique).
    In the case of material master, everything is straight forward. In the case of customer and vendor master, when data flows from R/3 to MDM no idoc conversion needs to be performed by XI.
    However, for the case of customer and vendor master, when data flows from MDM to R/3, XI needs to separate the data in CREMDM to CREMAS and ADRMAS in order for R/3 to be able to process the idocs; as well as separate the data in DEBMDM to DEBMAS and ADRMAS.
    The good thing is that you do not need to worry about all this mappings and conversions in XI. The only thing you need to do in XI is to import the standard business content for SAP MDM 5.5 into XI.
    Hope this helps.
    Regards,
    Jorge.

  • Message Type for Material Master Data Changes

    Hi all
    I'm managing Message Types for Material Master Data extraction from R\3 system to BW system, in order to load on BW only the changes done to some fields of MARA table that are delta relevant.
    Now from R/3 BD50 Transaction I can see that there is a message type that refer to changes done on MARA fields: RS0044.
    I would like to replace this message type with another one (RS0020) in order to align different systems.
    Now changes to material master data in R/3 system are recorder with both message types but only those with RS0044 message type are processed and loaded into BW system.
    So I would like to know:
    1. How is the message type related to the DataSource 0material?
    2. is it possible to replace a message type for BW?
    3. if yes, how can I do it?
    Thanks in advance.
    Elisa
    mail: [email protected]

    Hi Oscar!
    At the moment I'm using Delta queue of 0MATERIAL. I know that in the queue there are all the new and changed records.
    But I would like to be able not to load all the changed records, but only those that refer to some fields of MARA table.
    E.g. if the gross weight of a material is modified I don't want to load this change on BW with Delta loading .
    I've seen that from R/3 Transaction BD52 you can set only delta relevant fields referred to a specific message type and to delete the other fields.
    As I'm able to do this directly in the Development system and Test System, I haven't got the authorization of doing it in the Production system.
    That's why I need to include this setting in a CR and then ask to transport it from Test to Production system.
    But message types referred to MARA field changes are different between the two systems.
    And it seems they are automatically created.
    Is it true?
    Thanks
    Elisa

  • LSMW FOR MATERIAL MASTER USING BAPI_MATERIAL_SAVEDATA -Adding Custom Fields

    Hi Gurus,
    I'm developing LSMW for Material Master Upload using BAPI method.
    Object:BUS1001006
    BAPI:BAPI_MATERIAL_SAVEDATA
    MESSAGE TYPE: MATMAS_BAPI
    BASIC TYPE : MATMAS_BAPI03.
    There is a requirement to use/map a custom field. Upon research custom field can be added to the parameter EXTENSIONIN and EXTENSIONINX, but I have no Idea on how to do it with LSMW. Please advise what approach is needed.
    Thanks and Regards,
    Jay

    Hi Gurus,
    I got the following code below.
    The custom field won't get updated.... Please advise on what should I do... I've checked different forums and still can't come up with the solution... Please advise..
    REPORT ztest_extend_matmas1.
    STRUCTURE
    TABLES:
    bapimathead, "Headerdata
    bapi_mara, "Clientdata
    bapi_marax, "Clientdatax
    bapi_marc, "Plantdata
    bapi_marcx, "Plantdatax
    bapi_makt, "Material description
    bapiparex, "Extensionstruktur
    bapiparexx,
    bapiret2. "Return messages
    DATA:
    bapi_te_mara LIKE bapi_te_mara,
    bapi_te_marax LIKE bapi_te_marax,
    v_file TYPE string.
    INTERNAL TABLE
    *to store the output data
    DATA:BEGIN OF it_material_number OCCURS 0.
            INCLUDE STRUCTURE bapimatinr.
    DATA:END OF it_material_number.
    *for materialtext
    DATA:BEGIN OF it_materialdesc OCCURS 0.
            INCLUDE STRUCTURE bapi_makt .
    DATA:END OF it_materialdesc.
    *für z-feld
    DATA:BEGIN OF it_bapiparex OCCURS 0.
            INCLUDE STRUCTURE bapiparex.
    DATA:END OF it_bapiparex.
    *für z-feldx
    DATA:BEGIN OF it_bapiparexx OCCURS 0.
            INCLUDE STRUCTURE bapiparexx.
    DATA:END OF it_bapiparexx.
    *to return messages
    DATA:BEGIN OF it_return2 OCCURS 0.
            INCLUDE STRUCTURE bapiret2.
    DATA:END OF it_return2.
    DATA:BEGIN OF it_return OCCURS 0.
            INCLUDE STRUCTURE bapiret1.
    DATA:END OF it_return.
    DATA
    lt_messages      TYPE bapiret2_t.
    PROCESSING
    *bapimathead-material = it_material_number-material.
    bapimathead-material = '100-2520'.
    bapimathead-ind_sector = 'P'.
    bapimathead-matl_type = 'AEM'.
    bapimathead-basic_view = 'X'.
    bapimathead-purchase_view = 'X'.
    bapimathead-inp_fld_check = 'I'.
    *bapimathead-BASIC_VIEW = 'X'.
    *bapimathead-SALES_VIEW = 'X'.
    *bapimathead-PURCHASE_VIEW = 'X'.
    *bapimathead-MRP_VIEW = 'X'.
    *bapimathead-FORECAST_VIEW = 'X'.
    *bapimathead-WORK_SCHED_VIEW = 'X'.
    *bapimathead-PRT_VIEW = 'X'.
    *bapimathead-STORAGE_VIEW = 'X'.
    *bapimathead-WAREHOUSE_VIEW = 'X'.
    bapi_mara-matl_group = '0001'.
    bapi_mara-old_mat_no = '100-251'.
    bapi_mara-base_uom = 'ST'.
    bapi_marax-matl_group = 'X'.
    bapi_marax-old_mat_no = 'X'.
    bapi_marax-base_uom = 'X'.
    bapi_marc-plant = '1000'.
    bapi_marcx-plant = '1000'.
    it_materialdesc-langu = 'EN'.
    it_materialdesc-matl_desc = 'DESC'.
    APPEND it_materialdesc.
    *bapi_te_mara-material = it_material_number-material.
    bapimathead-material = '100-2520'.
    *bapi_te_mara-zzforst = '4148'.
    bapi_te_mara-material = '100-2520'.
    bapi_te_mara-zzmar_field1 = '4148'.
    *bapi_te_marax-material = it_material_number-material.
    bapimathead-material = '100-2520'.
    *bapi_te_marax-zzforst = 'X'.
    bapi_te_marax-material  = '100-2520'.
    bapi_te_marax-zzmar_field1 = 'X'.
    it_bapiparex-structure = 'BAPI_TE_MARA'.
    it_bapiparex-valuepart1 = bapi_te_mara.
    APPEND it_bapiparex.
    it_bapiparexx-structure = 'BAPI_TE_MARAX'.
    it_bapiparexx-valuepart1 = bapi_te_marax.
    APPEND it_bapiparexx.
    CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
      EXPORTING
        headdata            = bapimathead
        clientdata          = bapi_mara
        clientdatax         = bapi_marax
        plantdata           = bapi_marc
        plantdatax          = bapi_marcx
      IMPORTING
        return              = it_return2
      TABLES
        materialdescription = it_materialdesc
        extensionin         = it_bapiparex
        extensioninx        = it_bapiparexx
        returnmessages      = lt_messages.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
    THanks and Regards,
    Jay
    Edited by: jhayyy on May 17, 2011 6:54 AM

  • OCM process for material revision update

    Hi
    Does anyone knows OCM process for material revision update?
    from what i saw OCM is not working for ECM which has only revision update.
    Is there any work around to update the production order?
    Thanks.

    Hi
    Read PP master data indeed update the revision, but i need to do the update in a mass process, and not for each order separably
    in addition there are some other advantages to OCM, like the ability to change even if suborder (of collective order) is already confirmed, which can't be done with read master data.

  • Step by step instruction for Using LSMW Recoding method for Material Master

    Guys,
    Can some one explain step by step procedure for uploading the materials master data to R/3 by using LSMW Recoding method. By the time you reply I will go through the rule of uploading the data..
    Thanks guys,
    Dhanu.

    Hi,
    The Legacy System Migration Workbench (LSMW) is a tool recommended by SAP that you can use to transfer data once only or periodically from legacy systems into an R/3 System.
    The LSM Workbench covers the following steps:
    (1)Read the legacy data from one or several files (e.g. spreadsheet tables, sequential files)
    (2)Convert the data from source format to target format
    (3)Import the data using standard interfaces (Batch Input, Direct Input, BAPI, IDoc).
    The Steps for LSME are:
    Example: Customer Master upload:
    LSMW to Update Customer Master Records with Transaction Recording
    Call Legacy System Migration Workbench by entering transaction code LSMW. Every conversion task is grouped together as Project / Subproject / Object structure. Create a Project called LSMW_DEMO and a Subproject as CUSTOMERS and Object as CUST_REC
    Step 1: Maintain Object attributes
    In this example, you will be updating the customer master records with the help of recording a transaction (XD02). Choose radio button Batch Input Recording and click on the recording overview icon to record the R/3 transaction. Enter the Recording name as XD02_REC, the description as Customer Master Updates Recording, and the transaction code as XD02.
    Step 2. Maintain Source Structures
    Give a name and a description to the source structure
    Step 3. Maintain Source Fields
    In this step, you need to list what fields are present in the source structure. The easiest way is to click on u2018Table Maintenanceu2019 icon to enter Fieldname, Type and Length for each field
    Step 4: Maintain Structure Relations
    Execute a step to u2018Maintain Structure Relationsu2019. Since, there is only one Source and Target Structure, the relationship is defaulted automatically.
    Step 5: Maintain field mapping and conversion rules
    Field RF02D-D0310 represents that you chose u2018Sales viewu2019 for the customer Master screen accordingly its value should be set to X. Keep your cursor on field RF02D-D0310 and click on Constant rule icon to choose the constant value of u2018Xu2019.
    If your source file already has the field value, you choose rule u2018Source Fieldu2019.
    Keep cursor on field u2018KUNNRu2019 and click on u2018Assign Source fieldu2019 icon to choose source field CUSTOMER from structure XD02S
    Step 6: Maintain fixed values, translations, user-defined routines
    You can also maintain re-usable translations and user-defined routines, which can be used across conversion tasks. In this case, that step is not required.
    Step 7: Specify files
    In this step, we define how the layout of the input file is. The input file is a [Tab] delimited with the first row as field names. It is present on my PC (local drive) as C:\XD02.txt.
    Step 8: Assign files
    Execute step u2018Assign Filesu2019 and the system automatically defaults the filename to the source structure.
    Step 9: Read data
    In this step, LSMW reads the data from the source file (from your PCu2019s local drive). You have the option to read only selected rows and convert data values to Internal format.
    Step 10: Display read data
    This step is optional. If required, you can review the field contents for the rows of data read.
    Step 11: Convert data
    This is the step that actually converts the source data (in source format) to a target format. Based on the conversion rules defined, source fields are mapped to target fields.
    Step 12: Display Converted data
    Again this is an optional step to view how the source data is converted to internal SAP format
    Step 13: Create batch input session
    Once the source data is converted in an internal format, you can create a batch session to process updates.
    Step 14: Run Batch Input Session
    You can execute the BDC session by Run Batch input session. Executing a batch input session is a standard SM35 transaction for managing BDC sessions. Once you have successfully executed the batch input session, the customer master records are updated in the system. You can confirm this by viewing the customer master records (XD03).
    Follow the link for material master
    http://www.sap123.com/showthread.php?t=98
    Regards,
    Biju K

  • Creation of New T Code for Material Master

    HI,
    I have to create a new T Code for Material Master Change i.e. for MM02, with writing restrictions to few fields. How to achieve this? 
    Thanks and Regards,
    Hari Prasad.

    Hi Hariprasad,
    If restricting certain fields using field selection option is not suitable for you, you can go ahead with the option Screen Variend
    Also refer the link
    [https://wiki.sdn.sap.com/wiki/display/Snippets/Transaction%20Variant%20-%20A%20Step%20by%20Step%20Guide%20for%20Creation]

  • Issue in LSMW for material master using standard input program RMDATIND!!

    Hello guys,
    I have a issue in LSMW for material master.
    I have a custom field in MARA table. which I want to add in my LSMW.
    I added the field in BMMH1 structure. I'm passing the value to this field, But it is not populated in the table when I run it.
    Is there anything else I need to do apart from addition of field in the structure BMMH1.
    Thanks in advance for your help.
    Regards,
    Sumeet....

    see oss note 44410, it gives you a step by step overview.
    https://service.sap.com/sap/support/notes/44410

  • BAPI for Material master update

    Hello,
    I need to upload and change data to the classification screen of Material master (MM01/02). I am thinking of using BAPI_CHARACT_CREATE and BAPI_CHARACT_CHANGE. Can we use BAPI_MATERIAL_SAVEDATA to upload and change characteristic data for material master(MM01/02)?
    Can anybody provide me some sample code for mass upload and mass change of characteristic data to material master?
    Thanks in advance
    Rajesh.

    Hi Rajesh,
    You can use standard SAP program <b>RCCLBI03</b> to do mass upload.
    Please check the program documentation for more information.
    Also you can take a look this BAPI/FM.
    <b>BAPI_OBJCL_CREATE
    BAPI_OBJCL_CHANGE
    CLVF_INSERT_AUSP
    CLVF_UPDATE_AUSP
    CLVF_VB_INSERT_CLASSIFICATION</b>
    Hope this will help.
    Regards,
    Ferry Lianto
    Please reward points if helpful.

  • Uploading sales text and Purchase order text for material master

    Hi,
      I have created, material master with LSMW  byt not updated SALES TEXT and Purchase order text with LSMW  now i want to uplaod the sales and po text for material master can you give some link or ref. code to upload the text i have near 1000 items for which i want to uplaod text  when i have done the recording with SHDB  i have not found filed in recording.
    regards,
      zafar

    Hi,
    I have made the code in se38
    as below but still it is not working
    REPORT  ZTEST_TEXT.
      data: headerl like thead occurs 0 with header line.
      data itab3 like tline occurs 0 with header line.
    headerl-tdobject = 'MATERIAL'.
    headerl-tdname = '00000000000LSMW123'.          "(Material : 000000000300000560, Sorg : 0001, Dist channel: 01)
    headerl-tdid  = 'BEST'.
    headerl-tdspras = 'E'.
    append headerl.
    move '*' to itab3-tdformat.
    move 'Testing PO text' to itab3-tdline.
    append itab3.
    call function 'SAVE_TEXT'
      exporting
        header                = headerl
      insert                = ' '
       savemode_direct       = ' '
      tables
        lines                 = itab3
    exceptions
       id                    = 1
       language              = 2
       name                  = 3
       object                = 4
       others                = 5.
       IF SY-SUBRC = 0.
         CALL FUNCTION 'COMMIT_TEXT'
           EXPORTING
                OBJECT   = headerl-tdobject
                NAME     = headerl-tdname.
       ENDIF.
       break-point.
    regards,
    zafar

  • Table name for material master change

    What is the table name for material master change, so that I can get the old values and new values at plant level.
    More specific:
    I want to check the old values for Re order point and Safety stock in MRP1 and MRP2 fields in material master for many materials. Please help.

    Use CDPOS and CDHDR table to get the values which were changed.
    CDPOS>use fields Change doc. object give in as MATERIAL and in the Table name>MARC

Maybe you are looking for