Quantcast
Channel: SCN : Blog List - SAP ERP - Logistics Materials Management (SAP MM)
Viewing all 128 articles
Browse latest View live

A Reusable BDC for Vendor Bank Details uploads:

$
0
0

Introduction :

 

Most of the times it will become imperative to upload the bank details for the vendor master , when vendors  exists in multiple company codes and when the vendors operate in multiple countries and multiple areas .

 

In such cases vendors will have multiple bank accounts and updating the Bank Details into the vendor master will become tedious job for a manual entry. In order to reduce the time involved in updating the details and to reduce the manual intervention, BDC program can be much useful with an input file.

 

Vendor Master will have details like

 

Country Key,

Bank Key,

Bank Account,

Account Holder,

Bank Control Key,

IBAN

Swift Code

IBAN Value

Partner Bank Type

Reference Details .

A Typical Bank Details SCREEN of Vendor looks like this.

 

10.png

 

The program can be provided with an authorization object to restrict the users.

 

The Program can be as follows

 

REPORT  Z_VENDOR_MASTER_BANK  NOSTANDARDPAGE HEADING
                                       
LINE-SIZE255
                                       
LINE-COUNT300.

TYPE-POOLS: TRUXS.

*&---------------------------------------------------------------------*

*&---------------------------------------------------------------------*

*&  Types  Declarations

*&---------------------------------------------------------------------*

*&---------------------------------------------------------------------*

TYPES : BEGINOF  TY_LFA1,
          VENDOR       
LIKE LFA1-LIFNR,
          COMP_ID      
LIKE LFB1-BUKRS,
          BANK_COUNTRY 
LIKE LFBK-BANKS,
          BANK_KEY     
LIKE LFBK-BANKL,
          BANK_ACC     
LIKE LFBK-BANKN,
          ACC_HOLDER   
LIKE LFBK-KOINH,

CRTL_KEY      LIKE LFBK-BKONT,
          IBAN         
LIKE TIBAN-IBAN,
          SWIFT_CODE   
LIKE BNKA-SWIFT,
          BANK_NAME    
LIKE BNKA-BANKA,
          PARTNER_TYPE 
LIKE LFBK-BVTYP,
          REF_DETAILS  
LIKE LFBK-BKREF,
          COLLECT_AUTH 
LIKE LFBK-XEZER,
       
ENDOF TY_LFA1.

TYPES : BEGINOF  TY_BNKA,
          VENDOR       
LIKE LFA1-LIFNR,
          COMP_ID      
LIKE LFB1-BUKRS,
          BANK_COUNTRY 
LIKE LFBK-BANKS,
          BANK_KEY     
LIKE LFBK-BANKL,
          BANK_ACC     
LIKE LFBK-BANKN,
          ACC_HOLDER   
LIKE LFBK-KOINH,
          CRTL_KEY     
LIKE LFBK-BKONT,
          IBAN         
LIKE TIBAN-IBAN,
          SWIFT_CODE   
LIKE BNKA-SWIFT,
          BANK_NAME    
LIKE BNKA-BANKA,
          PARTNER_TYPE 
LIKE LFBK-BVTYP,
          REF_DETAILS  
LIKE LFBK-BKREF,
          COLLECT_AUTH 
LIKE LFBK-XEZER,
       
ENDOF TY_BNKA.

*&---------------------------------------------------------------------*

*&---------------------------------------------------------------------*

*&  Data  Declarations

*&---------------------------------------------------------------------*

*&---------------------------------------------------------------------*

DATA: IN_LFA1 TYPE TY_LFA1 OCCURS0WITHHEADERLINE,
      IN_BNKA
TYPE TY_LFA1 OCCURS0WITHHEADERLINE.
DATA: IT_RAW TYPE TRUXS_T_TEXT_DATA.
DATA : BDCDATA LIKE BDCDATA OCCURS0WITHHEADERLINE,
       I_MSG 
LIKE BDCMSGCOLL OCCURS0WITHHEADERLINE,
       TEMP
TYPE STRING,
       I_RESULT
TYPE STRING.
DATA : CNT(4) TYPE N.

*&---------------------------------------------------------------------*

*&---------------------------------------------------------------------*

*&  SELECTION-SCREEN

*&---------------------------------------------------------------------*

*&---------------------------------------------------------------------*

SELECTION-SCREENBEGINOFBLOCK B1 WITHFRAMETITLETEXT-001.PARAMETERS: P_FILE LIKE RLGRAP-FILENAME.PARAMETERS: P_MODE(1) DEFAULT'N'.
SELECTION-
SCREENENDOFBLOCK B1.

*&--------------------------------------------------------------------*

*&  INITIALIZATION

*&--------------------------------------------------------------------*

INITIALIZATION.

  AUTHORITY-
CHECK OBJECT 'Z_VEND_CHG'
              
ID'ACTVT'FIELD'16'.
 
IF SY-SUBRC <> 0.
   
MESSAGE E999(M02) WITH'You are not Authorized to run the program'.
   
LEAVEPROGRAM.
 
ENDIF.
*&--------------------------------------------------------------------**& AT SELECTION-SCREEN*&--------------------------------------------------------------------*
AT SELECTION-SCREENONVALUE-REQUEST FOR P_FILE.
 
CALLFUNCTION'F4_FILENAME'
   
IMPORTING
      FILE_NAME = P_FILE.

*&--------------------------------------------------------------------*

*&--------------------------------------------------------------------*

*& START-OF-SELECTION

*&--------------------------------------------------------------------*

*&--------------------------------------------------------------------*

START-OF-SELECTION.
 
PERFORM EXCEL_UPLOAD.
 
PERFORM SPLIT_DATA.
 
PERFORM POPULATE_BDCDATA.

*&---------------------------------------------------------------------*

*&      Form  EXCEL_UPLOAD

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

 

*  <--  p2        text

*----------------------------------------------------------------------*

FORM EXCEL_UPLOAD.

*--To upload data from excel sheet to internal table
 
CALLFUNCTION'TEXT_CONVERT_XLS_TO_SAP'
   
EXPORTING
      I_FIELD_SEPERATOR    =
'X'
      I_LINE_HEADER        =
'X'
      I_TAB_RAW_DATA       = IT_RAW
      I_FILENAME           = P_FILE
   
TABLES
      I_TAB_CONVERTED_DATA = IN_LFA1
   
EXCEPTIONS
      CONVERSION_FAILED    =
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.                    " EXCEL_UPLOAD

*&---------------------------------------------------------------------*

*&      Form  POPULATE_BDCDATA*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM POPULATE_BDCDATA .

 

*--Populating internal table data to BDC
 
LOOPAT IN_LFA1.
   
REFRESH BDCDATA.
   
CLEAR BDCDATA.

*--Vendor data
   
PERFORM BDC_DYNPRO      USING'SAPMF02K''0101'.
   
PERFORM BDC_FIELD       USING'BDC_CURSOR'
                                 
'RF02K-D0130'.
   
PERFORM BDC_FIELD       USING'BDC_OKCODE'
                                 
'/00'.

   
PERFORM BDC_FIELD       USING'RF02K-LIFNR'
                                  IN_LFA1-VENDOR.          
"'111111'.
   
PERFORM BDC_FIELD       USING'RF02K-BUKRS'
                                  IN_LFA1-COMP_ID.         
"'0777'.

   
PERFORM BDC_FIELD       USING'RF02K-D0130'


*--For Bank data

PERFORM BDC_DYNPRO      USING'SAPMF02K''0130'.*    PERFORM BDC_FIELD       USING 'BDC_CURSOR'*                                'LFBK-XEZER(01)'.*    PERFORM BDC_FIELD       USING 'BDC_OKCODE'*                                 '=BANK'.
   
CNT = 0.
   
LOOPAT IN_BNKA  WHERE VENDOR = IN_LFA1-VENDOR.

     
CNT = CNT + 1.
* PERFORM BDC_DYNPRO      USING 'SAPMF02K' '0130'.
     
CONCATENATE'LFBK-XEZER('CNT')'INTO TEMP.
     
PERFORM BDC_FIELD       USING'BDC_CURSOR'
                                  TEMP.
     
PERFORM BDC_FIELD       USING'BDC_OKCODE'
                                  
'=BANK'.
     
CLEAR TEMP.

     
CONCATENATE'LFBK-BANKS('CNT')'INTO TEMP.
     
PERFORM BDC_FIELD       USING TEMP                        "'LFBK-

BANKS(01)'
                                    IN_BNKA-BANK_COUNTRY.      
"'br'.
     
CLEAR TEMP.

     
CONCATENATE'LFBK-BANKL('CNT')'INTO TEMP.
     
PERFORM BDC_FIELD       USING TEMP                        "'LFBK-BANKL(01)'
                                    IN_BNKA-BANK_KEY.          
"'34173197'.
     
CLEAR TEMP.

     
CONCATENATE'LFBK-BANKN('CNT')'INTO TEMP.
     
PERFORM BDC_FIELD       USING TEMP                       "'LFBK-BANKN(01)'
                                    IN_BNKA-BANK_ACC.      
"'311-8'.
     
CLEAR TEMP.

     
CONCATENATE'LFBK-KOINH('CNT')'INTO TEMP.
     
PERFORM BDC_FIELD       USING TEMP                        "'LFBK-KOINH(01)'
                                    IN_BNKA-ACC_HOLDER.        
"'XYZXYZ'.
     
CLEAR TEMP.

     
CONCATENATE'LFBK-BKONT('CNT')'INTO TEMP.
     
PERFORM BDC_FIELD       USING TEMP                        "'LFBK-BKONT(01)'
                                    IN_BNKA-CRTL_KEY.      
"'01'.
     
CLEAR TEMP.

     
CONCATENATE'LFBK-BVTYP('CNT')'INTO TEMP.
     
PERFORM BDC_FIELD       USING TEMP                        "'LFBK-BVTYP(01)'
                                    IN_BNKA-PARTNER_TYPE.      
"'PA'.
     
CLEAR TEMP.

     
CONCATENATE'LFBK-BKREF('CNT')'INTO TEMP.
     
PERFORM BDC_FIELD       USING TEMP                        "'LFBK-BKREF(01)'
                                    IN_BNKA-REF_DETAILS.       
"'SSSSSSSSS'.
     
CLEAR TEMP.

     
CONCATENATE'LFBK-XEZER('CNT')'INTO TEMP.
     
PERFORM BDC_FIELD       USING TEMP                        "'LFBK-XEZER(01)'
                                    IN_BNKA-COLLECT_AUTH.      
"'X'.
     
CLEAR TEMP.

     
PERFORM BDC_FIELD       USING'BDC_OKCODE'
                                   
'=BANK'.

     
PERFORM BDC_DYNPRO      USING'SAPLBANK''0100'.
     
PERFORM BDC_FIELD       USING'BDC_CURSOR'
                                   
'BNKA-SWIFT'.
     
PERFORM BDC_FIELD       USING'BDC_OKCODE'
                                   
'=ENTR'.

     
PERFORM BDC_FIELD       USING'BNKA-BANKA'                "'BNKA-BANKA'
                                    IN_BNKA-BANK_NAME.         
"'Banco Itaú'.
     
CLEAR TEMP.

     
PERFORM BDC_FIELD       USING'BNKA-SWIFT'                "'BNKA-SWIFT'
                                    IN_BNKA-SWIFT_CODE.        
"'abcd3333'.
     
CLEAR TEMP.
     
PERFORM BDC_FIELD       USING'BDC_OKCODE'
                                   
'=ENTR'.
     
PERFORM BDC_DYNPRO      USING'SAPMF02K''0130'.*      PERFORM BDC_FIELD       USING 'BDC_CURSOR'*                                    'LFBK-BANKS'.               "'LFBK-BANKS(01)'.
*-- For records more than five entries
     
IFCNT = 5.
       
CNT = 0.
       
PERFORM BDC_FIELD    USING'BDC_CURSOR' TEMP.
       
PERFORM BDC_FIELD    USING'BDC_OKCODE'   '=P+'.
     
ENDIF.

   
ENDLOOP.
   
PERFORM BDC_FIELD       USING'BDC_OKCODE'
                                 
'=UPDA'.*--Updating data into SAP
   
CALLTRANSACTION'XK02'USING BDCDATA
                           
MODE  P_MODE
                            MESSAGES
INTO I_MSG.

 
ENDLOOP.

*--- Handling error records
 
LOOPAT I_MSG.

   
CALLFUNCTION'FORMAT_MESSAGE'
    
EXPORTING
      
ID              = I_MSG-MSGID*   LANG            = ' '
      
NO              = I_MSG-MSGNR
       V1              = I_MSG-MSGV1
       V2              = I_MSG-MSGV2
       V3              = I_MSG-MSGV3
       V4              = I_MSG-MSGV4
    
IMPORTING
       MSG             = I_RESULT* EXCEPTIONS*   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.

   
WRITE / I_RESULT.

 
ENDLOOP.
ENDFORM.                    " POPULATE_BDCDATA

*&      Form  SPLIT_DATA*&---------------------------------------------------------------------*

*       text*----------------------------------------------------------------------*

*  -->  p1     

text*  <-- 

p2   

    text*----------------------------------------------------------------------*

FORM SPLIT_DATA .

IN_BNKA[] = IN_LFA1[].

*--Intenal tables Sorting
 
SORT IN_LFA1 BY VENDOR COMP_ID DESCENDING.
 
SORT IN_BNKA BY VENDOR BANK_COUNTRY BANK_KEY BANK_ACC IBAN SWIFT_CODE BANK_NAME.
*--Deleting duplicated entries
 
DELETEADJACENTDUPLICATESFROM  IN_LFA1 COMPARING VENDOR COMP_ID.
 
DELETEADJACENTDUPLICATESFROM  IN_BNKA COMPARING VENDOR BANK_COUNTRY  BANK_KEY BANK_ACC IBAN SWIFT_CODE BANK_NAME.


ENDFORM.                    " SPLIT_DATA

*----------------------------------------------------------------------*

*        Start new screen                                              *

*----------------------------------------------------------------------*

FORM BDC_DYNPRO USINGPROGRAMDYNPRO.
 
CLEAR BDCDATA.
  BDCDATA-
PROGRAM  = PROGRAM.
  BDCDATA-
DYNPRO   = DYNPRO.
  BDCDATA-DYNBEGIN =
'X'.
 
APPEND BDCDATA.ENDFORM.                    "BDC_DYNPRO


 

 

*----------------------------------------------------------------------*

*        Insert field                                                  *

*----------------------------------------------------------------------*

FORM BDC_FIELD USING FNAM FVAL.
 
CLEAR BDCDATA.
  BDCDATA-FNAM = FNAM.
  BDCDATA-FVAL = FVAL.
 
APPEND BDCDATA.ENDFORM.                    "BDC_FIELD

                             
                          

 

 

Conclusion :

 

It would be most useful , to create a BDC for an area , which is tedious to enter the master data for certain areas like Bank Data of vendor master . The above BDC program will update the bank data making sourcing consultant life easy .


LSMW migration with IDOC method and using IDOC as source Part1: Extract by ALE

$
0
0

In this blog I want to show one of my most used and preferred migration option using IDOC and LSMW

 

The business case: Data migration with a SAP legacy system. Many companies use already SAP for several years. Companies buy other companies. Both run SAP. The decision is taken to consolidate many SAP systems into just one.

 

Challenge: the legacy system has data for plants that were shut down, closed companies and abandoned purchasing and sales organisations.

 

 

The good thing: your company actually owns all systems and you can customize and develop in all those systems.

The bad thing: all love their data and want rescue as much as possible. While in many cases where the legacy system is not a SAP system you just get an Excel extract with maybe 20 or 30 fields, with SAP as legacy system you have to deal with several hundred fields for material, vendor and customer master migration.

 

Writing extract programs is a huge effort, downloading data from maybe 10 or more different tables not really less work and you still have to get the data together again.

 

This was the basis to search for a better option where I finally found a well known feature that saves us a lot of work, especially for the extract: ALE

 

ALE.JPG

In brief: I setup an ALE distribution in the legacy system to send e.g. vendors as IDOC  to a file. And in the target system I develop my LSMW object using this file as source file for my data migration.

 

 

I do not explain any single LSMW step in this blog in deep detail as I described it in in my other blogs:

http://scn.sap.com/community/erp/logistics-mm/blog/2012/12/27/lsmw-material-master-by-bapi-method--part-1
http://scn.sap.com/community/erp/logistics-mm/blog/2012/12/27/lsmw-material-master-by-bapi-method--part-2

 

So i am just focusing here on the difference to these other blogs and the specific setup of ALE distribution and IDOC import method

 

The homepage of LSMW can be found here in SCN at http://scn.sap.com/docs/DOC-26158

In that document you can find the links to the general documentation in help.sap.com too: SAP Library - Legacy System Migration Workbench

 


 

 

Setup ALE distribution in legacy system:


1)   Define Logical System

 

IMG > SAP NetWeaver > Application Server > IDoc Interface / Application Link Enabling (ALE) > Basic Settings > Logical systems > Define Logical System: 

name it ZFILESY  and enter Filesystem for IDocs as description

 


 

2)  Maintain ALE Port Definition

 

IMG > SAP NetWeaver > Application Server > IDoc Interface / Application Link Enabling (ALE) > Modelling and Implementing Business Processes > Configure Predefined ALE Business Processes > Logistics > Logistics <-> External Systems > External Transportation Planning Systems > Maintain ALE Port Definition (Transaction WE21) 

 

we21.JPG


The port need to be defined in  FILE  folder

Define Port: name it ZFILESY   enter a description:  IDOC to FILE in /DC_EX/M/

The IDOC record types for SAP Release 4.x need to be selected if you are in a system with release 4 or higher

The Unicode-Format field has to be activated if you are in a Unicode system

Enter physical directory /DC_EX/M/.   (I have to use a certain directory - this is due to a policy)

Select a Function module: I usually use EDI_PATH_CREATE_CLIENT_DOCNUM  , See F4 for alternatives

In order to prevent unprocessed files being overwritten, you use function modules which generate file or directory names dynamically, that is to say, at runtime.

Carry out an Access Test, this helps to identify wrongly entered directories and uncovers authorization issues.

 


3) Define Cross-System Company Codes

 

IMG > SAP NetWeaver > Application Server > IDoc Interface / Application Link Enabling (ALE) >  Modelling and Implementing Business Processes > Global Organizational Units > Cross-System Company Codes (Transaction OB72, SALE, OBB5)

 

a) Cross-System Company Codes

b) Assign Cross-System Company Code to Chart of Accounts

c) Assign Company Code to Cross-System Company Code

 

Cross-system company codes are used in the distribution in financial accounting. There is exactly one central system for each cross-system company code in the distributed environment. One company code has to be assigned to this cross-system company code on each system involved in the distribution.

When sending an IDoc with company code-dependent data, the company code is replaced with the cross-system company code in all company code fields.

Example:

Company Code

Migration

8740

8740

Company Code

Migration

4982

4982

Company Code

Migration

8787

8787

Company Code

Migration

8788

8788

 

 

 

4) Maintain Distribution Model

 

IMG > SAP NetWeaver > Application Server > IDoc Interface / Application Link Enabling (ALE) >  Modelling and Implementing Business Processes > Maintain Distribution Model and Distribute Views (Transaction BD64)

 

Here we need a distribution model

            Structure: model view (call it ZFILESY)

                                   Sending system (your choice)

                                               Receiving system  (ZFILESY)

!!! there is a valid from / valid to date – double click at distribution icon in front of the model!!!

 

Start with clicking the change icon, because this transaction starts as display

click Create Model view, enter technical name ZFILESY and a short text of your choice

BD64 Model view.JPG

 

then continue with Add message type, enter ZFILESY as Model view, you system as sender, ZFILESY as receiver and CREMAS as message type for vendor master distribution. Make use of F4, this helps to avoid typing mistakes

BD64 message type.JPG

 

Actually for customer and vendors you can generate the distribution model and do not need to add each message type manually in BD64

 

Just go to

IMG > SAP NetWeaver > Application Server > IDoc Interface / Application Link Enabling (ALE) >  Modelling and Implementing Business Processes > Configure Predefined ALE Business Processes > Logistics > Master Data Distribution > Proposal for distribution model: Customer and vendor masters (Transaction WYL2)


WYL2.JPG


 

5) Maintain ALE Partner Profiles

 

IMG > SAP NetWeaver > Application Server > IDoc Interface / Application Link Enabling (ALE) > Modelling and Implementing Business Processes > Configure Predefined ALE Business Processes > Logistics > Logistics <-> External Systems > External Transportation Planning Systems >  Maintain ALE Partner Profiles (Transaction WE20)

 

click the create button, then enter this data in the screen:


Partner profile type/Partner type: LS  logical system

Partner profile/Partner number: ZFILESY

 

Details at Post Processing agent

Typ: USuser

Agent: your user ID

Lang: EN

 

Now click the icon for create outbound parameter below the section for outbound parameters

in next screen enter Message type e.g. CREMAS for vendors 

enter Receiver Port ZFILESY and Basic type CREMAS03

Very important: set the radio button to Collect IDocs, and do not start subsystem, and flag the box for Cancel processing after Syntax error

WE20 Detail.JPG

 

 

 

 

 

 

Send data by ALE.


BD14 Send vendors

 

BD14.JPG

Enter the message type CREMAS  and your target system, the logical system ZFILESY

Enter 1, several or none account number of vendor for distribution. No entry means you send ALL vendors, this can take some time as SAP has to read the vendor master and create IDOCs.

 

After execution you get a pop-up telling you how much IDocs got created for your message type

 

BD14_a.JPG

after you click continue you get another pop-up telling you how much communication IDOCs got created:

 

BD14_b.JPG

 

The IDocs are still not send at this time, continue with transaction BD87

 

 

If this second Pop-up shows error B1039   0 communication IDocs generated, then you have done some setting wrong

  • Check if message type exists in a distribution model (BD64)
  • Check if the distribution model is avctive for the current date (BD64)
  • Make sure the message type is added to the partner profiles (WE20)

 

 

 


 

BD87 Status Monitor for ALE Messages

 

BD87 Selection.JPG

 

In the selection screen of BD87 just enter your partner system and execute to find all your IDOCs

 

BD87 b.JPG

 

SAP lists per status (e.g. yellow - ready for dispatch; green - successfully dispatched) each message type with its number of IDOCs

Place the cursor on a message type below the yellow status.

If you just have a few IDocs, then you can continue and click the Process button.

If you have more than 5000 IDocs and you want them all in one file (which makes most sense, especially if you use partner functions for vendors, then you should migrate all vendors in one shot) then choose from menu EDIT > Restrict and process.

Don't be confused with this name "restrict" as you actually want the contrary.

 

BD87 c.JPG

SAP has now taken all your IDOCs into the multiple selection. And the best part is, that this multiple selection can take hundred thousands while multiple selections in normal selection screen may only take 3000 vendor numbers until the application dumps.

You only need to extend the value of maximum numbers of IDocs  beyond the numbers of IDOCs you have. This ensures that all IDOCs are going into one file. Otherwise SAP would create several files.

 

Execute.

you get a pop-up telling you how much IDOCs got selected,  then choose from menu Program > Execute in Background

as it may take several hours to distribute those IDOCs

 

After the background job has finished, you can find the file with the IDOCs via AL11 transaction in the directory that you entered in your Port definition

Further it has the name that was automatically created via the function module entered in the port defintion.

AL11.JPG

 

The detail looks unstructured compared to normal flat files created from an Excel Spreadsheet:

AL11 detail.JPG

In the second part of this blog I will describe how to read this file as source file in LSMW.

Material master screen enhancement - How to transport T133D data rightly

$
0
0

I intended to create a new tab in material master (MM01/MM02/MM03). Some others had already created a new screen sequence so I just needed to create a tab and set up its subscreens. It also means all I need to do is creating a record in OMT3B and creating a new function group in OMT3C. After this, I put all the changed objects into a request and transported it into test system. The development system works fine, but not in test system. I checked all the data configuration. All of them are successfully transported. The only problem is I can't see the new tab name in OMT3R. But the sap system don't give a information let me transport this.

So I searched this and found there're notes 108059 and 108548 talking about this. It says when the screen sequence is changed the data in OMT3R are transported. Otherwise there's no information let you include them. I don't think this is right. Because maybe the configuration of development system is inconsistent with the one in test system. If you transport the whole screen sequence, maybe it will include the objects you don't want to transport.

For example, there're 2 tabs under screen sequence Z1: T1 and T2. The configuration of them are different between development and test system. Now you're going to create a tab T3 and transport it. If you include the Z1 into the request. The tab configuration of T1 and T2 will be overwritten. But if you don't include, it don't works.

I think it's a bug of SAP system. The error is SAP don't auto include the T133D data into the request.

 

I compared the data between development and test system and, found if you add a new tab, 2 configuration records will be created for the new tab in T133D, and 1 record will be modified its next tab. For example, before adding, the records are:

Tab     Its Next Tab

T1          T2

T2         

After adding:

Tab     Its Next Tab

T1          T2

T2          T3

T3

 

So all you need to do is run SM30, enter V_T133D, include the three new records into your request and transport it. Then you'll see your new tab in the test system!

RFQ-Making Purchasing Group optional ?

$
0
0

Hi,

  I found lot of messages/questions about making purchasing group as optional in Request for quotation (RFQ) Regarding this ,I would like to share some information about this. This is my first Blog in SDN.

 

Is it possible to make purchasing group as optional in RFQ (ME41)?.

The answer absolutely is NO.

RFQ.JPG

This is SAP Standard system behavior. The field 'purchasing group' is a compulsory field regardless of what is set in customizing(below)

RFQ.JPG

 

RFQ.JPG

 

This is hard-coded in program FMMEXE01(include FMMEXE01_EKGRP).  See no_input.

 

005510 * Pruefen Einkaufsgruppe

005520 *

005530 form ekgrp using ekg_ekgrp.

005540

005550 if ekg_ekgrp eq space.

005560 perform no_input using 'EKKO' 'EKGRP'.

005570 endif.

 

Conclusion:So,we we cannot make purchasing group field as optional in RFQ.

 

I welcome your comments and suggestions.

 

With Regards,

Jaheer Hussain,CRISTAL

Yanbu,KSA.

LSMW migration with IDOC method and using IDOC as source Part2: Import

$
0
0

This is the second part of my blog about LSMW migration with IDOC method

 

The first part can be found here: LSMW migration with IDOC method  and using IDOC as source  Part1: Extract by ALE

 

 

The business case: Data migration with SAP as legacy system. Many companies use already SAP for several years. Companies buy other companies. Both run SAP. The decision is taken to consolidate many SAP systems into just one. Example case: vendor master data

 

Challenge: the legacy system has data for plants that were shut down, closed companies and abandoned purchasing and sales organisations.

 

I do not explain any single LSMW step in this blog in deep detail as I described it in in my other blogs:

LSMW Material master by BAPI method - Part 1

 

LSMW Material master by BAPI method - Part 2

 

So i am just focusing here on the difference to these other blogs and the specific setup of ALE distribution and IDOC import method

 

The homepage of LSMW can be found here in SCN at http://scn.sap.com/docs/DOC-26158

In that document you can find the links to the general documentation in help.sap.com too: SAP Library - Legacy System Migration Workbench

 

 

 

Step 1 - Maintain object attributes

 

As this blog has the focus on IDOC import method put the radio button to IDOC and enter the same message type and Basic type that you used for your extract via ALE (see first part of this blog), Message type CREMAS with Basic type CREMAS05

You may get a warning message telling you that you have to activate IDOC inbound processing. I explained this activation in

LSMW Material master by BAPI method - Part 1

 

LSMW_V1.JPG

 

 

Step 2 - Maintain source structure

 

This is the painful part of this IDOC to IDOC method, as SAP does not give any entry aid or option to copy.

 

First open a new session and execute WE30 - enter your Basic type CREMAS05 as object name and click display

SAP presents the structure of this IDOC:

WE30_b.JPG


Now in LSMW step 2 click create icon and can copy and paste from this BD30 structure to your source structure definition. Just do not forget to add a Z in front of any segment name, to make the source name different from the target name.

 

LSMW_V2a.JPG

 

After the first segment is defined, put the cursor onto this segment and click again the NEW icon.

SAP answers with a pop-up asking you if the next segment is at the same level or lower level.

Make your choice and continue until the BD30 structure and your source structure look equal (except that your source structure has always a Z in the beginning of the name)

 

LSMW_V2b.JPG

 

 

Step 3 - Maintain source fields

 

In this step SAP helps you a lot, you can copy the fields from the repository

Place the cursor on a structure, then click the copy icon.

LSMW_V3a.JPG

 

Select Copy from Data Repository

LSMW_V3b.JPG

 

Enter the structure name (without Z) in the table name field and click continue

LSMW_V3c.JPG

SAP copied all fields with their definition to your source structure

LSMW_V3d.JPG

 

Now coming to the tricky part.

The IDOC has some overhead info in the beginning, before it comes to the fields MSGFN and LIFNR

Further, if you look at the IDOC, it is just a text file that looks chaotic, hence you have to tell your LSMW where it has to start to apply the mask.

Yes your read correctly,  your field definition is nothing else than a mask that is laid over the data in your source file

I circled the structure names that I could identify in the IDOC.

The IDOC (your source) is an outbound IDOC, because of that the structure name is slightly different, the second character in the structure name defines whether it is  inbound or outbound. The general data structure of a vendor master inbound is called E1LFA1M, while outbound is named E2LFA1M 

This E2LFA1M name is a good starting point for your mask

But directly after E2LFA1M the content in the IDOC is neither MSGFN  nor LIFNR.

The vendor number in this example is 520481, since the vendor number field is 10 long it is listed as 0000520481 in the file,

directly before LIFNR field is the MSGFN field (compare with your field definition above) this is the 005.

And all other data between E2LFA1M and 0050000520481 (marked yellow) is not needed for the migration.

IDOC.JPG

 

But how can we omit this data?

And how do we tell SAP that it shall start reading at E2LFA1M?

 

For this we have to define 2 more fields at the beginning of our source fields in each source structure

Let us call the first field IDENT, short for identifier. And the second FILLER, as it used to fill the space between our identifier and the MSGFN field.

 

Go into table maintenance, position the cursor at the first field and click 2 times insert line icon.

enter in the first line field name IDENT type C lenght 7, because the word E2LFA1M has 7 characters

in the second line enter FILLER with type C and a length of 56, which are the number of characters starting from the first position after E2LFA1M until  content 005 of field MSGFN begins.

If you have for example a segment name that is e.g. 11 characters long, then you define the IDENT field with 11 and the filler with only 52 characters.

 

Back on the overview of fields just double click the IDENT field to maintain further details, the "Identifying Field Content".

Here enter E2LFA1M, the segment name that could be found in the IDOC. SAP will read the content of the file until it finds the same word like maintained in  "Identifying Field Content". Then SAP will apply the mask with fields and move the the content to the xxx.READ file when executing the read step later.

LSMW_V3e.JPG


Now the field structure is like this one:

 

LSMW_V3f.JPG

 

you have to do the same for each segment in your structure, of course with the specific segment name, here an example from company code data segment:

LSMW_V3g.JPG

 


Step 4 - Maintain structure relations

 

Just a click step, assign all corresponding segments of your source structure to the target structure:

Place the cursor on the segment, then click Create Relationship icon. A pop-up displays your source structure, select the corresponding and continue.

 

LSMW_V4a.JPG

 

 

Step 5 - Maintain field mapping and conversion rules

 

The next fun part, because your field names in source and target structure equal, hence you can automatically map those fields in seconds.

Select from menu Extras > Auto-field Mapping

On the pop-up select "Match Fields with the same name" , apply the rule "Transfer MOVE" and select "No confirmation" , then execute.


LSMW_V5b.JPG

 

After that you can focus on the fields where you have to apply different rules and need to exchange values.

From my experience much easier to do this after having all fields mapped quickly, than doing it directly.

 

 

The challenging part (certainly not for Abapers) is to exclude the abandoned data and organisations from the migration. We could have done this already with filters in the ALE customizing. But I have seen to much scope changes in the past. Hence I try to avoid extra customizing in the source system and do all exclusion in my LSMW object in the target system....with a little coding in the field mapping.

 

Here an example for purchasing organisation

I have a subroutine called ZXXP04IDENT, it is just a name with some logic for myself, in which I read a mapping table.

If I do not find any entry in the mapping table, then it means that this purchasing organisation is not to be migrated.

In this case I process the SKIP_RECORD function, which will just forget what the program had just read and goes to the next record.

If  a mapping was found, then I check if the existing vendor master has already data for the mapped purchasing organisation. (missed to mention that we extend vendors that are already present in the target system).

If the existing vendor has already purchasing data for this purchasing organisation, then again doing the SKIP_RECORD function. along with writing a message into the conversion log.

If the purchasing organisation does not yet exist in an existing vendor, then the field content is moved.

 

LSMW_V5d.JPG

 

Similar checks are performed for company code  and deletion indicator (we migrate only undeleted vendor masters)

 

In this content I don't want to miss to tell you that a IDOC overwrites existing data. If you extend an existing vendor master, then you need to care that the general data is not overwritten. But you cannot just skip the segment as this will cause a Syntax error,

In that case the vendor number field LIFNR holds the vendor number of the target vendor, and all other fields in that segment have to contain a "/"  like in this example for NAME1 field:

 

LSMW_V5name1.JPG

 

 

Step 7 - Specify files

 

Special in this scenario is that our source file is located in the application server instead of your local drive.

Hence you select the entry Legacy data On the R/3 server  and click New entry

Here you enter the file name (including the directory if it is not your personal directory - I have a dedicated directory in this example), unfortunately there is no F4 help to search for the file name. (it is possible if you have only one application server, and even then the application server name has to be entered in a table that is not accessible through LSWM or any customizing path - so not really worth to talk about)

LSMW_V7.JPG

 

Select "No Separator" , an IDOC does not have separators. The IDOC does not have any field names, hence leave the box for "Field Names at start of file"  empty. As you defined the source fields from data repository, the field order matches with Source structure definition, so please activate this box. File type has a Record End Marker because it is a text file.

Set the Code page according to the code page that you have in the legacy system at the time you created the IDOCs by ALE.

 

 

Step 8 - Assign files

 

Assign your source file to each segment in the source structure

 

LSMW_V8.JPG


Continue with Read data,

verify that the data is in the correct fields in step "display read data"

then convert the data,

check the converted data.

then start IDOC generation

and process the IDOCs

All those steps are  explained in detail in my blog:LSMW Material master by BAPI method - Part 2

Nothing special for IDOC import method


Physical Inventory is more than just SAP - Legal Background and Preparation

$
0
0

In many discussions the physical inventory process is just reduced to a sequence of SAP transactions.

I often miss the reference to the reality,  what in reality has to happen to make a physical inventory a success instead of a show stopper for the business.

 

There is actually much more work outside SAP than with SAP.

 

And in this blog I would like to tell you how we used to organize a physical inventory to keep the impact on the daily business as minimal as possible.

 

 

The legal background

 

Why do we need to take a physical inventory?

It is a legal requirement in Germany (German commercial code §240 HGB) to do a physical inventory when you start a new business, then with each end of a fiscal year and when you shut down your business.  Similar laws can be found in other countries too.

 

How often do we need to take a physical inventory?

The law just requires to count the materials once at the end of a fiscal year.

But do you really only count your inventory because of the law, or do you benefit yourself by having an accurate quantity in your system?

Accurate quantity is needed for almost all activities in SAP to get better results in e.g. material requirements planning, in availability checks and less interruptions when fulfilling the demand.

Hence companies with low accuracy decide to count more often than legally required and use Cycle Counting to count important items more frequently than less important materials to reach a higher accuracy, while companies with high accuracy want count less and minimize the interruptions of usual business for the physical counts.

 

What inventory methods are allowed?

Even this is ruled by law. In general you have to count on the financial statement date, this method is known as annual inventory.

As this is not always practical some exceptional methods are allowed too.

Timely annual inventory allows to count the stock within 10 days before or after the financial statement date.

Advanced/postponed physical inventory allows to conduct the count within 3 months before or after the  financial statement date. The value at  financial statement date is then calculated based on the movements happened between counting date and  financial statement date.

Continuous inventory is allowed if each movement is properly maintained in a stock ledger.

Whatever method you use, you have to ensure that each item is counted once per year.

 

What to count?

in general the stock you own, raw materials, spare parts, operating supply, intermediates, work in process and finished materials.

 

Preparation of a physical count

The head of the physical inventory has to develop the physical inventory manual. The date(s) for the physical count has to be nominated. The auditors have to be informed and invited for those dates. The counting areas have to be identified and allocated to the counting teams. The inventory documents have to be prepared, will be filled with the counted quantities by the counting team, finally being signed by the counter and the auditors and kept for 10 years. 

 

 

 

Prepare counting

 

Determine Materials and Locations to count

Existing inventory reports like MB52 in inventory management and LX02 in Warehouse Management module are helpful to get an overview about the locations and materials that you have to count. So an estimate about the effort and needed resources can be made early.

In case of Cycle counting method you can use the ABC classification to assign counting intervals to your materials.

 

Schedule Physical Inventory

In case of annual inventory the date for the count is almost given with the legal requirements. In case of continuous inventory you are more free to decide about the counting dates yourself. So you probably count more in periods where you know from experience that you have less business, e.g. time of Summer holidays. However the schedule need to be communicated to auditors and all affected parties like Sales, Purchasing and Production etc. Sales and Purchasing departments may want to insert a standard text on orders informing customers and vendors about a plant shut down or possible delay because of physical inventory activities. All people who post movements have to be informed that all postings have to be as current as possible for an accurate inventory, you have to think about outstanding goods receipts, goods issues and stock transfers. This helps to minimize the inventory differences and of course the time for their analysis.

 

Organize Resources

Before performing the count you have to prepare and organize the resources. Plan sufficient time for this activity.Think about the availability of personnel and equipment. The resources needed may vary from the type of count and the materials to be counted.

About what resources we are talking here?

  • People: to create and print inventory documents, counters, re-counters, auditors, people to enter the count, difference approvers
  • Safety Eqipment: helmet, saftegy glasses, shoes, gloves, first aid kit
  • Tank specifications, conversion tables
  • Thermometers, Gauge poles,
  • tapes to mark materials/locations to be excluded from count (e.g. vendor consignment stock, already sold but not shipped materials)
  • tags to lable the counted materials to avoid double counting
  • pens, calculators to fill out the counting sheet
  • Flashlights
  • Scales to weigh e.g. partially filled drums who show an obviously wrong weight on the lable

 

 

 

As you could read there is a lot to be managed before you even start with creating physical inventory documents.

In a next blog I will specifically talk about organizing the count: Physical Inventory is more than just SAP - Strategic counting

Physical Inventory is more than just SAP - Strategic counting

$
0
0

In this blog I will continue with my thesis that Physical Inventory is more than just a sequence of SAP transactions, which I started in my previous blog: Physical Inventory is more than just SAP - Legal Background and Preparation

 

 

Creation of physical inventory documents and conducting the count

 

Hand in hand activities

I have read many questions asking "how to create automatically physical inventory documents" , in fact I could get 212 hits when using the SCN search with these key words: automatic creation "physical inventory"

Despite of having given technical instructions to achieve it I would not use it personally.

How can I know days or weeks in advance what situation I have in the morning of the counting day?

Are there already 20 trucks waiting to be be unloaded? Are all withdrawals and receipts posted? Have all transfer orders been confirmed? Is the staff available or do they suffer on yesterdays canteen food?

 

Creating and printing of physical inventory documents is not a long-running transaction. MI31 to create documents followed by MI21 to print the documents is done within 2 - 5 minutes.  I am not talking about newbies who do it for the first time and have not even made their selves familiar with the SAP transactions, physical inventory is an activity for professionals who got trained and executed the transactions in a test system too. Hence it can be executed manually in the morning (and later during the day) manually after the head of physical inventory has ensured that all postings are done. He may call the usual subjects who causing him headaches all over the year with delayed postings.

 

The physical inventory does not stop all business. It may interrupt it for a few hours. The art of physical count is to affect the normal business as less as possible.

To achieve this goal of minimal interruption we need to execute the physical inventory in a strategic way.

 

 

Let us have a Google Maps  view at one of our plants. I circled the areas in which we have items to count.

We have 3 large halls for materials that have to be protected from weather, which are rain and frost sensitive. Several open air storage areas for filled drums,  containers and empties. 5 tank farms, 4 production facilities and rail tracks with tank wagons.

 

inventur.JPG

 

 

There are 11 areas to be counted by warehouse personnel. The shop floor is counted by production personnel, the tank farms too.

Let's focus on the areas counted by the warehouse personnel.

We used to have 4 counting teams, each team is a party of 3, one who counts, one who writes the counted quantity into the form, and one with a forklift who can move pallets with material to enable counting in spaces where the goods are not stored accurate enough that people can free move in the aisles.

A few others who are not assigned to the counting teams can continue doing normal activities like loading and unloading trucks, receiving goods from production, moving raw materials to the shop floor.

 

The 4 teams have to count 11 areas in total, but can only count one area at a time, hence we only create inventory documents for 4 areas.

And which 4 areas  is determined right on time when we know where we currently have no receipts and issues.

 

Most areas are sub-divided into many sections (I try to avoid the words storage location and storage bin as these words are specific to a SAP module, and this blog is regardless of the module used). In the below picture I draw 4 lines to show that this area is actually 6 sections (storage locations or bins), which means that the counting team for this area gets 6 inventory counting documents then they start going there and count.

Of course they start in one corner and count through all items in sequence of their physical appearance. They do not jump based on the sequence in the counting document, because this way they could never find items which are not listed and not expected in that area

 

inventurHN1.JPG

 

While the teams are counting, the assistant in the office prepares the documents for the next area to be counted

When a team has finished their count, then they bring the counting sheets back to the office and get the next counting sheets in exchange.

The assistant is preparing the document for the next team  and starts entering the count in SAP for the documents brought back by team 1.

When the next team has finished they get the prepared inventory documents in exchange too.

 

Per inventory document we approximately have 20 to 40 items.

I think you can imagine that counting an area like shown in the picture above may take about 1 hour

Creating and printing of a physical inventory document  2 to 5 minutes

Entering a counting sheet about 2 - 5 minutes too.

So it is possible to have 1 or 2 persons in the office preparing the documents and entering the count while others count.

It is even already possible to create already difference lists directly after the count is entered and to determine the items that need a recount.

 

The first team that has finished their regular counting activities becomes the team for the recount (except on places where they did the original count )

The second finished team does then the recount on the remaining places where first team counted.

 

Once the recount is done and entered, the area is released for business again. Which means the third team that finishes with count will then start doing normal business activities in those areas.

 

The ramp where we store our receipts and the staging area for deliveries to the customers are kept open until all other areas are completely counted. Just for the unlikely event that a vendor delivers goods ignoring that he was informed with the purchase order about the physical inventory. Similar for a customer who might come along to pick up his order. Then these 2 spaces are counted as the final activities.

 

With our "strategic counting", everything goes hand in hand and we reach a minimal affect on usual business

In most cases we finished entering count, printing and posting differences within a quarter hourafter the last count was physically done.

 


Are you planning to change your pricing calculation schema?

$
0
0

If you are planning to make some modifications in your pricing calculation schema (transaction M/08), you should make sure that these changes do not lead to inconsistencies in purchasing documents that have already been created before the customizing is changed.

 

It is important that during this modification, the step and counter from already existing conditions are not changed, otherweise you might get error messages during goods receipt, invoicing and reversing already existing documents.

 

1.png

 

To achieve this you can:

  • Create a new calculation schema. Here you will play on the safe side. If you have to make many changes, this might be the most reasonable choice.
  • Change or add conditions to the actual calculation schema. In this case you have to make sure that you do not change the step and counter from already existing conditions.

 

Taking one of the above options, you should not get into trouble.


Having performance issues with reporting in purchasing with ME2* transactions?

$
0
0

In reporting transactions as e.g. ME2A, ME2M, ME2N,... the performance might not be as good as you expect.

 

The reason for this is that the selection criteria you use to execute the transaction is too wide and the main key, used while searching in the table, is not filled. Please note that all the reports search the database using a primary key.  All resulting datasets will be read by the system BEFORE further filtering by additional criteria takes place.

 

 

You should use the following keys for the different reporting transactions:

 

  • Performance issues in transaction ME2B:
    As transaction  ME2B is designed to report on purchasing documents per requirement tracking number, the performance of transaction ME2B can be improved by specifying the tracking number plus other selective criteria if possible.

 

  • Performance issues in transaction ME2C:
    As transaction  ME2C is designed to report on purchasing documents per material group, the performance of transaction ME2C can be improved by
    specifying a material group plus other selective criteria if possible.

 

  • Performance issues in transaction ME2K:
    As transaction ME2K is designed to report on purchasing documents per account  assignment, the way to improve the performance of transaction ME2L is to specify an account assignment plus other selective criteria if possible.

 

  • Performance issues in transaction ME2L:
    As transaction  ME2L is designed to report on purchasing documents per vendor,  the way to improve performance of transaction ME2L is to specify a vendor plus other selective criteria if possible.

 

  • Performance issues in transaction ME2M:
    As transaction  ME2M is designed to report on purchasing documents per  material, the way to improve performance of transaction ME2M is to
    specify material plus other selective criteria if possible.

 

  • Performance issues in transaction ME2N:
    As transaction ME2N is designed to report on purchasing documents per document  number, the way to improve performance of transaction ME2N is to specify the document number plus other selective criteria if possible.

 

  • Performance issues in transaction  ME2W:
    As transaction ME2W is designed to report on purchasing  documents per supplying plant, the way to improve performance
    of transaction ME2W is to specify the supplying plant plus other selective  criteria if possible.

How Find Path In SPRO With Tracking Code Transaction

$
0
0

How Find Path In SPRO With Tracking Code Transaction

 

 

We have transaction code for customizing like OMET but we
don't know where is  the path in SPRO transaction.
In some case in SPRO we can see tracking code in additional information column
but in more case does not show that code (you can active in menu Additional information- Display key-IMG activity).

picture1.png

 

 

Now we want to find path of tracking code like OMET in SPRO:

 

1-Run OMET transaction code

Picture2.png

 

 

2- from menu: select "table view" - print :

Picture3.png

 

 

3- we can See view "V_T160D" and remember that

Picture4.png

 

 

4- Now go to the SM30 transaction code , put View and select customizing :

Picture5.png

 

 

5- you can reach to path in customizing

Picture6.png

end

MRP Run for Selected Materials-Enhancement M61X0001

$
0
0

SAP standard provides MRP run for plant wise (MD01) or material wise (MD02/MD03).  Some industries /clients may require MRP run for a set of materials at once not for the complete plant. Requirement may be running MRP for one material type only which should include all materials in that material type.

How this can be done? It’s very simple. 

 

Using the enhancement M61X0001


For this SAP provides an enhancement called M61X0001. You can checkthis in transaction SMOD. Go to transaction SMOD and enter name of the enhancement.  You can read the documentation of the user exit which SAP has provided.  For implement user exit we need to get the help of an ABAPer.

 

 

Display the components of the enhancement.

 

 

This will show two function module exits.  EXIT_SAPLM61C_001 and EXIT_SAPMM61X_001. Double click one function module and display object list. (Ctrl+Shift+F5)

 

Inside EXIT_SAPMM61X_001 you will find the include ZXM61U01. This is where ABAPer should include the coding for material selection for MRP. 

 

Program LXM61F01 shows example coding material selection. You can check this program in SE38. If you have slight understanding about how to read an ABAP code you will understand how coding should be done for your own material selection. 

 

 

Creating the User Exit Key

You might have seen, above coding is based on a selection of a user key. In above example code MRP will run for the materials with FERT material type only when user has entered the key 001. Creating this key is a configuration and it should be done in OMIX transaction.

 

SPRO Path:

Production >Material Requirements Planning > Planning > User Exit: Material Selection for Planning Run

 

This key is just the reference for the ABAPer to write logic for material selection. You can have 3 letters for the key and put a meaningful description.

Once you create the User Exit Key it will appear in MD01 screen.

 

 

Now ask your ABAPer to write the ABAP code for material selection in MD01. You can link the user exit key with either material type, MRP controller etc. Just go through MT61D structure. You will see you can use MRP Controller, Material Group, Procurement Type etc as the basis of segregating materials.

 

Example:

I need to run MRP only for the materials with YENS material type when user has entered ESP with the plant. Below is the ABAP logic for my requirement.

when 'ESP'.

        if mt61d-mtart <> 'YENS'.

          no_planning = 'X'.

        endif.

 

Simple as that!

How to Extend Material Master Views by Using MM50

$
0
0

Dear SAP Practitionars,

 

This blog would guide you how to extend material master to 'Material Master Sales View' by using transaction code MM50.

 

Prerequisites: If any view is not displaying when you go inside the transaction MM50 you need to make it to display by selecting the view in OMS2.

 

Example: for HALB material ‘Sales View’ wouldn’t be displaying to extend neither in MM01 nor in MM50, since generally people would’ve not selected the view in OMS2 for HALB material type. So we need to go to OMS2 -->double click on the respective material type (HALB) --> and select the view which you want to display.


Note: Material code should have already maintained for all of the basic settings and views, (Basic Data 1, Basic Data 2 and Label Data) which is required for a material.

 

  1. Take the list of materials and use that to limit the data.
  2. Choose the views that you want to extend, i.e., "V" is for sales.
  3. Execute the transaction

 

Step 1: Select maintenance status (v)--> enter material numbers--> execute

Picture1.png

 

Step 2: Click on select all button to select--> and click ‘Maintain Materials’ push button to proceed further.

 

Picture2.png

 

Step 3: Once you execute the below screen would get displayed, click on enter button--> since in Sales: Sales Org. 1 view – tax code is mandatory it would take you to a view, where you can maintain tax codes.

 

Picture3.png

 

Step 4: Fill in the tax classification as shown below and click on enter button to proceed further

 

Picture4.png

 

Step 5: Once you click on enter button it would take you to Sales: Sales Org. 2 view, here ‘Item category group’ is mandatory, so enter the same to proceed further.

Picture5.png

 

Step 6: In Sales: General/Plant view nothing is mandatory, so you just have to click on enter button to proceed further.

 

Picture6.png

Step 7: Next it would take you to Foreign trade export, even here also nothing is mandatory, so you just have to click on enter button to proceed further.

 

Picture7.png

Step 8: The enter button would take you to Sales text view; here you can enter the text and click on save button to save the material.     

 

Picture8.png

Step 9: Click on save button to save the material

 

Thanks & Regards,

Narayana N

GR Message to Buyer When Goods Received into Certain Plant & Storage location

$
0
0

Requirement : GR Message to Buyer when goods received in a Certain Plant and Storage Locaton.

 

Configuration Settings.

 

1) SPRO-Material Management-Inventory Management & Physical Inventory-Output Determination-Maintain Condition Tables

 

Define a Condition table say 914 as per below screen shot and click on Generate button.

 

UntitledA.JPG

 

Now Click on Technical View and Select the Footer boxes for fields Plant and Storage location and Save.

 

MLGR.jpg

2) SPRO-Material Management-Inventory Management & Physical Inventory-Output Determination-Maintain Access Sequence.

 

Here assign the condition table created 914 to the Access Sequence 0002  (which is for GR Mails) and Save.

 

UntitledB.JPG

 

3) SPRO-Material Management-Inventory Management & Physical Inventory-Output Determination-Maintain Output types.

 

Ensure the details are maintained as per below Screenshots.

 

U.JPG

 

UntitledD.JPG

 

You can maintain your own text (Buyer message) under Mail title and texts tab for your language.

 

UntitledE.JPG

 

Click on Text icon and maintain your text and Save.

 

UntitledF.JPG

 

4) SPRO-Material Management-Inventory Management & Physical Inventory-Output Determination-Maintain Output Determination Procedures.

 

Ensure the data has been maintained as per below screen shots.

 

UntitledG.JPG

 

UntitledH.JPG

 

5) Now Maintain the Condition record for MLGR condition type in transaction MN21 for your Key combination Plant / Storage Loc. / GR Message as per below screenshot and save.

 

UntitledI.JPG

 

UntitledK.JPG

 

Click on Communication tab and Maintain the entry as below. When you click on Communication tab system shows a Pop up that Dummy receipient will be assigned then click on Yes button. You can maintain the Purchase group user name or any other user name as required. If you want to receive Express mail then click on the “Express mail” checkbox and Save.

 

Receipients.jpg

 

6) Now create a Purchase order and ensure that the GR message is checked in Header under Delivery/invoice tab and save the document.

 

UntitledL.JPG

 

ME21N GR mess.jpg

 

7) Now Perform the Goods receipt for the Purchase order created in above step and Ensure the storage location is used same as the condition record and Post the document.

 

UntitledM.JPG

 

8) Now you can check in your Inbox through SBWP transaction or by clicking on SAP Business Workplace from your SAP Easy access screen and you can observe the message delivered in your Inbox.

 

UntitledO.JPG

 

I welcome Suggestions / Comments.

 

Thanks & Regards,

Ashok Kumar Telugu

Having actual event description at PO History tab of any Purchase Order display

$
0
0

Whenever business user trying to view the purchase order history standard system will show the line item historical events like below. System will show event short text only, but we can avail the facility of exact event text by using the layout functionality.

29-08-2013 14-48-03.png

This can be changed and actual event name can be brought by following way Select Change layout -->Select Tr./Ev. to Displayed columns and short text to column set like below

29-08-2013 14-55-30.png

Then Save the layout and make it as default like below and this will be applicable to all the users

29-08-2013 14-57-01.png

Then we will get the exact event description the same can be easily understand by the any user

 

29-08-2013 15-00-48.png

 

Provide your  feedback and suggestions on the same.

 

R,

Amala

Demand and Supply Profiles

$
0
0

In any supply chain, we are using a planning hierarchy to transfer planned demand and balance supply with requirements on its various levels. A good understanding about what's happening at each level is essential to strike an effective balance of service and inventory levels.

 

Policy setting is at the heart of this task and the planner has to carefully evaluate when to perform a capacity check, requirements netting and the generation of supply elements.

 

This video strives to provide a basic model for demand and supply planning using profiles that are available in standard SAP ERP

 


Inventory Optimization is not a Project...

$
0
0

..... it's a process!


Projects have a beginning and an end, Inventory Optimization does not. When I talk about effective materials planning (in case you attend the ASUG Fall Focus in Philadelphia this year, I will speak on that subject on Friday, September 27), I point out four parts: 

 

1. Portfolio Management and 'house cleaning' of basic data and supply elements

2. Policy setting after Segmentation and Classification of your materials portfolio

3. Exception Monitoring

4. Inventory Optimization

 

The last part - Inventory Optimization - is the ongoing effort to provide maximum availability with minimum stock holdings for any given demand situation. And since the demand situation changes all the time, the policies that were driving that balance when you went live with the SAP system back in the days, may not hold water anymore.

 

What’s keeping your inventories optimized is the adjustment of basic data – lot size procedures, safety stock settings, forecast parameters, lead times and more – to the situation the individual item is under. Do we have consistent consumption and are able to forecast the demand? Does the item contribute a lot of value to our business or not? Does it have a short lead time? These and other questions will have to be answered before you can set the optimal parameters that drive automation and inventory optimization.

 

But if you answer the questions only once and don’t adjust the parameters as the answers to these questions change over time, your parameters will not support that automation or optimized inventory levels any more. The MRP run will generate supply proposals which do not conform to the paradigm of good service with minimum stock.

 

What usually happens during an SAP implementation is that because of the limitations in budget and time to Go-Live, only the most basic parameters are being set so that you can start using SAP. Typically this is MRP type PD (maybe a manual reorder level procedure VB), lot size procedures EX and a few periodic ones like WB and a static safety stock that’s guesswork. The planned delivery time is a big unknown and will be set generously, so that you will usually receive the item way ahead of its requirements date.

 

Then, after you have been using SAP for your materials planning for a while, the ‘Inventory Optimizers’ come in and sell you a 6 months project to get your basic data straight. This is a noble effort and yes, your planners need to understand all the parameters and how to set policy. But if you go through the tedious task to analyze and set up each individual part, your MRP Controllers will learn a great deal about all the fields in the material master record, but they will also divorce their spouses and move into the office.

 

And once all the materials are finally set up with the right policy, the situation changes – what was consistent consumption is no more, the material is procured from a different supplier and therefore a different replenishment lea time, the item becomes a slow mover because it’s replaced by another part etc. – you will have to start from the beginning. By that time the Inventory Optimizers are long gone. But don’t worry… they will come back in two years and sell you a new project.

 

So what should you do? Implement Effective Materials Planning with portfolio management, automated policy setting on a periodic basis, continuous exception monitoring within the framework of the Exception Minded Business and Inventory Optimization will be the byproduct of an automated process that will become second nature to your MRP Controller.

 

Automation is key here, and so is ‘managing by exception’. If you have to look at each item every day and set up each item manually, you will not be able to keep control over your inventory and service levels.


Tips & Tricks about MM-IM*

$
0
0

The intention of this first posting is to offer a kind of overview about common issues faced by MM-IM consultants. The purpose of this page os to help consultants who are initially beginning in the Inventory Management component.

 

The following sections will explain the most common MM-IM scenarios and issues, expose possible tips, solutions, how and what to check on each case, links to SAP Notes and SAP KBAs, and important documentation.

 

1. Process Overview

 

The process supported by SAP Inventory Management functionality allows a company to meet customer needs for the availability of material.

 

Inventory Management within SAP gives to the customer an effective set of processes for all types of goods movement within the plant. Streamlining plant processes can help companies to compress order-to-delivery time, decrease costs, reduce inventory, and improve customer service.

 

 

The Inventory Management component deals with the following tasks:

  • Management of material stocks on a quantity and value basis,
  • Planning, entry, and documentation of all Goods Movements,
  • Carrying out the Physical Inventory.

    

The stock is updated whenever a transaction is posted which implies a change in the stock. This way it is possible to obtain an overview of the current stock situation of any given material at any time.

 

The stocks are managed not only on a quantity basis but also by value. The system automatically updates the following data each time there is a goods movement:

  • Quantity and value for Inventory Management,
  • Account assignment for cost accounting,
  • G/L accounts for financial accounting via automatic account determination.

    

Goods movements include both "external" movements (goods receipts from external procurement, goods issues for sales orders) and "internal" movements (goods receipts from production, withdrawals of material for internal purposes, stock transfers and transfer postings).

 

For each goods movement a material document is created which is used by the system to update quantities and values and serves as proof of goods movements.

 

Finally, it is possible to carry out a physical inventory of the company’s warehouse stocks in order to adjust any possible unbalance between the quantities stored in the system and the quantities really present in the warehouse (unbalances can arise as a consequence of damaged goods, stolen goods, etc).

 

 

 

The Inventory Management Process happens at the Plant level and its relationship with the Storage Locations within the Plant.

 

All relationships between the Storage Location and its Storage Types, Warehouse Number, Storage Area and Storage Position are approached by the Warehouse Management Process (LE-WM* component).

 

The Inventory Management Process depends on the material master data creation. However, all issues related to material master data belongs to General Logistics area (LO-MD-MM component).

 

 

 

2. Goods Movements Scenarios: The Movement Types

 

 

The Inventory Management process within SAP means movements inside the plant that can create a change in stock levels within the storage locations designated to that plant. The movement of stock can happen in different ways like goods receipt, goods issue, a stock transfer between plants, or an internal transfer within a plant.

 

For every goods movement, the SAP system can create two types of documents: a material document and an accounting document. The SAP system follows the accounting principle that for every material movement, there is a corresponding document that provides details of that movement. In addition, an accounting document is produced that describes the financial aspects of the goods movement. However, the accounting document is only relevant if the material is valuated.

 

The material document is produced for each movement type. It contains the date of the material movement, the material number, the quantity of the material moved, the location of the movement, the batch number if applicable, and the movement type.

 

Changes cannot be made to the material document after it has been posted, except when you are only changing the header and item text. If an error was made on the material movement, it has to be reversed and the movement correctly entered. This will produce a material document for the reversal and then a new material document for the correct movement.

 


 

The database tables to keep the material documents are:

 

MKPFMaterial document header-data
MSEGMaterial document item-data

 

 


 

And the Key-fields are:


MANDTClient
MBLNRMaterial document number
GJAHRFiscal year
ZEILELine number (only in MSEG)

 

 


 

To check material documents you can directly display via transaction MB03 or search for material documents via transaction MB51.

 

The same goods movement can be posted on-line using different transactions or by means of BAPIs or Idocs.

 

What really identifies a goods movement is the movement type: It is a three-digit code which differentiates between the various kinds of goods movements which can be entered in the system.

 

Movement type is a key to generate a material document which identifies a goods movement.

 


 

Characteristics of Movement Types:

 

  • Three-digit identification key for a goods movement
  • Quantity control (stock tables)
  • Value control (FI document, account determination)
  • Screen layout (dialog only)
  • GR/GI slip print
  • Checks (min. shelf life, dynamic availability, etc.
  • Link to WM, QM, serial numbers

    

  

 

Classification of Movement Types:

 

 

 

1xxGR from purchasing/production + returns
2xxGI for consumption
3xxTransfers
4xxTransfers for Special Stock
5xxGR without reference to PO or PP order
6xxLE-SHP movement types
7xxPhysical inventory (MM-IM: 70x / WM: 71x)
8xxBrazilian Movements and Industry solution
9xx, Xxx, Yxx, ZxxCustomer range

 


 

The different movement types are documented in the IMG.

 

In any internal test system or in customer’s system you can check the documentation of the movement type going to the transaction SPRO, then "SAP Reference IMG" (or F5), and open the path:

 

SPRO

 

> IMG

 

>> Materials Management

 

>>> Inventory Management and Physical Inventory

 

>>>> Movement Types

 

>>>>> Copy, Change Movement Types

 

Once you are in this last activity "Copy, Change Movement Types" donotexecute the transaction, but click in the "IMG activity documentation icon" instead. You will be able to see the some general information concerning the movement types and then specific information for every single movement type.

 

To check the movement type configuration you should execute this activity "Copy, Change Movement Types" or you could directly access transaction OMJJ.

 

3. Critical issue in the MM-IM component

 

Unfortunately, there is not a "standard" critical issue in the Inventory Management Area.

 

Most cases of this kind arise when customer is not able to save goods movements into the system because of the existence of error messages.

 

Normally customers can wait for one day to be able to post the goods movement, but the situation can be more complicated depending on the number of postings which are stopped and depending also on the date in the month: When customers are about to do the period closing and they urgently need to post the goods movement on a required date.

 

3.1. When no goods movements at all can be posted into the system

 

Most cases in which goods movements are completely stopped from being posted relate to issues with the number range or the posting period.

 

In errors addressing to duplicated entries (dump "SAPSQL_ARRAY_INSERT_DUPREC") for material documents always check the current number in use in the number range interval (customizing transaction OMBT). Then check in SE16 the last number really used. This number found in SE16 cannot be higher than the current number in the number range interval. If this is the case, the current number in the customizing should be increased accordingly. Check also in SE11 the index used for the relevant table. See if any index has been set as unique. In this case, see if, according to this unique index, duplicated entries are being created (for example, a unique index is set considering only the fiscal year but not the document number: as soon as two documents are created within the same year, the system will consider that they are duplicated entries).

 

In Inventory Management it is only possible to post into the current and the previous period. It is not possible to post into other periods. If re-opening a previous closed period is needed, please, check the note 1085641, section "Period Closing Problems".

 

 

3.2. When the process fails for only some certain materials in certain plants

 

 

3.2.1. Inconsistencies

 

The most common reason for urgent cases in this scenario is the existence of database inconsistencies. These cases are processed by the component MM-IM-GF-INC.

 

The fact that inconsistencies exist does not justify the criticality. For example, if the customer detected an inconsistency by looking at the tables or by using the transaction MB5K, this has to be analyzed, but it is not too urgent to be considered as production down.

 

A critical stock inconsistency issue is justified only if:

 

- The inconsistency prevents further postings (error message) in urgent processes.

 

- The inconsistency leads to a delay in the year-end close. Monthly closing processes must not be delayed because of inconsistencies.

 

So, in this case, customer gets one of the following messages when posting the goods movement:

 

 

M7 308 'Stock value and qty are unrealistic: & / &

 

M7 309 'Stock value is negative: &

 

M7 310 'Valuated stock is negative: &

 

M7 314 Valuated stock becomes negative: &

 

These messages are generated if the system finds a data inconsistency when reading the material master data (this is, the stock quantity or the stock value is already inconsistent before the goods movement). Further data about this situation can be found in the SAP KBA note 1618888. This KBA points to relevat notes which explains possible reasons for the generation of database inconsistencies as well as how to proceed in this case.

 

 

Error ‘M7308’:

 

If customer is reporting error ‘M7308’ and you run the report ‘MBQUANT(S)’ and see the description "Please post MR21 with standard price &1 price unit &2" it is not necessary to forward to IMS. You should ask to customer to post a price change in transaction MR21 and then post a price change once again. See KBA note 1708261 for further details.

 

 

"False" inconsistencies:

 

If customer reports negative stocks (error ‘M7310’) although they have not been allowed in the Customizing (OMJ1), indicate the note 935755.

 

 

3.2.2. How to proceed for other error messages?

 

  • Check with customer if there have been any recent changes in the customizing or if new user exits or BAdIs have been implemented (transaction SE95).

 

  • Also check if there have been any recent Support Package upgrades or if customer is migrating into a new Release.

    

  • Check if dumps, update termination errors or express documents are generated.

 

  • Dumps can be displayed in the transaction ST22.The dump specifies the coding section (include) and the error message. Use this information to determine the proper CSN component. Often dumps in MIGO are caused by "A" messages from other modules like FI, CO, etc, if you recognize here the correct component you should forward it to the corresponding area.

    

Consider specially the note 386152: A dump MESSAGE_TYPE_X in SAPLMBWL / LMBWLU21 /MB_POST_GOODS_MOVEMENT occurs in MM-IM only in order to avoid the generation of inconsistencies.

 

The long text of the termination contains information on the actual error cause (section "error analysis").

 

  • Update termination errors can be seen with the transaction SM13. Double click in the lines with status "Err" for further information about the problem. If a dump has been generated, it can also be displayed from here.

 

  • Express documents are the notification to the user of dumps or update termination errors.

    

  • The transaction SM50 for the Process Overview can be used to see the tables that are being updated after the posting of a goods movement (useful when the material document is posted but there is a delay in the database update).

 

  • Always perform note and message searches for similar messages that may have occurred for other customers.

    

 

4. Transactions in Inventory Management

 

The Enjoy Transaction MIGO was first made available in Release 4.6A. Since then its functionality has been constantly growing to cover as many possible goods movements as possible. Here there is an overview of the tasks the functionality of MIGO offers for every Release and the old MBxx transaction that it replaces. As advised before, if a process fails using MIGO, it is always a good idea to check if the error is the same using the old transaction MBxx.

 

Release 4.6A:

  • Goods receipt for known purchase order (transaction code MB01)
  • Goods receipt for unknown purchase order (transaction code MB0A)
  • Enter return delivery (transaction code MBRL)
  • Release blocked stock (transaction code MBSF)
  • Enter subsequent delivery (transaction code MBNL)
  • Cancel material document for goods receipts (transaction code MBST)
  • Display material document for goods receipts (transaction code MB03)

    

Release 4.6C: The following functionalities are added to the ones listed before:

  • Goods receipt for order (transaction code MB31)
  • Other' goods receipts (transaction code MB1C)
  • Goods issue (transaction code MB1A)
  • Cancel material document for goods issues (transaction code MBST)
  • Display material document for goods issues (transaction code MB03)

    

Release 4.70: The following new functions are made available:

  • Transfer Postings and Stock Transfers (transaction code MB1B)
  • Subsequent Adjustment in subcontracting (transaction code MB04)

 

5. Important tables in the Inventory Management Area

 

 

Document Tables:

 

TableMeaningKey fields
MKPF Header: Material Document Document number (MBLNR), year (MJAHR)
MSEG Material Document – segments/ lines Document number (MBLNR), year (MJAHR), line number (ZEILE)
BSIM Index for material to the FI-documents Material (MATNR), Valuation Area (BWKEY)…
CKMI1 Material ledger index, used to
document changes in MBEW for each
movement
KALNR, use mbew-kaln1


 

Valuation Tables:

 

TableMeaning
MBEW Material Valuation
EBEW Sales Order Stock Valuation (from 4.0 on)
QBEW Project Stock Valuation (from 4.0 on)
OBEW Valuated Stock with Subcontractor (from 4.6 only for Japan)


 

Stock Tables:

 

TableMeaning
MARC Plant Data for Material
MARD Storage Location Data for Material
MCHB Batch Stocks
MSSL Total Special Stocks with Vendor O
MSLB Special Stocks with Vendor O
MSKU Special Stocks with Customer V,W
MSSA Total Customer Orders on Hand E
MSKA Sales Order Stock E
MSSQ Project Stock Total Q
MSPR Project Stock Q
MKOL Special Stocks from Vendor K,M

 

6. Important breakpoints for debugging

 

Check all data before posting:

 

Important breakpoint when we work in productive environments and we cannot save the posting. This is the last point in which the debugging can be re-started. Breakpoint in MM07MFB9, form BUCHEN_AUSFUEHREN.The internal table XMSEG shows how the document would be posted.

 

Check data defaulted from other documents or master data:

 

Data from the Material Master: Set a breakpoint in the function module MATERIAL_READ.

 

Goods Issue for Reservation: Breakpoint in MM07MFR0, form RESERVIERUNG_LESEN, at call function MB_READ_RESERVATION_POS_WA. Check the internal table XRBEFU. The same function module is also called from the include LMBWLU10.

 

Cancellation of a Material Document: Breakpoint in MM07MFB1, form BELEG_LESEN, at call function MB_READ_MATERIAL_POSITION. Goods Receipt for Production Order: Breakpoint in MM07MPPS, form PPS_AUFTRAG_PRUEFEN, at call function CO_SF_ITEM_GOODS_RECEIPT.

 

For valuation data, set a breakpoint in the include LMBGBFPP (4.0: LMBGBFWR) at call function CK21_ITEM_GOODS_RECEIPT.

 

Goods Issue for Production Order: Breakpoint in LMBGBFWR, form WERTE_ML_INITIALISIEREN, at call function CKML_F_CKML1_PRICES_GET.

 

Check data in the interfaces:

 

Data in the accounting interface: Breakpoint in MM07MFF9, form F-BELEG_ERGAENZEN, at call function CKMV_AC_DOCUMENT_CREATE (2nd page). The internal tables XACCIT (for the accounting document item data. It will be the data in BSEG when the document gets posted), XACCHD (accounting document header data: BKPF) and XACCCR (for the values in the different currencies) can be checked here.

 

Data in the MB_CREATE interface (valid for all goods movements posted automatically like postings from SD - Goods issues for deliveries -, from PP – backflush; confirmation of production orders, EDI, QM, BAPIs, MIGO, etc.): Breakpoint in LMBWLU14, function module MB_CREATE_GOODS_MOVEMENT. See the data in the internal table IMSEG.

 

Check some other data:

 

Check the account determination process: Breakpoint in function module MR_ACCOUNT_ASSIGNMENT (at "SELECT SINGLE * FROM T030…").

 

Check the account assignment data: Breakpoint in function module K_COBL_CHECK.

 

Check the movement type being posted: Breakpoint in function module MB_CONTROL_MOVETYPE_GET_SINGLE.

 

Check the valuation: Breakpoint in MM07MFF9, form F_SEGMENTE_GENERIEREN at call function MB_CALCULATE_VALUES.

 

Special program MBDEBUG: Some of these Breakpoints can be set automatically by executing the program MBDEBUG in SE38 and setting a flag in the desired point. A "stop" icon will be displayed as soon as the breakpoint is selected (i.e. activated). Exit the report going back with the green arrow (F3) and the system will stop at the breakpoints activated this way.

SAP content into Open XML documents

$
0
0

Hello.

In SAP we use a lot of documents

in and out from SAP.

Mostly we use the SAP document handling.

Did you ever ask yourself how easy  it could be

if you can use the old and familiar MS-Office documents

with SAP?

Think how it can be easy with your users and clients

 

if you can give them  a known and popular environment

such as MS-Office to work with their documents.

 

This environment exists now

and it's called Open XML for SAP.

 

in this screen cast you can learn more

about the options of Open XML documents and forms that can

help you and your users in your daily tasks.

 

Intrastat declaration Belgium: Import - based on INVOICE RECEIPT

$
0
0

Requirement

 

Intrastat declaration in Belgium must be based on Invoice Receipts

 

Symptom

 

  1. When you have both GR and IR in the same month, you declare the IR quantity and IR value in that month.
  2. When IR occurs in the month following the month of GR, you declare the IR quantity and IR value in the month of IR.
  3. When the IR has not occurred at the end of the month following the month of GR, you declare the GR quantity and the GR value in the month following the month of GR

 

Problem

 

Because of the behavour 3, Intrastat requirement does not meet.

 

Solution

 

SAP Note 534504 explains how the logic works for the different settings for declaration.

 

Selection logic
1. button:   at first the text and then the explanation
Report: Goods Receipt + Wait for Invoice/Import Data: MM Purchase Order -> by the selection 'goods receipt and invoice will be considered'

2. button:
Report: Goods Receipt + Wait for Invoice/Import Data: Delivery/Purchase -> by the selection 'shipping notification and invoice will be considered

3. button:
Report: Invoice Receipt/Import Data: MM Purchase Order -> by the selection 'only invoice will be considered'

 

Use the setting 3, this way MEIS will only report on invoice receipt.

 

You get there by choosing the Customizing path:
Materials Management > Purchasing > Foreign Trade/Customs > Periodic Declarations > Control Data > Run Data Selection Control > select the respective entry and branch to the detail screen > in field 'selection conditions', you have the following options:


' '   Goods receipt and invoice will be considered
'A'  Shipping notification and invoice will be considered
'B'  Only invoice will be considered

 

Review also the attached SAP Note 213765. This note explains how the selection logic works for various scenariosin intrastat reporting.

Ariba Network Integration for SAP Business Suite

$
0
0

 

Thevnew SAP Business Suite Add-On for Ariba Network integration makes it easier for buyers to integrate their SAP ERP system with the Ariba Network for supplier collaboration.

 

 

  • Integration between all supported SAP ERP releases and the Ariba Network
  • Available to SAP ERP Customers with Ariba Collaborative Finance or Ariba Collaborative Commerce bundle
  • Transact purchase orders, change orders, order confirmations, ship notices, invoices, and invoice status updates over the Ariba Network.
  • It’s easily downloaded from the SAP Service Marketplace
  • It’s customizable and extensible for customers.
  • There are two ways to leverage the new Add-On:
  • Option 1 - Direct connectivity with the Ariba Network (AN)
    • Enables direct connection to the AN with no middleware
  • Option 2 – Mediated connectivity with the AN using PI 
    • Enables customers to leverage their current SAP PI installation with the SAP ERP Add-On using a Light Weight, easy-to-implement adapter
    • The PI adaptor is available on Ariba Connect. 

 

 

erp_addon.png

 

 

 

 

Benefits to implementing
the SAP Business Suite Add-On for Ariba Network Integration:

 

 

  • Streamlined installation – shortened time frame to set up
  • Well known and proven infrastructure - SAP NetWeaver WebServices
  • Leverages existing landscape – flexibility to select the connectivity option that best fits your needs and landscape
  • Reduces hardware configuration which lowers the total cost of ownership
  • Robust out of the box integration – integration via application interfaces using cXML (commerce eXtensible markup language)
    messaging format
  • Modification free, release independent Secure connectivity from Buyer’s On-Premise system to the Ariba Network in the Cloud

 

 

With the Add-On, SAP ERP Customers have a quick and easy method to take advantage of the Ariba Network.

 

Note: The Add-On is available for Ariba/SAP Customers who have subscribed to the Ariba Network with the Ariba Collaborative Finance or Ariba Collaborative Commerce bundles.

 

 

 

WhyThe Ariba Network?

 

 

The Ariba Network helps organizations extend their SAP ERP investments. By connecting to the Ariba Network, SAP customers enjoy a single connection to thousands of suppliers, regardless of their technology or sophistication. Customers can enjoy reduced PO handling costs, ensure timely PO delivery, provide supply chain visibility to mitigate supply risk, and make AP more efficient.   Additionally, the Network supports suppliers in cutting processing costs and more importantly eliminating delays that slow payments.

 

 

 

SAP Ramp-Up Program

 

 

The SAP Ramp-Up program began October 14th. Ramp-Up participants will need to contract for the Ariba Collaborative Finance or the Collaborative Commerce Bundle prior to be fully approved for the Ramp-Up program (if you don’t have those already).  Each Ramp-Up project will have the coordinated efforts of SAP Development, Quality Assurance and Service & Support teams, who in conjunction with the dedicated Ramp-Up team, will support the implementation and give priority attention to the project. 

 

You can sign up for Ramp Up using the SAP Online Scoping Tool.

Viewing all 128 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>