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

TO HAVE OR NOT TO HAVE REALISTIC QUANTITY ON STOCK? THIS IS THE QUESTION...

$
0
0

Driving through the long road of MM world, I heard similar questions many times from consultants, customer and colleagues asking how to overcome error of
unrealistic stock value at SAP System.

 

Well, different customers, different business scenarios, different behaviours. But, I would say that in most of cases we can use some workarounds to avoid errors from this nature.

 

Especially talking about error messages 'M7 304' and 'M7 308'.
M7304 - Stock value and quantity unrealistic: & / &
M7308 - Stock value and qty are unrealistic: & / & -> see long text

 

Let's talk about these above errors in details:

 

M7304

 

This error is raised in the following piece of code:

.
SAPLMBGB LMBGBFST
FORM     WERT_SIMULIEREN
...
     IF ( w-salk3 < 0 AND NOT w-lbkum < 0 ) OR
         ( w-salk3 > 0 AND NOT w-lbkum > 0 ).
        WRITE w-salk3 CURRENCY i_waers TO l_salk3_message.
        WRITE w-lbkum UNIT i_meins TO l_lbkum_message.
        MESSAGE e304 WITH l_salk3_message l_lbkum_message.
      ENDIF.
...
If the field MBEW-SALK3 (Total value on stock) is becoming lower than zero and then error is raised.

 

- Common reason:
If the Tax condition is customized as non-deductible taxes, then the amounts are added to the material value and - during goods movement -
and subtracted from the stock value. If the same material was previously posted to the stock with deductible taxes, a negative balance can result.

 

- Comment:
A negative stock balance cannot be prevented by allowing negative stock in the material master. A negative stock value is only tolerated in
conjunction with negative stock quantity but not with zero stock quantity.

 

- General solution:
A withdrawal of stock material should be posted with the same tax settings as the placement of material into the stock, i.e., in both cases 'deductible' or in both cases 'non-deductible'. The non-deduct. taxes that are due are to be added to the material value on the receiving-plant side, at goods receipt thus.

 

- Workaround:
A possible way to overcome the error in this particular case is to increase the stock temporarily (movement type 561), so the stock amount is not zero after goods issue, and to correct for the stock increase after the goods issue (movement type 562).

 

- Another possibility is MR22 transaction.
Use the function "Debit/credit material" (contained in Valuation menu) to post a correspondingly high material debit (if value is negative) or
material credit (if value is positive) for the material. Then carry out the goods movement. When you use this procedure, the system creates a
revaluation document.

 

M7308

 

Error 'M7 308' is usually caused by a rounding issue.
In case, it is because the total quantity on stock is not matching to the total value on stock.

In order to solve this error we should recalculate the total value.

And to do that we have to post and re-post a price change in transaction MR21.

 

Solution:
- go to MM03 transaction and check the price in Accounting 1 view.

-  then, go to MR21 transaction and post a price change by increasing the price in 0,01. For example, if price is 100,00 USD change to 100,01
USD.

- open MR21 transaction once again and then post a price change by reducing the price in 0,01. For example, from 100,01 USD to 100,00.

 

Once these price changes have been posted the total value on stock will be adjusted and then you should be able to make any necessary goods
movements for this material.

 

See the following notes as reference:
1026379 - MB5K: Misleading error message 045 due to rounding
1708261 - Error 'M7 308' is raised when trying to post a goods movement

 

Best Regards,
Fábio Almeida
SAP Consultant - ERP MM


using a reorder procedure for inter plant stock transfers... whats the lead time?

$
0
0

Yes, you can use a reorder point procedure for inter-plant stock transports, but be careful what you put into the lead time.

 

When you source materials from one of your own plants, your lead time (in the field Planned Delivery Time  (in the delivering plant) should be the time it takes from the issue in the delivering plant until it arrives at the receiving plant. The only question is: Can the delivering plant issue right out of available stock?

 

If the delivering plant does not keep the product in stock but has to procure it also, then the total lead time until it arrives in the receiving plant will increase dramatically. But if you put that total time into the PDT, you will ask the delivering plant to issue way too early. Unfortunately the TLRT in MRP3 does not work with procurement indicator 'F', so what can you do?

 

I know people have played around with source lists and info records but if you want to use an automatic reorder point calculation (VM or V2) you need to put the total replenishment lead time into the PDT, because that is what the reorder point calculation uses. So you are stuck with a manual reorder procedure (VB or V1) and you will have to include the entire total replenishment lead time in your spread sheet calculation.

 

The SAP Add-On Tools (MRP Monitor and Reorder Point Simulation) give you added possibilities: Since the MRP Monitor also performs an EFG classification for lead time - and lets you pick the TRLT from the MRP3 screen - you can build a list of items which are feasible for an auto-reorder procedure (X - consistent consumption, C - low consumption value, E - short lead times). The Safety Stock and Reorder Point Simulator then lets you calculate and simulate various service levels for optimized reorder points and safety stock settings... and allows for a mass update of the policy.

 

for more info on the SAP Add-On Tools refer to the www.bigbytesoftware.com website or check out my YouTube channel.

Myth Buster: Any system message can be set to warning or error

$
0
0

It is time to clear up a widely mistaken belief, although it became almost established as truth due to the massive wrong answers given in a high disproportion when someone failed to search or is seeking for a new answer to the question "How to make error message & a warning?" or "Changing warning message to error not working" 


It is really interesting to see how attractive such questions are. Within a few minutes several answers are pointing to the customizing. Some mention the IMG path others are giving the transaction code to the same customizing. I wonder from where these suggestions are taken. Did they look up older questions and just repeat the answer? Or do they just believe that any system message can be customized, one only has to know the right customizing transaction.


So the typical discussion goes like this:

"I want to make message MM 081 to become an error"

"no problem - execute OMT4 and add this message and maintain an E for error"


oops2.PNG

 

Why was he shocked?

 

OMT4 does not even have a "New Entry"-Button

 

omt4.PNG

 

No issue at all, now the Techies jump in and inform that this is all stored in table T160M and suggest to maintain this table directly with SM30 transaction

 

: not possible  I get and error "The maintenance dialog for T160M is incomplete or not defined"

 

: Click the message, it takes you to the long text. Here you have the option to generate a maintenance dialog

 

: Thank you.

 

: Hi, I have one more question. I added the message as said. But it does not work, can you help me.

 

All are going now, leaving a desert with an unanswered question, and one more thread about how and where to maintain flexible system messages

nurweg.PNG

 



Have you ever tried to start a car that you see in a parking space with your own keys? Why not? Probably because you know that you cannot use any key to drive any car. Why are you assuming it for any message in SAP?


Just imagine the car is transaction where you expect the warning or error according to your entry (the key) in table T160M (ignition lock). You already smashed the window to open the door (SM30, because OMT4 did not let you in)

Still the motor does not start. Are you disappointed?


Like the ignition lock needs the right key, your SAP transaction needs the right ABAP that recognize your entry.

If SAP has not foreseen a variable message in its ABAP coding, then you enter as much as you want in T160M, it will just not work.


SAP's system messages are all stored in table T100, a small subset is foreseen to be customized, these are stored in table T160M.

T160M entries are delivered by SAP. Some more messages can be added because the programs have been prepared for this. Those new entries are usually communicated via OSS notes.


How to know if a message is customizable which is not yet in T160M?

  • Search SCN, if you find a "Hooray, it works" then you got already a good indication.
  • search SAP Support Portal
  • Check it from transaction SE91 Message Maintenance, you should know some basics in ABAP language.
    • In SE91 enter your message class and message number and click the Where-used button. SAP gives you a list of programs. double click the description on the right and SAP takes you into the ABAP directly to the place where the message is processed. Here you can see whether it is just a message with a hardcoded message attribute, like this
      • IF OFFENER_RG_WERT NE 0.

      •    MESSAGE W388(11).

      • ENDIF.

    • or if there is some coding which is looking into T160M table to get your customized attribute:
      • PERFORM enaco_2 USING 'ME' '040'.

      •               CASE sy-subrc.

      •                 WHEN 1.

      •                   MESSAGE w040 INTO gl_dummy.

      •                   mmpur_message 'W' 'ME' '040' '' '' '' ''.

      •                 WHEN 2.

      •                   MESSAGE e040 INTO gl_dummy.

      •                   mmpur_message 'E' 'ME' '040' '' '' '' ''.

      •                 WHEN 3.

      •                   MESSAGE w040 INTO gl_dummy.

      •                   mmpur_message 'W' 'ME' '040' '' '' '' ''.

      •               ENDCASE.



By the way, there are message customizing where you can add new entries, still the above said is valid for them too.


Sorry for killing a dream


Trigger to this story can be read in Application area MM and Changing warning message to error message - Entry Sheet and many many more discussions in SCN and elsewhere.

Who is the owner of Material Master?

$
0
0

Sometimes I wonder how many implementations you completed, one needs to brush up on designing of material master before getting into a new implementation project, no matter his/her of experience level.


Background:

Every time a transaction run with financial postings, financial account determined based on valuation class in material master, triggered by a movement type with automatic account determination process.


So, here's a simple explanation -Who is the owner of material master in spite of the same material number/code used by business in a module/in all modules.
Who is the owner 1.jpg


Concept:
Material Master!!!!!!!!!!!
Very well in default attracted to Material Management module where it is comprises with other modules data too as required by business scenarios ie….Finance  & Controlling , Sales & Distribution, Quality Management, Production Planning and Warehouse Management etc. Based on material properties with different characteristics and how material behave to business on inventory and accounting, the material type determined to use with standard material type or custom material type.


Precisely material master available with user departments like Basic data , Purchasing, Sales, Work scheduling, Accounting, Classification, MRP(For Materials planning and control), Production resources/tools, Costing, Storage, Forecasting, Quality management, Warehouse management, Plant stocks, Storage location stocks  and based on material properties to business these user departments on material type and later material are created.


In our day to day business consulting, materials are created with standard transaction code MM01 or materials are created through uploading tools by business. I refer back with my previous involvement for a large project where material creations have following process
1. Business end user search material list or catalog for his/her daily usage for transaction.
2. If material not available, then he /she fill the material request form
3. Material request form sends to central material creation officer with his/her manager approval.
4. On appropriate check and verification by central material creation officer and if he is happy, then he /she can new material code or upload file with custom transaction code for new material code.
5. Once new material code created in system, central material creation officer convey message to business end user.

 

Since different departments in a business work with the same material, but each department uses different information on the material, the data in a material master record is subdivided by user department. As we all know, material created by a user and material used by all different department users but, the question is who is the material owner in business – those who created material or those who use material on department wise or MRP controller or Buyer (purchaser).

Who is the owner 2.jpg

 

Conclusion fiction:
With referring to the above information’s, business system can deal to work  by deciding material owner by creating  “Lab/Office(MARA-LABOR)” and assigning to material master in Basis data-1 view. The field Lab/Office in material master is known as Laboratory/design (engineering) office where this Key represents for the design office, laboratory or laboratory worker responsible.

Who is the owner 3.jpg

For certain case, the field “Lab/Office “in the material master record is used if the material is a chemical component but also the same field can be used for design and engineering purpose defining ownership of material master.


Reference:
http://scn.sap.com/thread/3414912
http://scn.sap.com/thread/3449752
http://scn.sap.com/community/erp/logistics-mm/blog/2013/10/31/account-category-reference-acr--grandfather-of-automatic-account-determination-process

 

Before concluding, the “Lab/Office “field will be used on the Material Master to identify the ownership of the material. The ‘Lab/Office’ field will be used for this purpose only and this is at Client level. If new ‘Lab/Office’ field values will be identified by Business Lead Users and given to the Supply Chain Team. The Supply Chain Team will add the new values to the system and may delete previous entries which are not required by business.

 

Thanks for your time to read my 3rd Blog. Also I would like to thank all my present project team members for their great encouragement and strong motivation.


Regards,
Biju K

ESM for Contract Employees in integration with HCM

$
0
0

Dear All,

 

Recently we have done an External Service Management process for contract employees in integration with HCM module. This involves some development also, to automate the process. After successfully implementing the process, I just thought of sharing the experience with all my SCN colleagues, thinking that this may throw some lights on your similar kind of requirements.

 

Requirement:

My customer hires various services (like SAP Consulting) from different service providers (like IT companies). The contract employees (like consultants) are supposed to enter the time and the service provider will be paid based on the hours worked by the employees. The requirement is to automate the process and map this in SAP.

 

Background:

HCM module has been already implemented. A custom info type (9001) exist exclusively for contract employees which contains details like Service provider, contract terms etc.


Solution:

 

The process starts with creation of Purchase requisition by user department.

 

To identify the employee, we have added the field PERNR (Personnel Number) in customizing,

Materials Management --> External Services Management --> Define Screen Layout

 

Capture.JPG

Now, the field Personnel number will appear in the PR and PO.

 

PR.JPG

Purchasing department will create purchase order to the service provider.

 

In the custom info type for contract employees, a new field PO Number and PO Item is added. A program is developed to fetch all the Service PO created on that day and scheduled it in background to run every night. Also, the program picks the PERNR from ESLH and ESLL tables and for that PERNR, it updates the custom info type table (PA9001) with this PO number and item.

 

Now the contract employee fills his working hours in CATS time sheet. Once the time sheet is approved, a scheduled job will fetch the personnel number from time sheet. From the info type table, the program will fetch the PO number and item and create a Service Entry Sheet, using the BAPI BAPI_ENTRYSHEET_CREATE.

 

A subsequent job for standard transaction ML85 (Program RMSRVF00) releases the Service entry.

 

Once the service entry sheet and material document is posted Finance department can do invoice verification ate month end for the accepted quantity and pay the vendor. We are planning to automate the invoice verification also, once the process gets stabilized.

 

This is just my experience in addressing the said requirement. Expecting your valuable feedback and suggestions. Also request you to share your experiences in addressing similar requirements, if any.

 

Regards,

Sudeep.

Who is the owner of Material Master?

$
0
0

Sometimes I wonder how many implementations you completed, one needs to brush up on designing of material master before getting into a new implementation project, no matter his/her of experience level.


Background:

Every time a transaction run with financial postings, financial account determined based on valuation class in material master, triggered by a movement type with automatic account determination process.


So, here's a simple explanation -Who is the owner of material master in spite of the same material number/code used by business in a module/in all modules.
Who is the owner 1.jpg


Concept:
Material Master!!!!!!!!!!!
Very well in default attracted to Material Management module where it is comprises with other modules data too as required by business scenarios ie….Finance  & Controlling , Sales & Distribution, Quality Management, Production Planning and Warehouse Management etc. Based on material properties with different characteristics and how material behave to business on inventory and accounting, the material type determined to use with standard material type or custom material type.


Precisely material master available with user departments like Basic data , Purchasing, Sales, Work scheduling, Accounting, Classification, MRP(For Materials planning and control), Production resources/tools, Costing, Storage, Forecasting, Quality management, Warehouse management, Plant stocks, Storage location stocks  and based on material properties to business these user departments on material type and later material are created.


In our day to day business consulting, materials are created with standard transaction code MM01 or materials are created through uploading tools by business. I refer back with my previous involvement for a large project where material creations have following process
1. Business end user search material list or catalog for his/her daily usage for transaction.
2. If material not available, then he /she fill the material request form
3. Material request form sends to central material creation officer with his/her manager approval.
4. On appropriate check and verification by central material creation officer and if he is happy, then he /she can new material code or upload file with custom transaction code for new material code.
5. Once new material code created in system, central material creation officer convey message to business end user.

 

Since different departments in a business work with the same material, but each department uses different information on the material, the data in a material master record is subdivided by user department. As we all know, material created by a user and material used by all different department users but, the question is who is the material owner in business – those who created material or those who use material on department wise or MRP controller or Buyer (purchaser).

Who is the owner 2.jpg

 

Conclusion fiction:
With referring to the above information’s, business system can deal to work  by deciding material owner by creating  “Lab/Office(MARA-LABOR)” and assigning to material master in Basis data-1 view. The field Lab/Office in material master is known as Laboratory/design (engineering) office where this Key represents for the design office, laboratory or laboratory worker responsible.

Who is the owner 3.jpg

For certain case, the field “Lab/Office “in the material master record is used if the material is a chemical component but also the same field can be used for design and engineering purpose defining ownership of material master.


Reference:
http://scn.sap.com/thread/3414912
http://scn.sap.com/thread/3449752
http://scn.sap.com/community/erp/logistics-mm/blog/2013/10/31/account-category-reference-acr--grandfather-of-automatic-account-determination-process

 

Before concluding, the “Lab/Office “field will be used on the Material Master to identify the ownership of the material. The ‘Lab/Office’ field will be used for this purpose only and this is at Client level. If new ‘Lab/Office’ field values will be identified by Business Lead Users and given to the Supply Chain Team. The Supply Chain Team will add the new values to the system and may delete previous entries which are not required by business.

 

Thanks for your time to read my 3rd Blog. Also I would like to thank all my present project team members for their great encouragement and strong motivation.


Regards,
Biju K

SAP Customer Connection Program - Only 60 Days Left to Submit SAP MM & SD Joint Process improvement requests for functionality which you have been waiting for!

$
0
0

Are you missing a functionality in SAP ERP MM & SD joint process and functions, and you think it should be included in the standard product?

 

Do you want to improve SAP MM directly and influence the SAP Development?

 

Now is your chance!

 

 

SAP.JPG

Influence.SAP.com

 


Currently we are running the Customer Connection Program in SAP, and I would like to have you - our customers - to be part of our brain for innovation and improvement!


Customer Connection is directed at incrementally enhancing and improving products and solutions in mainstream maintenance. It offers you, our customers, the opportunity to suggest small enhancements and improvements to those products and solutions (“Improvement Requests”). The Improvement Requests selected for development will be delivered through SAP support notes or support packages.


This is a unique opportunity for you to influence development at SAP, and to submit requests for functionality which you have been waiting for. If you are interested, the following is our working scope:


 

 

Link: SAP SD and MM joint process and functions


 

 

Scope of project:

Improvement of functions and processes that are integrative between ERP SD Sales and ERP MM Purchasing or are commonly used cross industries and regions.For more details of the Project Scope, you can find it in the above SAP SD and MM joing process and functions link!

 

 

 

 

 

 

 

You can navigate to the THE REQUEST PAGE and submit the improvement request, or contact me at Bradley.Liou@sap.com if you have any question.

 

 

For more information, please visit: OUR Customer Connection SCN PAGEandSAP Improvement Finder

 


NOTE: THE COLLECTION PHASE WILL ONLY RUN UNTIL Sept 30th, 2014. SUBMIT YOUR IMPROVEMENT REQUEST BEFORE IT IS TOO LATE!

setting safety stock levels in line with the supply chain strategy

$
0
0

one of the critical success factors in supply chain management is the correct translation of a supply chain strategy into materials planning policies. Take as an example a directive to provide a certain service level to the customers. Management might say "we want to achieve a 98% fill rate on our most valuable products" (usually A items).

 

What usually happens then, is that every materials planner figures out how much inventory they need to hold and what replenishment policy to use to achieve that. If you want to standardize this kind of directive and develop a system to have everybody use the same calculation, I suggest you use the field 'service level' in MRP2 and calculate the safety stock setting for each material using the variables lead time, mean absolute deviation and a safety factor.

 

You can do this on the forecasting screen of the material master. Depending on how you configured your MRP type, the forecast run can calculate  safety stock level for you. However, you have to kind of doing this for every material and you can only simulate exactly one service level.

 

A better solution is the SAP Add-On Tool 'Safety Stock and Reorder Point Simulator'. With it you;re also getting a new KPI: safety stock value! You can also simulate many service levels and compare the results in terms of quantity and value. On top of everything else, the safety stock calculation gives you two more - very important - parameters: the variation in replenishment lead time and a variation in demand.

 

Let's say management desires a service level to the customer of 95%. In that case you would pull all those materials into the simulator, set 95% nd your variation in lead time demand and click the 'calculate button. The simulator then calculates all safety stock individually for each materials and totals the value. This way you can determine what a 95% service levels means compared to your current master data settings or to other service levels. In our example, all materials currently have a service level of 96% which, with the manual calculation the materials planner was using, produced a value of $7,342 in safety stocks. However, the safty stock simulator produces a value that's higher with a lesser service level... and that calculation is using the same variables for each material across the board and therefore probably much more accurate than what the planner ever can come up with - possibly applying different methods and being totally overwhelmed doing this for hundreds, if not thousands of materials.

 

 

In the end, you push the save button and safety stock and service level are being updated into the MRP2 screen for each and every material in the list.

 

 

Management changes their mind tomorrow? no problem!


Non Valudated Material in SAP

$
0
0

During the Implementation we come across many requirements around free goods, minor consumable, one time purchase items etc. Many of the time Client does not want to follow the whole SAP procurement process or does not want either value or quantity or both to be updated. Many of the time these requirements come in very vague terms, complicated terminologies ,or sometime using many legal/confusing terms. At the end MM Consultant ends up creating customized material times or other workaround custom solutions for the same.

However SAP has provided 2 Standard Material Types to cover many of these requirements,

 

SAP provides two options for Non Valuated Materials

     1. NLAG - neither quantity nor value is updated (non-stock material)

 

     2. UNBW - only quantity updated and not value.(non-valuated materials)

 

During Procurement they behave as below:

 

1)NLAG is material that is not held in stock because it is consumed immediately. (Office supplies such as stationary. You need to create purchase order and accounting document for payment but the stock balance is always zero as it is issued out immediately to the various department.)

 

2) If the material is set to quantity update but no value update and it is included in a Purchase Order with account assignment, a goods receipt will increase the stock.

 

3) For UNBW, accounting documents are created only at the time of goods receipt, i.e where we are liable to pay the vendor. However when we issue this material for consumption or any other transaction accounting documents are not generated.Important feature of UNBW is that it can't be expensed without receiving in stock.

 

4) All non-stock  material  will be immediately consumed upon goods receipt. These are charged to a cost element such as Account Assignment, Work Order, or Work Breakdown Structure. As a result, the non-stock will not be charged to inventory.

Automatic GL determination in Service PO/PR based on Service Material Groups

$
0
0


To default the GL account while creating the Service PO's, we need to follow the below configuration’s.

 

1. Create a Service Material Group in T-code OMSF.

 

MSG 1.png

 

2. Create a Valuation class by using T-code OMSK and then link to Account Category reference of service.

 

MSG2.png

 

3. Use the T-code OMQW to map the Service Material Group  (STEST) to Valuation Class (STES).

 

MSG 3.png

 

4. Once the above steps are completed , we need to use T-code :OBYC to map the valuation class STES to GL in Transaction Key GBB- Offsetting entry for inventory posting to the Account Modifier VAX,VBR and VKP. Also similarly to Transaction Key WRK-GR/IR clearing account with respect to your chart of account.

 

MSG 4.png

 

MSG 5.png

 

5. After that we have try to create a PO for the new service material group and it is defaulting the GL account which we have mapped in T-code: OBYC.

 

MSG 6.png

 

FYI

 

We can use the table T023 for Material Group mapping to Valuation Class and T030 for Valuation class mapping to GL account based on the Transaction Key and account modifier.

 

I believe this document is useful those who are new to SAP MM.

 

Regards,

Sada

How to recover quick views, when Usergroups have been recreated

$
0
0

From some for us yet unknown reason, suddenly, all the quick views (SQVI) from one of our productive system disappeared. Hundreds of quick views (3400 in total).

 

After short investigation we found a strange phenomenon. SQVI Usergroups were recreated. Before the incident the Usergroups were from the range SYSTQV000001 - SYSTQV000852. And now the range started at SYSTQV000853:

capture_20140627_174750_006.png

What we could get in the first moment, at least, was a list of reports (table TRDIR), that were generated out of all the quick views:

Clipboard09.png

By searching the table AQLQCAT (Query Catalog) for the query name (right side of the program name from the 17th character), we could find the name of the Infoset:

capture_20140627_174603_004.png

We went to SQ03 to check, whether the Infoset is still known to the system, and whether we could re-assign the abandoned Infoset (authorization) to the new QV Usergroup of the given user:

capture_20140627_174625_005.png

Apparently it was possible :-):

capture_20140627_174750_006.png

capture_20140627_174750_006.png

 

Still the quick view did not appear for the user in SQVI.

 

After a bit of testing we found a way: to copy the query from the old user group into the new one.

First in the SQ01 we selected the new user's Usergroup: How to find and execute or work with other users quick views (or quick views created with old user-id)?

Then in the menu select Query => Copy. Here we put the old usergroup and the query name twice:

capture_20140627_174830_008.png

After the copy, the query appeared again in the SQVI:

capture_20140627_174834_009.png

And this we may repeat (in our case) 3400 times :-)

My view to prepare a report for all completed PO numbers with or without open invoice

$
0
0

Business Requirement:


We know we can get all types of purchase report from ME2N/ME2M/ME2L etc. But these all reports are considering as per line item. These reports will show you result line item wise when you run with your criteria (like as Selection parameter).


When you want to get a report for completed POs with consider all line items. When you want a report only for these PO numbers, whose are having delivery complete for all line items. You will not consider these POs as complete if GR will be pending (or partial GR) for any line item.


In short, you want a report with the indicator as “Fully Delivered” in Header – Status tab.


As an example,


You have a PO with 2 line items, GR has fully completed for first line item but your second line item has the partial GR. So when you will consider this PO as incomplete PO as second line item has some GR pending.


You will find more information in this discussion List of completed POs with compare all line items. I had posted the query but didn’t find any standard solution. Experts says, I have to go with development. Somehow, I’ve prepared this report with the field delivery complete indicator (EKPO) and Ms Excel.


I want to share my experience so that it can be helpful for others.


Actually my boss had given the task to me. We have one vendor and we are doing invoice when the PO for this vendor will be totally completed. My boss asked me to give the all completed PO numbers with open invoices, so that he can calculate the quantity for open invoices.


But before doing this you might have to know some important notes:


You will need to make this report when you will agree to pay invoices only when all line items of a single PO number are totally completed.

As you can see the report will be made by some work which is outside from SAP (as MS excel), so if you are agreed with to do an extra work analysis outside SAP.


If your PO is containing multiple line items, since if your some data (like as material, plant etc) are not same for multiple line items, then you can’t combine these lines into one.


You can’t do this when your vendor will give you invoice as per line item and vendor says you will not get rest material until you pay his sent invoices for another line item (which has completed).


You can’t do this when your vendor says he will give you some discount if you pay him for another line item which has completed and you will not able to get this discount if you will wait for the whole PO complete (all line items). Then it is suggestible to make the invoice and payment as per line item.



Scenario:


PO number 4500013608 contains 3 line items.

PO number 4500013609 contains 2 line items.

GR pending only for 3rd line item for PO number 4500013608. Hence I just need the report which will contain only PO number 4500013609 because only this PO number get fully completed.

 

 

Steps:


Create a selection parameter as delivery complete tick indicator and delivered = Ordered. So that we can get all these line items whose are having filly GR completed.

dev.jpg

 

Save the selection parameter.


Then take the all completed PO numbers (completed as per line item) with from ME2N with selection parameter ZDEV and ALV layout. It brings 4 entries (2 line items for PO number 4500013608 and 2 line items for PO number 4500013609)

dev.jpg

 

Export it to excel.

 

Then copy these PO numbers and take the DCI indicator from EKPO table (DCI will be flagged only for these line items which has GR completed and also be sure your system has the option set delivery indicator automatically activated).

dev.jpg

 

Export it into another excel sheet and replace the blank with value A (You can use A to W - alphabetically below than X). Then sort the DCI field. You can see the A will be appeared first.

dev.jpg

 

You can see my one PO number has two DCI indicator as A and X. I have sorted this because we know excel will take the first value for formula V-Lookup when source contain different value.

Now I have two excel sheets. First is exported from ME2N and second is exported from EKPO table. I've done V-Lookup and take the DCI indicator from second excel to first excel.

Now our first excel will look like as below:

dev.jpg

 

Now here, delete the line item which will contain the value A in DCI field.

After delete the line items, you will get the line item which will contain only value X for the field DCI.

It is the report for all PO numbers which has completed GR in header status.

dev.jpg

 

It means I get the PO number which are having GR as fully cleared for all line item.

I can compare this PO in SAP system as Header – Status as “Fully Delivered”

dev.jpg

 

Here, in your excel sheet, you've got these PO numbers which are having GR fully delivered.

Now if you want to check the Invoice has already done yet or not for these PO numbers, then just go to ME2N report and filter these PO numbers with selection parameter “RECHNUNG”. You will get the result for all PO numbers with header status as “Fully Delivered” and “Not yet invoice”.

SAP's safety stock does NOT buffer demand fluctuations during the planning process !

$
0
0

Does the headline in this blog confuse you? Sorry, that is noit my intention. I just want to pint out a not-so-well-known fact.

 

 

When you set a safety stock level in the MRP2 screen of the material master it is subtracted from available inventory in the MD04 stock / requirements list. Therefore the MRP run ignores that part of the inventory. Imagine the following situation: There is a forecast of 50 pieces for next month and you have maintained a safety stock of 30 pieces. The system will plan to have an inventory of 80 pieces in stock at the beginning of next month. As we are approaching the next month and actual customer orders drop in, the forecast is replaced by actual orders. Should the actual order exceed the forecast - lets say that customers demand 60 pieces instead of 50 - the MRP run will generate a new replenishment proposal for an extra 10 (instead of using the safety stock) and you end up with 90 pieces in inventory, even though you only need 60.

 

This type of behavior creates dead stock and misses the purpose of using a safety stock as a buffering strategy. The situation worsens if you have a rounding value or a fixed lot size.

 

 

So what can you do? Use a range of coverage profile that drives a dynamic safety stock if the situation allows for it. In a range of coverage profile you have a target safety coverage and a minimum safety coverage (in days of coverage). The MRP run can 'see' the safety levels and ONLY generates a replenishment order when the minimum safety coverage is broken. Therefore you have to make sure that the minimum safety coverage is set to 1 day and the target is higher. In that case the MRP planning run uses all the days in the target coverage as a buffer to counter demand variability.

 

 

By the way... the range of coverage also has a maximum safety coverage to keep the inventory from blowing up, should the forecast be too high.

Determination of different GR/IR accounts for non-inventory procurement

$
0
0

1. Context


Preliminary remarks :

a) it is assumed that the reader is familiar with the principle of MM valuation and account determination.

b) the scope of this discussion is restricted to the purchase order process with material groups.


In the accounts payable process, it is a common business practice to request that postings made to the GR/IR clearing account are split into different G/L accounts in order to meet internal accounting reporting requirements.

 

The purpose of the GR/IR clearing account is to keep track of the quantity differences for a purchase order between the goods received and the goods invoiced. At the time of the goods receipt or invoice receipt, the standard* SAP functionality for non-inventory procurement enables automatic account determination to be based on material group and valuation class when a link is setup between them.


However, the determination of the correct GR/IR account is not always covered by standard SAP functions, for instance, in a situation where for the same material group we would like to differentiate the G/L account posted, a system enhancement is necessary.

 

* : standard, considering which rules are configured for the transaction event key in the given chart of accounts (transaction OBYC/OMWB), example :

WRX.PNG

 

 

 

2. Enhancement description

 

In SAP standard account determination, the GR/IR account is identified via the transaction key WRX. The purpose of this enhancement is to pass to the standard function module MR_ACCOUNT_ASSIGNMENT an account modifier value (T030-KOMOK) which is linked to a different GR/IR account in the table T030. The enhancement available is LMR1M002, EXIT_SAPLKONT_011.

 

Capture.PNG


In addition, a specific table is required to map material groups to the account modifier. To build the specific table, it is important to consider which valuation levels play a role in the final account determination.


The valuation levels are : Chart of Accounts > Company Code > Valuation Area > Plant > Split valuation. For the non-inventory procurement and with a unique chart of accounts, we need only the company code and material group as table key and the account modifier as 'parameter'.


Table : Z_EXIT_GRIR

Capture.PNG

As explained in the referenced notes, the account determination for WRX is always carried out for with an empty valuation class (in standard). In other words the only influencing factor is the account modifier.


The next step is to update the table T030 (transaction OBYC/OMWB), the GR/IR account is set for transaction key ‘WRX’ with the account modifier ‘AAA’.

Capture.PNG


The final step is to write the program (sample code) :

 

Capture.PNG

 

Once, everything is in place, this is time to test the design.


User-exit:

Capture.PNG

Function Module:

Capture.PNG

The expected account is returned. The solution is considered tested when it has been checked at each step : GR/IR/Cancellations/Credit Memo/Return to vendors/etc...



3. Additional references

 

301477 - Accnt determintn for WRX for materl grp not possble

165692 - Documentation: Enhancement LMR1M002 (MM-IV)

523495 - FAQ: Account determination


4. Conclusion

 

Great!! The accountants are now happy !! This technique can handle in practice much more complex account determination procedures

LSMW Quiz

$
0
0

Many of you know from various LSMW blogs and documents and from my BIF  that Master Data Management and Data Migration is my main activity field for about 10 years now, and I expect it to continue for some years.

Looking at the number of views on my LSMW blogs and documents makes me feel like a teacher. And if you still remember your school days then you know what teachers are notorious for: A quiz to check what you remembered

 

Before you ask.

Yes, it is allowed to search SCN if you do not know the answer from your mind.

Some questions can have more than one correct answer.

No, there is no price to win, no T-shirt, no badge. It is just  for fun, and maybe to learn or refresh the one or other thing on LSMW



1) SCN celebrated its 10 years anniversary in 2013. How many LSMW questions got posted in SDN/SCN since its foundation?


 

¨ < 5000

¨ 5001 - 10000

¨ 10001 - 20000

¨ > 20000




2) What is the current version of LSMW (in ERP 6)?


 

¨ LSMW 1.0

¨ LSMW 1.6

¨ LSMW 1.8.0

¨ LSMW 4.0.0




3) Which statement is true?


 

¨ A LSMW project can have any number of subprojects

¨ LSMW can only be exported and imported but cannot be included into a transport request.

¨ SAP recommends to use recordings if no standard import objects are available.

¨ LSMW can be used to extract data from a legacy system

 

 

 

4) Which import methods are supported in LSMW?

 

¨ only recording

¨ Idoc

¨ Bapi

¨ Standard Batch Input/Direct Input




5) How many main steps does the BAPI import method have

 

¨ 14

¨ 16

¨ 18

¨ 20

 

 

 

6)Which statement about the maximum file name length is true?

 

¨ File name "Imported data" Max 45 characters

¨ File name "Converted data" Max 45 characters

¨ File name length is not limited

¨ File name "Exported data" Max 45 characters

 

 

 

7) Which authorization is needed to work with a LSMW project

 

¨ B_LSMW_EXEC

¨ B_LSMW_CHG

¨ B_LSMW_ALL

¨ B_LSMW_PRO

 

 

8) Is the authorization B_LSMW_ALL sufficient to post the transaction, e.g. to create a vendor master?

 

¨ Yes, B_LSMW_ALL is all I need to create a vendor

¨ No, the LSMW authorization is limited to the usage of LSMW but does not overrule the authorization needed to post a vendor master




9) You have to load 500000 spare parts. Business does not want new material numbers to avoid relabeling in the warehouse. Customizing is set to internal numbers only. Assumed that the numbers do not conflict with existing material number ranges. Is it possible to load the material masters without changing the customizing?


¨ Yes, it is possible with standard batch input/direct input import method

¨ Yes, it is possible with recording method

¨ Yes, it is possible with Idoc method

¨ No, it is not possible without changing the customizing




10) All recordings done in a project are visible if you click the Recordings Overview button in Step 1 Maintain Object Attributes. But can you use more than 1 recording per LSMW object?


¨ No, per 1 object you can only use 1 recording

¨ Yes, it is possible to run multiple recordings within 1 object




11) Which task do you need to do before you can create IDocs and when at the latest possible time?


¨ Post a discussion in SCN an hour before Go-Live

¨ Activate Idoc Inbound processing latest before you execute the "Convert data" step

¨ Activate Idoc Outbound processing right before "Start IDoc Generation"

¨ Activate Idoc Inbound processing right before "Start IDoc Generation"




12) What is a disadvantage of the recording import method?


¨ No simulation mode

¨ The target structure must be flat

¨ The target structure must not contain item structures with a variable number of items

¨ There is no disadvantage




13) Step 4 Maintain Structure Relations. Which of the following statements is true?


¨ A flat source structure can be assigned to multiple target structures

¨ A complex source structure (header level - item level - sub item level) can be assigned to a flat target structure

¨ A  source Idoc structure can be assigned to a target Idoc structure of the same message type

¨ A flat source structure can only be assigned to a flat target structure




14) Your client prepares the data in Excel, you save this as text file to read it with LSMW. You know that your Excel file has 1000 records, nevertheless LSMW read log says that it read 1002 records. What can be the root cause?


¨ Unknown bug in LSMW

¨ Hidden lines in Excel

¨ Deleted Excel cells

¨ Headline counts twice


 

 

15) You are using Idoc import method and 1 Idoc failed posting. You edit the IDOC and correct the wrong value. Then you execute  "try posting again" in step Start IDoc Follow-Up but you receive the message  "No data selected". What can be the reason for this message.

 

¨ An Idoc cannot be edited

¨ you missed to execute the step Start IDoc Generation

¨ The Idoc is no longer in status 51 and you need to switch the radio button to "Resubmit the edited IDoc:"

¨ You need to switch the radio button to "Reset status 62 Idoc passed to Application"



16) You did a recording for MM01 Create Material Master. When you run the batch input you receive the error  "Formatting error in the field xxxxx" . What can be causing this error?


¨ A field in Excel was maintained in bold letters

¨ Material master recording needs to be done with MMZ1 instead of MM01

¨ A mandatory field was not included in your recording

¨ LSMW object was created by a different user




17)  You did a recording for MM01 Create Material Master. When you run the batch input you receive the error  "Field MARA-EKWSL does not exist in screen SAPLMGMM 4000" . Why do you get this error?


¨ The screen in the batch input is not the same screen as currently processed

¨ EKWSL field is in table MARC

¨ You do not have authorization to create material masters

¨ The field is set to "display only" in material master field selection

 

 

 

18) How can you secure that you do not  process an incorrect file in LSMW (e.g. customers instead of vendors)?

 

¨ Display read data and display each segment in detail to ensure that all fields are filled with the right content

¨ Run batch input session in foreground

¨ Have field names in source file identical to your source definition and remove the flag for "Field order matches Source structure definition"

¨ Let some from customer service run the batch input session for customers




19) In field mapping of a standard batch input/direct input you are missing some target fields. How can you solve this issue?

 

¨ Switch the import method to recording

¨ Adding the fields in the step 3 Maintain Source Fields

¨ Activate technical fields in Display variant in step 5 Field mapping

¨ Execute Auto-Field Mapping





20) You loaded purchase order long text to the material master in your logon language using the direct input method. However, you cannot see the long text in MM03. What can be the root cause to this issue?


¨ Characters are loaded in the same color as the background color

¨ Missing leading zeros for the material number

¨ Text longer than allowed

¨ Text ID wrong

 

 

 

I hope you had your fun with the questions, and got to know if you are ready for the real world of LSMW,  beyond the school exercises.

The answers to the questions are not far away . In any case you can find them in help.sap.com  and blogs, documents and discussions in SCN.

You can leave me your comments, your score, which question was easy or extra difficult, but please do not post answers in the comment section

 

 

 

 

 

 

 

1) 22455 discussions per  December 2nd 2014, use the SCN search and only enter LSMW and execute, you can see the number for discussions on the left

2) Goto LSMW, select from menu Extras > Display LSMW version

3) LSMW can have any number of subprojects assigned to it, and SAP recommends to use recordings only for own developments , see OSS note 554635

4) LSMW supports Standard Batch Input/Direct Input, Idoc, BAPI and recording. Only recording is a wrong answer.

5) 16 main steps -  Click the user menu button in LSMW and then the main steps button

6) file name "converted data" has a maximum of 45 characters

7) B_LSMW_PRO came with LSMW 1.8 version, without this authorization object you cannot open any Project

8) No, you need to have the authorization for vendor master creation too, otherwise your posting run will result in errors

9) Yes, it is possible with Idoc method. It is standard design that IDOCs ignore the settings for number ranges

10) Yes, it is possible to run multiple recordings within 1 object, there is a button for "more recordings" in step 1

11) Activate Idoc Inbound processing latest before you execute the "Convert data" step, because you need already Idoc specific header data in the converted data before you start creating the IDocs

12) The target structure must be flat, The target structure must not contain item structures with a variable number of items

13) A flat source structure can be assigned to multiple target structures. A  source Idoc structure can be assigned to a target Idoc structure of the same message type

14) Hidden lines in Excel. Deleted Excel cells. If only cells are emptied instead of lines deleted, then this space is still reserved in Excel and when you save it as text, then you have empty lines at the end of the text file

15) The Idoc is no longer in status 51 and you need to switch the radio button to "Resubmit the edited IDoc:"

16) A mandatory field was not included in your recording, this can happen if you record Spare parts and use this recording to load other material types too.

17) The screen in the batch input is not the same screen as currently processed, details see in my blog Explained issues with LSMW recording for material master

18) Display read data and display each segment in detail to ensure that all fields are filled with the right content. Have field names in source file identical to your source definition and remove the flag for "Field order matches Source structure definition"

19) Activate technical fields in Display variant in step 5 Field mapping

20) Missing leading zeros for the material number. Text ID wrong. The direct input does not validate your entries, you have to do this yourself, see my blog LSMW Long text load by Direct Input method




First aid for Newbies in MM

$
0
0

Yet again February 2nd and there is nothing i can do about IT.

 

That is from the Groundhog Day movie, which became a synonym for all the things that can be seen redundantly every single day throughout the whole year.

Yeah, even when you search Google for a nice picture, just redundancy.

 

groundhog.jpg

 

And nothing different in SCN.

Having the moderation box empty when going to sleep, it is filled up again in the morning.

 

Why should it be different? Every day new babies are born, every day we get new members in SCN.

Quite paradox,  if every day is February 2nd then the same baby should see the light of the world.

I guess it is even so we some members, they just have then a different user name.

Some have the same user name - and do not even imagine how dangerous this can be if another one with the same ID had annoyed the moderator recently.

Nevertheless, welcome SAP MM (do you know that you are number 135)

 

Please help me to get out of the Groundhog Day loop. Please try your best to not getting into this loop yourself.

 

Only a few hours ago a SAP Basis user (name S Basis - what else) posted "My  discussion threads is being deleted from scn.sap.com. This is happening with me for last 4-5 days".    Poor boy...the maelstrom of this Groundhog day is strong

 

 

Together we are strong too, let us try to get out of this.

 

 

Imagine ... the year 2003 ... where have you been? what was your age?  Imagine... all the things happened since then.

Quite a lot, right? By the way, it was the year when SCN (formerly SDN) was founded.

Imagine... how much questions have been asked since then. Imagine...could it be that someone else had the same issue like you before?

Or just look at the number in the content page of a space, here MM for example.

SCN MM number.PNG

Now try to imagine again. Can it be that someone had the same issue before you?

Let us try something else. Are you working for a company which is front runner and always first when a new Release or only a new Enhancement package is out? Or is it more like: At home I have already  Internet Explorer 11 while it is just IE8 in the company?

You can imagine what I want to say with this? With something really new you are probably the first with a new issue. But if you are on a release that is out for a longer time, then you can almost relax since someone else had the issue already and the solution is often right there to pick it up.



I have put together some tips and information for SAP freshers, things which should be known and heed, as the help us to get out of this Groundhog day syndrome.



Some search tips


Make use of the search in SCN: How to use SCN search

If you like Google more, no problem, then see Getting the Most out of Google: Optimizing Your Search Queries

 

When you search, get used to the SAP terms, which are quite different between the formal SAP help and the informal language in SCN.

An example: if you are looking for help on purchase orders, then use the word "purchase order" when searching help.sap.com or service.sap.com (OSS). In SCN people are in a hurry, in SCN you will find more POs than purchase orders. But you can find purchase order in SCN too, but rarely a PO in help.sap.com.  And it becomes even worse if you search with Google for PO in German language and your boss is right behind you.

However a STO for a stock transfer order can be found in the official SAP pages. Looking for a TO  (transfer order) in whatever place is useless as the search engines make no difference between a capital TO and a small to.  Search not just once, vary the search terms and try it again.

 

If you search for step by step documentation in help.sap.com, then searching with a transaction code is quite good, the normal process documentation rarely uses transaction codes. This is also good when looking for SAP Notes. In SCN it can be helpful too, however, you have to ignore all the content where some comedians thought it is nice to list all transactions of a module (while those transactions are anyway available in SAP menu)

 

Searching for SAP notes in service.sap.com is challenging too. If you got an error message, then search with the message number, once concatenated, once with a space between message class and number. Log off and on again, maybe you get a different server which has totally different results (don't know how they make this) . Searching in English and in German may also get you different results (don't be afraid as a chicken - if you search with numbers - they are equal in both languages), hence it can be considered as an extended search functionality.

 

Also make use of the automated search ANST What is ANST....and why aren't you using it?

and the new PANKS Got an error message? The new tool PANKS is here to help you!

 

I am always curious how somebody could find something that I did not find, in such cases  I read the content and do then a search with other terms until I an find this content myself.

 

 

 


SAP talks with you

 

I  mean the software, the support desk is a different story.

You know, SAP does not like you, hence it does anything to annoy you from 9 to 5. What ever you enter it fires error messages, express messages, pop-ups and dumps. And because of all this torture SAP jobs were well paid. But since SCN the pain is no longer that big - so the compensation.

 

Error/warning/information messages, they can appear in the status bar, as a pop-up, or by calling them explicitly  via an icon in the screen. They are a designed communication between SAP and you. Important to know is that you only see the short version on first sight. There is usually a question mark in the pop-ups and the message containers. By clicking it you can get a more detailed information about this error, often along with an instruction for a solution.

Some tell you nicely that you shall contact the administrator, if you are not the end-user, then this message means you.

Other messages are unfortunately declared as self-explaining - some are - some not.

If the message appeared in the status bar, then just double click to see the long text.

What all messages have in common is that message class and number is listed above the long text.

 

If you need help in case of error messages, no matter if you help yourself by searching in SCN and OSS or post a question in SCN, then

Please do not free translate the messages, post it 1:1 exact, always post the message number too.

  • The message number makes a message unique. T100 table has all SAP messages, my IDES system has 525756 messages for english language only. What do you think how often the same text is used with different message numbers?
  • it gives  feedback that you had seen the long text of the message. You wont believe how many people are surprised that SAP has a long text to many of their messages.
  • the number can be used to check in SE91 which part is a variable
  • further you can enter the number in SE91 and click where-used icon to get to the programs and where you can read a few lines of code to see what fields are checked when the message is issued
  • the message number can be used to search content in SCN or  for OSS notes in SAP Marketplace
  • An Abaper can use  the message number to set a breakpoint to analyse the program in detail
  • message numbers with a Z in the beginning are usually homemade and you should ask your team instead posting in SCN

 

 

Express messages

SAP has an own email system, where users can send emails to another SAP user. And such messages can be marked as express messages. You get a pop-up when such messages arrive, but only if you are active. SAP will not disturb your sleep, it only bugs you when you do something.

Such express messages are as well used when the system is talking with the user about something important. E.g. when you believed to have a document saved and SAP didn't take it into the database. Unfortunately most times this pop-up for the express message has no understandable message for the user. But it should really not be ignored even it is talking moon lingo. Use SM13, it has all failed postings, select yours and click the header icon. There you can find a more clear message about the problem.

Don't just post "I got an express message" in SCN, first do your analysis in SM13, then search SCN based on the findings from SM13, and if you haven't found a discussion with a solution, then ask.

 

 

Dumps

Dumps are ABAP Run time errors. This communication is chosen if something unexpected happened which was not foreseen by the programmer.

They look complicated on first sight, but this should not be a reason that you just forward it to SCN.

Read this document ABAP Dumps , it explains how a Dump is structured and where you can find which information and what you can do.

If you receive a dump, read it, try to understand it, then do what the dump wants you to do.You can even directly search for SAP notes as you can read in Searching for SAP correction Notes from transaction ST22. If all this did not help, search in SCN for similar issues, ask if you didn't find any, but tell what you already did, and attach the dump

 

 

 

SAP offers help, almost everywhere

 

Yes they do, for almost any field. Even a German cartoonist knows already the magic:

http://home.datacomm.ch/willi.kielholz/images/uli-stein/uli008.jpg

Source: home.datacomm.ch

 

 

In many selection screens you can find a program documentation behind the blue info button.

blue info button.PNG

 

In IMG you find the docu in front of the activity

imgactivitydocu.PNG

 

From the menu HELP you jump directly into the application help in help.sap.com, sometimes even to the correct page. But no matter where you landed in help.sap.com, you have a search box there too.

 

 

 

Interested in Table names / field names?

Many fresher are. Solution: place the cursor into the field, hit F1, then click the icon for technical field help. Voila: in the pop-up you can usually see the table name and field name. In some cases it is just a structure name, then go to SE11 enter the field name and click the where-used icon and limit the search on tables. Details can be found in How to find Table name for a Field which is shown structure name on press F1.

 

 

OSS notes / SAP notes / KBA Knowledge Base Articles

I already mentioned above how to search for them. They are official bug fixes and consulting notes from SAP. You need a  user ID for Sap Service Marketplace to access the notes. It is usually your basis team that grands this access. Read more details in SAP Service Marketplace Overview and FAQ

 

 


Searching for Transaction codes and where they are in the menu?

Honestly, if your dream is to become a consultant, then you should know the menu of your chosen module, like you know your neighborhood.

Forget the favorites, they are making you blind for the rest. Get used to the menu structure, which is in most cases logical grouped, and you often see the same structure in IMG too.

But if you really need to search for something, just do it in your system, using the binocular icons or just enter search_sap_menu into the command field.

menusearch.PNG

 

If you already found the name of a customizing table and want to know where the customizing activity is, then go to SM30, enter the table name and click customizing.

 

 

What is the BAPI / User exit for ....?

Do you really want to ask this in SCN until you retire? Never asked yourself why others are able to answer this question?

There are ways to find them in SAP itself, e.g. with a transaction Would you like to SNIF?: All you enhancements at one blick or a small report  Looking for user exits for a specific transaction?

 

 

 

Wow, you made it till here. Looks like you really want to get to February 3rd.

You want to know where to search first? Hmm, I am not sure if there is a golden rule. If you are a beginner to SAP in general then really make use of F1 and help.sap.com and read SCN content. If you are a little more experienced and your issue has a taste of bug then start looking for OSS notes in service.sap.com. You are new in a company? Approach your colleagues! They know what special things they implemented.

 

 

That was it, what should be known and heed by all our freshers to reduce the amount of basic and redundant questions in MM and other spaces.

In case some experienced folks has read this too and want to add some tips, please do so in the comment section.

Add the field User Name in various Purchasing report's output ALV list

$
0
0

I was having a requirement from my production department, They use ME2N report, now they want to see the user who has created the PO in output field.

I have checked the screen layout for the ME2N report (including the ME2L/ME2M), but didn't find the field User name which is containing the user ID who created the correspond PO.

In ME2N report, there are no field as "User name" in output field. This blog will describe how to add the field User Name in output section.
I've read a document Enhance purchasing reports with new fields written by Joao. Here, he has used a BADI. Then I've read another document from a different website Modify Standard Purchasing Report Output of ME2N. It can fulfil my requirement. Here, he has used explicit enhancement as I have described in my blog Explicit Enhancement for "Personal Settings" for an User. But here he has implemented a particular value for a field, but I need the PO creator name in this extra field.

Then I thought I can change the value by doing some coding in this explicit enhancement without using BADI. I have tried it with the help of our ABAPer and I've done it successfully. I want to share it. Here is the all configurations and coding.

Before giving the steps, I would like to suggest to read the post Modify Standard Purchasing Report Output of ME2N. It almost every settings are same as per this document. You just need to add different field in structure and you need to add your own logic/coding in this explicit enhancement. A good explanation with screen shot has given in this post.

I have taken help from our ABAPer as the code is not known to me as a functional consultant, but if you know the coding part, then you do not need to take help from anyone. You can do it yourself with the help of my this blog.

Note: This screen layout is applicable for ALV layout. You need to run the report ME2N/ME2L/ME2M with ALV as scope of list.


As we know the structure of purchase report's screen layout is used from MEREP_OUTTAB_PURCHDOC. So we need to create a new structure under this structure as ZUSER (you can use it different as per your requirement). To create the structure, you need to go to SE11, then enter the structure name in Data Type and then press Display.

Then you will find an option as append structure. A brief detail explanation you can find it in this Document.

You just need to use a different component type (as you want to show it as User name) as SYUNAME.

dev.jpg

Save your entry. You can save this into a TR, so that you can move it into another client if required.

Then you can see the field will be appeared in ME2N output screen layout. But it will come with blank value as we have just created the structure but didn't add any value or any coding for the newly created structure.

 

Now we need to create an explicit enhancement for this structure. When we run the report ME2N/ME3L/ME2M, system read the program LMEREPD02 (it is not the main program). In this program we can implement our enhancement and we need to do that under the methode build_base_list.

Go to SE38 and enter the program LMEREPD02, then click in the display, then find the method build_base_list in this program (you can find it in line item 76).

As this is a standard program, it will be same for every system (Note: I am not sure it can be different with different ECC/EHP release). Now double click on the method build_base_list.

Now click on the spiral symbol and follow the steps which I have already explained in this blog Explicit Enhancement for "Personal Settings" for an User.

Do these all steps from step 2 to step 5 in this blog. In step 6, you need to do some changes in coding.

Write the below code for this explicit enhancement. There are two way (code) you use for the same requirement.

 

SELECT SINGLE ernam

          FROM ekko

          INTO re_outtab_purchdoc-zuser

          WHERE ebeln = im_ekko-ebeln.

 

IF sy-subrc <> 0.

    clear: re_outtab_purchdoc-zuser.

ENDIF.


or


types : begin of ty_ekko,

         ebeln type ebeln,

         ernam type ernam,

         end of ty_ekko,

         ty_t_ekko type standard table of ty_ekko.

 

  data : wa_ekko type ty_ekko,

         it_ekko type ty_t_ekko.

 

  data : ename type ernam.

 

select ebeln ernam

   from ekko

    into table it_ekko

    where ebeln = im_ekko-ebeln.

 

   clear : wa_ekko , ename.

   LOOP AT it_ekko into wa_ekko.

   ename = wa_ekko-ernam.

   ENDLOOP.

 

   re_outtab_purchdoc-zuser = ename.


Remember, do not use both code in this enhancement, you can use only one of them.

(You can find attachment for both coding also with this blog)


If you will use a different Component for structure MEREP_OUTTAB_PURCHDOC, then you need to write the same component in the last line of this coding.

I have used the component as ZUSER, so that I have written the same component name in the last line as re_outtab_purchdoc-zuser = ename.

Now click on Enhancement as shown in this Blog.

Now our enhancement is ready to use. Now we need to test the same for reports ME2N/ME2L/ME2M. Go to ME2N and enter your selection data and press execute.

dev.jpg

Here you can see the new field with field value with correspond POs. If you are not able to see the field, then you need to choose the field from Change Layout. Now we can compare it with EKKO table, where you can found the same User name for these POs.

dev.jpg

You can see both are matched. You can also use this field in these below reports and t-codes :

ME28 - Release Purchase Order

ME2C - Purchase Orders by Material Group

ME2W - Purchase Orders for Supplying Plant

ME2N - Purchase Orders by PO Number

ME2L - Purchase Orders by Vendor

ME2M - Purchase Orders by Material

ME2K - Purch. Orders by Account Assignment

ME35 - Release Outline Agreement

ME35K - Release Contract

ME35L - Release Scheduling Agreement

ME45 - Release RFQ.

Try it in your system. It is quite simple and easy if you know the code of the enhancement. Even you do not need to take help from an ABAPer once you will get the code.

Selection Call – MM-SD SAP Customer Connection Program Update

$
0
0

Following News for FICO Friends: ERP for Financials Customer Connection I saw that an MM-SD SAP Customer Connection webcast took place the other week when I logged on to ASUG.com

 

In the future I hope ASUG members will take advantage of the Customer Connection Program.  This is an update to  SAP Customer Connection Program - Only 60 Days Left to Submit SAP MM & SD Joint Process improvement requests for functio…

 

You can watch the full MM-SD Customer Connection webcast here

 

Below is a subset of what I watched - showing what is planned to be included in the Customer Connection.

1fig.jpg

Figure 1: Source: SAP

 

There might be circumstances where SAP changes plans and the information provided and there is no commitment from SAP on any forward looking statements.

2fig.jpg

Figure 2: Source: SAP

 

Figure 2 shows the project timeline; it started in July 2014 with the collect phase

 

You need 5+ subscriptions to make it out of the collect phase

 

In October the Select phase started with a deeper analysis of improvements

 

This month SAP explained the improvement requests selected

3fig.jpg

Figure 3: Source: SAP

 

SAP wants smaller improvements in the Customer Connection

 

Some requests may be too big for the Customer Connect project

 

Development timeline is 6 months which is a restriction

 

It needs to be “easy” and “fast” to deploy via a note

4fig.jpg

Figure 4: Source: SAP

 

135 improvement requests were submitted

 

50 were rejected due to lack of subscriptions

 

30 did not meet the scope

 

55 qualified for the selection phase

5fig.png

Figure 5: Source: SAP

 

Many customers want the capability to change e-mail when it is being sent using the output control

 

The first three are listed on Figure 5

 

Serial number support is coming in ARM for missing process steps

 

Note I tried to erase the customer company names shown in Figure 5

6fig.png

Figure 6: Source: SAP

 

First idea in Figure 6 covers lead time issues in MM and SD

 

The second idea covers third party sales order

 

The third idea is to block purchase order if block exists in sales order

 

Last idea is update of third party item in the confirmed purchase order

7fig.png

Figure 7: Source: SAP

 

Figure 7 covers the MM part

 

First idea is for supplier block and payment – to add more ideas – pilot note is being tested

 

D6696  - supplier has to deliver the whole delivery – will be programmed

 

D6783 – send back goods to supplier – obtain RMA confirmation number and put it in delivery papers so supplier knows they confirmed it

 

D6739 – shipping types in return purchase orders – today have 1 shipping type and asking for several shipping types

 

D1468 – message exchange scenario – customers want to exchange messages between purchaser and supplier

 

 

In 2015, find the delivered notes at http://sapimprovementfinder.com/public/

 

I encourage you to watch the full SAP MM-SD Customer Connection webcast here

Ignoring moderation

$
0
0

I really did not want to make this my first blog in 2015 as I have drafts for more than 15 other topics which could even help those people who are stealing the time I have to share some knowledge. But as"ignoring moderation" happens in the meantime several times per day I have to give a statement.

 

On a normal day we have about 20 - 30 new questions in the MM space, and about 100 replies.

 

All this content has to be read and checked against our forum rules. While the moderators are volunteers the community itself is helping us with reporting violating content too. (Thanks for that)

 

The majority of users is able to ask questions and reply to questions professionally (many without even knowing about the rules), but there is a small amount of users who needs a hand (some Batman style).

 

Matthew Billingham   posted a blog How to get your post rejected in ABAP Development, and what he wrote is in general applicable for MM (go an read it)  and others spaces too, except for his points 3 to 5 which are really ABAP space specific. But these can be replaced with the most frequent questions asked in a particular forum. E.g. Posting period, number range and release strategy questions in MM (there are many more FAQs in MM).


Due to system limitations we moderators do not have much room to explain each rejection in big detail, just a few characters more than the feedback line in ebay.  So the notes are reduced to the basic information, some with links to blogs that explain more details, but I think they are understandable. Here a few examples:


Unfortunately those notes are not send out by email to the poster. Those notes can be reviewed by clicking the Actions icon on top right and then open the Notification tab.

But do I really expect too much from people who work in the IT industry to find this place after they get optically informed that a new notification has arrived?

In any case they should have received the email about a rejection. (Except they are so lost in the environment of their chosen profession that they even screwed up the user profile settings)  And at least this should kick-off the think process.


However, not seldom I see that the same question which just got rejected  is posted again.

Of course it get rejected again, do you really expect moderators suffer under Alzheimer disease?

Sometimes this game goes 5 rounds - hey,  it is not a game, from my point of view it is wasting my time.

Some think they are smart if they post it again with different subjects, with different user IDs, in different forums, with less information (hiding message text and number to make it difficult to search for redundancy) .


Finally I have to answer in public and make it visible to everyone that there is an offender disrespecting our rules and moderation. It is really not wanted and needed that you lose your face.


Believe me, you are sitting in a glass house, moderators can read the history,  see earlier rejections, see cross posting, can track the activities in the communication stream, can tag users.


The note to the rejection is already telling what was done wrong. Instead of just re-posting the question, you should either follow the advise and put more effort in your search or you need to put more effort in your question to convince the moderators that you have done a serious research yourself.

Let us take an example for a basic question:

"Which table holds the confirmation of a PO?"


Can this be considered as a qualified professional question? Do you believe there was any (re)search done?

Pressing F1 could have answered this question immediately. Putting "confirmation" and "table"  and "SAP" toghether into Google  had given the answer already in the preview from the hits on the first page.

Instead, it was re-posted after the rejection. (by the way, it was asked by someone with at least 4 year SAP experience)


If the post was rejected because of a frequently asked question, and you are a different opinion, then you need to rephrase your question and add much more information which can proof that your case is different from all others and that you have done your research.  You should provide information beyond the error message that can be seen in a screenshot. you could explain that you have followed the solution from another discussion https://....  and you should explain why it did not work for you. You could explain your customizing settings and what else you checked in your system.

With this info it is no longer a basic general question, such info could make it different from other questions on the same error.

 


Matt had already  said under

9) Posting the same thing that just got locked or rejected by a moderator

Nobody has a right to post whatever they like. Posting the same content that you got rejected or locked, hoping the moderators won't notice is not only sneaky and rather disrespectful, it's also an action that can, in extremis, lead to your account being deleted and that would make me sad .

And Otto Gold had written about the dark side in his blog Landing page for the troublemakers



And I am conform with this part, I will no longer tolerate that somebody repeatedly  ignores moderation.


I already posted it in two locked discussions in the last 24 hours: I would like to know your reasons for ignoring moderation and invite you to blog about it. (hey,  you can even make 10 points and a badge)





Purchasing Release Strategy - an expanded explanation and a GPS through SCN and SAP notes

$
0
0

Customizing of a release strategy in MM  seems to be the final exam which separates the wheat from the chaff.

No doubt that many struggle at this hurdle, 6500 discussions in MM are evident. 4.5% of all MM content. And it is known that this topic is discussed in Retail, ABAP, ERP and some other spaces too.

 

What makes it so tough?

Is it the number of steps to be executed?

Is it because knowledge on classification is needed?

Is it because of the mix between customizing and master data (classification, cost center...)?

Is it lousy documented by SAP in help.sap.com  or by other users in wikis, blogs and documents?

Is the request not well defined by the business?

Is it too complex because of its flexibility with user exits

is it just too abstract for self-education?

 

You are invited to share your personal answer in the comment section.

 

 

I personally miss words, in particular as answer to the question WHY ...?

SAP uses quite a lot words and almost no pictures to explain the process and customizing in help.sap.com

The bloggers and tutors in SCN often use only pictures and outline just what SAP had put in words, but also miss to explain beyond.

 

The self-educators can just follow this one illustrated process, but in the moment the business requirement is a bit different they fail because they never understood the connections, were not able to abstract the shown process enough to get it linked with their own requirement.

I have to admit, the Airline processes for ABAP education is disconcerted to me too. It could have been half as tough for me if they had talked about material master, vendors and other MM tables.  So I had to make two hops instead of just one to apply the training to my personal requirements. I am already curious how our key users do when they need to test with anonymized data in near future. As you see it can hit you everywhere, you will rarely find a 1:1 match to the things you learned, you need to understand it to make it work for you with variations.

 

I will not repeat the whole setup process here again, instead I will focus on the things that I miss in the existing content of wikis, documents and blogs, and put links to this content, so that this blog can work as a map and navigate you to the right stuff for particular requirements.

 

Before we even start with customizing we either get a requirement from the business, or we are proactive and "sell" it to the business by explaining the advantages and telling them why they need it.

 

WHY do we need a release strategy for purchasing documents?

 

People do (can) not trust each other. The NSA is spying Mrs. Merkels cell phone,  Google all of us. And not really different in the micro cosmos of a company.

 

Bosses do not trust their employees, have no trust that they perform their job within the given rules, need a controlling mechanism, like SCN has moderators to control that people do not post the 6501st question on release strategy without doing any research by themselves before.

 

The boss does not want that the nasty warehouse worker requests a Porsche which is then ordered by the careless buyer..

Anyone can be a requisitioner, but they are only allowed to request something within a certain value range, within the environment of their responsibility. Anything exceeding the defined threshold has to be approved by their supervisors. Some values may even require multiple approvals.

The release code in SAP is the electronic signature replacing the handwritten approval on a paper based process.

 

 

In my research for this blog I found numerous documents with SAP screenshots, all started right away with the SAP customizing. My projects start differently and the most time and effort is spend prior to the activities in SAP. We are doing Web meetings, the responsible person from business explains what they want, and the SAP expert tells what can be done. We also have different solution sets which are introduced by the SAP expert.

In general we want reduce the many variants and strive for a single release strategy that can be used anywhere in our global company.

Sometimes we even say "No - this is not the way we want a release strategy in our system". We have to think about the maintenance costs. If the release strategy is built on strange requests then the costs may explode later. An example: One exotic plant wanted the release strategy based on the user. If it is user Smith then a 2 level approval, but in case of Mr. Hoffmann only one approval by the plant manager is needed. In this example is nothing really generic, and with each change of a user the strategy would need to be amended.


Here are 4 strategy variants as example for a release strategy on purchase requisitions:

1

No approvals required

If you are authorized to create a requisition, it will be sent directly to Purchasing without review.

2

Two approvals required for all requisitions

Any requisition, regardless of dollar amount, has to have two levels of approval before going to Purchasing.

3

Approval determined by dollar amount 
--> Option A

< $500 - no approval required 
$500 - 2499 -- Level 1 approval 
> $2500 -- Level 2 approval

4

Approval determined by dollar amount 
--> Option B

< $2500 -- Level 1 approval 
> $2500 -- Level 2 approval


and a picture with the same information plus one more variant:

 

ReleaseStrategy1.PNG

ReleaseStrategy2.PNG

And this was just a small set of examples for release strategies on purchase requisitions. I can just recommend to create a  strategy on release strategies to avoid too much variations. Some can be much more complex and could only be understood by the single developer, and you get in trouble if this developer is not with you anymore, like in this more complex requirement.

ReleaseStrategy3.PNG

As you probably know from the documentation you can have release strategies on requisitions, on purchase orders, contracts and schedule agreements, RFQs and Service entry sheets.

Here is a variety of documents in SCN, many unfortunately have more pictures than words, and do not at all emphasize on critical parts like item based characteristics in header strategies.

Release Strategy configuration for Contracts and Purchase Order

MM-SRV Release Strategy for Service Entry Sheets - ERP SCM - SCN Wiki

Multi Level Purchase Order Release Strategy

 

a better one with a good Q+A section at the end

Setting up Purchase Order Release Strategy

and a jewel among all, unfortunately not much recognized since it was uploaded at SDN times and you need to click the link within that document to see the good work:

Release Strategy Enhancement in Purchase Order

(take the chance and rate the documents while you review them)

 

 

Why a release strategy for requisitions AND purchase orders?

 

The buyer could be corrupt and orders at higher prices. The difference to the normal price is then shared between the sales man and the buyer. Not fictive, it happened in the 80s. That is a reason that even purchase orders need to be approved before they are send to the vendor.

If the approver is really capable to identify such fraud is another story, but the example with the Porsche from above certainly is.


If you can trust your buyers, and only want the requisitions be approved, fine, then you an save some work.

It could also be turned, instead of doing a strategy on requisitions you could only implement one on purchase orders, because that would be enough to catch the case with the Porsche.


Best you know what your internal auditors want, or you even invite them to the meetings, as this can reduce double work in design and realization.

 

Do you use contracts, wonderful you can generate money for IT, they can have a release strategy too.

What I actually wanted to say, in that case you may want to avoid an approval of the purchase order if the contract is referenced.

But this is only possible with a user exit where you add coding to check this circumstance.

 

 

complicated approval processes need more time

 

Another topic in the meetings is to talk about the approval process in general. How long does it take to approve a document, how long in case of high complex strategies with the maximum of 8 levels. This time needs to be covered with the purchasing processing time (update customizing or include it into th planned delivery time of material masters). Make them aware that just one approver is a bottleneck, a substitute for vacation and other eventualities is needed otherwise you can't order anything if the approver enjoys beach life and is bitten by a shark on his last vacation day.

Hey developer, stop and think: If you have several possible approvers, does it make sense to put the name of this approver into the strategy?

A clear NO.   Instead of name that may change once per year use something generic like >20000$ approver or plant manager instead of Mr. Bill.

People often ask for the maximum approval levels - I guess this is interview or certification question - the answer is 8 approval levels, but nobody seems really be interested why you can't have more. Of course it is caused by the SAP design, table T16FS has only 8 fields for release codes. And the release status field (e.g. EBAN-FRGZU) has a length of 8 characters. This fields is filled with Xs for each approval level. This single field is the basis for the display of the  status overview: http://scn.sap.com/servlet/JiveServlet/showImage/102-49987-2-338607/ScreenShot.jpg




Header level strategy


What else needs to be defined in the meetings?

In case of requisitions you need to define whether your strategy is at item level or header level.

People are creative, they may dismantle the Porsche and order 4 wheels, 2 Recaro seats , 1 motor ...

With item level strategy they may stay below a threshold and would not need an approval.

In purchase orders is anyway only a strategy at header level possible. Since you can only send a purchase order as a whole document to your vendor, because there is no message determination at item level either.

 

However, you must not forget that you get other challenges with a header strategy.

You know that purchasing documents can have several items. So you can have items for different cost centers, items with different material groups, even items with different plants are possible in one document.

In case of a header strategy you cannot have approvers at plant  or cost center level, except you restrict the creation with a BADI and allow only items from one plant or from one cost center in one document. Standard customizing is not able to restrict this, the BADI or exit is needed.

If you are fine with a header level strategy and approvers by dollar level, no matter for which cost center the items are ordered, then you have to prepare your classification accordingly otherwise your release strategy will not trigger.

An example: in a header level strategy the values from the items are summed up. If you have a plant as a characteristic in your release classification, then the plants from item level are as well "totaled" :  Assume you have 2 items, item 1 for plant PL01 and item 2 for plant PL01, then is is quite as PL01 + PL01 = PL01 . But if item 1 is plant PL01 and item 2 for PL02, then the situation is like this PL01 + PL02 = "blank" . And exact this values need to go into your classification otherwise the strategy is not executed.  Your classification needs for the characteristic plant: PL01 PL02 and blank as value.

This is valid for any field from item level that is used in a strategy at header level. And I have not seen a single document in SCN where this is explicitly shown, but it is seen in the questions quite often and it is said in various wikis and KBAs and OSS notes.

 

 

Draft on paper

 

The result from our meetings is usually a Business Blueprint  and the strategy on paper (in Excel) which can be used as functional specification

Here is an example for a strategy based on cost center by dollar limit. The upper part (Row 1 - 6) is our strategy definition, the lower part (Row 20 - 34) is the mapping to the user roles

Release strat.PNG

 

Based on Cost Centers (column B) we defined the release groups (column A)

A release group can have just one or many cost centers.

In the example you can see that cost center 98111, 98112 and 98817 belong to the same release group SA

Based on the dollar value we defined the approvers and the  release codes.

Example in column G and H (both columns belong together), Purchase requisitions up to $ 20000 have to be released with release code SC (visible in cell H2)

For each combination of release group and release code we need a strategy code. (for example AC in cell H3 is the strategy for combination of release group SA and release code SC)

For each combination of release group and release code a role is created. (for example role YPSCPX34..  in cell C27  is the role for combination of release group SA and release code SC)

In Cell I27 you can see the description of the role, there is no hint to a dollar value or release group and code.

 

As you see in the Excel spreadsheet, there are actually 2 parts, the upper part is used to setup the strategy in customizing.

The lower part is used to define the user roles and to assign them to the approvers.

 

There is no easy link between a user and a strategy. There is usually a n:n relation. There is no report in SAP that can tell you who will be the approver for requisition x.

You would need to obtain the release strategy from the document, look into the customizing to find the release group and code for this strategy  and finally look up the roles which have this combination of release group and code and to which user they are assigned. Sometimes I am asked to check which user is holding up the process. Then I torture myself with SE16N and SUIM transaction to find the potential candidates. It is much easier if the Excel spreadsheet is kept alive and is updated regularly.  Of course an ABAP report would be welcomed. Often requested in SCN, but nobody ever came back to share his program.

 

With a workflow implemented it is possible to see at which user the workflow  currently is.


A little easier is to know who actually approved a document, because this info is stored in the change log (table CDHDR and CDPOS), still there is no report to list this for a number of purchasing documents.

 

 

Release strategy without classification

 

This is the remnant from R/2 times and only possible for purchase requistions. The release strategy with classification came with R/3 in 1996. But maybe you have no complex requirement and a strategy based on plant, material group and value is just enough for you, then you may want to look into this document for the setup:

Setting Up Release Procedure for PR without classification.

Since the release strategy with classification can be setup for the same criteria you should better use this way instead of spending time learning an out dated method.

 

 

No changes

 

Coming back to the design meetings, make it clear that the outcome should be a strategy which can be used long-term and is not subject to continuing changes and "improvements". Better improve your preparation.

Changes in a release strategy are not recommended if this strategy is in use and will lead to errors. Create a new strategy, never delete existing strategies. Have no open documents unapproved if you are going to change anything.

Read KBA 1635346 - Add a new release code to the release strategy of PR issue

If you really need to change, then it is very important that you do it in the right sequence.

Deletion of Existing Release Strategy in SAP ECC

Just deleting the release group does not make the depending customizing going away. It is more like beheading a chicken, it can still run through the yard as some videos in Youtube show. However, the SAP customizing is still there and troubles you for more than a minute. Technically it means you have still data in table T16FS, which is the table that stores the release codes to a strategy. This table has the key fields release group and release strategy.

So you can have several entries with the same release strategy. This actually happens frequently after a deletion and new definition, the numerous discussions are evident. The problem is that SAP does not search for a record by the combination of release group and release strategy, it only searches with the strategy, so you have to make sure that the strategy number is unique and exists just once in that table. Otherwise SAP will take just one and this may have a release code that is not covered in any role and nobody can release your document.

 

ClientRel. GroupRel. StrategyRel. Code 1Rel. Code 2Rel. Code 3Rel. Code 4Rel. Code 5Rel. Code 6Rel. Code 7Rel. Code 8
800AA010604
800BB0101<<< THIS IS AN ISSUE
800CC0201


Check your customizing with OMGSCK to ensure it is consistent and error free before you  test it or even release it for production.




Workflow

 

Further you need to decide if you want to make use of a workflow. This means that the purchasing document is directly routed to the approver(s).

Any extra feature has advantages and disadvantages. An advantage is certainly that a manager get an email when a new document is waiting for approval and does not need to execute release transactions in SAP to see if there is anything to approve.

A most common error is that the person who gets the workflow has not the roles to approve the document. Workflow for approval does not replace the user roles. It is your developer task to keep roles and workflow synchronous. The workflow requires  discipline by the users.  When you decide to go for workflow, then make it clear that the people execute the release through the workflow only. The workflow is an extra process which stays open if you use the normal transactions to release the documents. So you have extra work to end the workflow.

If the workflow is made on individual users instead of groups then the users have to activate a forwarding rule to their substitute  in SBWP Business workplace transaction when they take vacation.

Blogs an documents related to release strategy and workflow in SCN are

SAP MM: Purchase Requisition with Classification and Workflow Approval

Work Flow Mail Generation for Release Procedure in Sourcing Module

Release strategy Vs Workflow release of purchasing documents

in the modern world you even approve with tablet computers and smartphones:

SAP FIORI : Approve Purchase Contract App

Online Purchase request (PR) Approval Application Using Blackberry

A workflow Application to Release A Purchase Order...

 

 

Multiple currencies

 

Purchase requisitions are internal documents which either take the value from material master, or if there is no material master the user is forced to enter a value as estimate. This value is always in the value of the company code.

A purchase order is an external document which may have the value in your vendors currency.

Your release strategy  can be defined to be used in several companies around the world with different currencies.

All these case may require to define a release strategy with multiple currencies.

See the SCN content on multiple currencies:

Use of multiple currencies in Release Strategy - ERP SCM - SCN Wiki

Purchasing Doc. Release with Multiple Currencies

Multiple Currencies in Purchase Order Release Strategy

and the official KBA: 1739381 - Multiple currencies in purchase order release strategy needed

 

 

Transport Strategies

 

Transport of release strategies is not easy as a release strategy with classification is a mix of customizing and master data (classification) and eventually even program coding if you make use of the exits.

Please read OSS note 86900 - Transport of Release strategies (OMGQ,OMGS)

Master data is usually not transported and need to be created in QA and PRD systems again manually, which is a source for errors too. An way out is to use ALE distribution for the classification. You have to decide yourself how much data you would need to maintain manually again and if ALE can save you time, or just creates another complicated hurdle.

Beside of many discussions we have 2 documents on transporting of classification:

Characteristic value movement across Systems through ALE in Release Strategy Implementation

a better one (my personal view): Transport of classification across systems/clients - Quick Reference

 

 

ABAP to close the gap between standard and business requirement

 

The user exit for release strategies was already explained in Release Strategy Enhancement in Purchase Order

Still there might be other requirements that are not foreseen by SAP, here are a some documents and blogs explaining some special developments

Release Strategy: Restrict lower users to revoke PO after the complete release by superior

From the ABAP space, but you should be able to read ABAP, as some developers are not able to describe it for non-ABAPers  How to Reset Purchase Order Release Strategy

Sending  EMail Notification when PR is released from ME54/ME54N/ME55

if you have so many strategies and you need to load them instead of doing customizing: Mass Upload of Purchase Order Release Codes and Release Strategies - A Function Module Approach

 

This document closes the knowledge gap between functional and ABAP world, worth to read it from both parties:

Triggering of release strategy for a Purchasing document – a developmental overview

 

 

 

Printing purchase order with release strategy

In SAP standard it is not possible to print a document which is not approved. This makes sense, otherwise you could submit a document which is legally binding to your vendor while you did not have the approval. Of course there are ways with ABAP methods to get around this restriction, in that case you have to take organisational measures to avoid sending this document. Or the ABAPer programs it to print with watermark "DRAFT" . If your document prints while it is not fully approved and it is not wanted, then call your ABAPer as it is a homemade problem.

more background is given in OSS note 61871 - Output of messages and release strategy

In case of email and fax the last approver will be used as sender (hence he need to have a valid email address in his profile).

There is a SAP note with a modification to change this behavior: 561593 - Sender of the message (fax and/or email) is wrong.

 

 

 

Other valuable content  and important SAP notes

 

Rahul explains his findings when working with different scenarios in Release strategies

Release Strategy Scenarios

 

this wiki gives design insight regarding deleted documents in regard to release strategies

Release Strategy with deleted Purchase Requisition and Purchase Document - ERP SCM - SCN Wiki

 

I have not seen many questions on release strategies with purchase orders on hold, but it was nice to read the background of the design in

KBA 1981241 - Missing release strategy tab for purchase orders put on hold

 

Some more questions were posted recently about release strategy and version management, here are 2 KBAs on that:

Release strategy with Version number:

1961482 - Reset release strategy when version number is set as Characteristic in Customizing

1961585 - Release strategy is not triggered when Version number is set as a Characteristic

 

 

 

Make sure you have gone through the FAQ notes before  you post a question in SCN:

16 question and answers in OSS note 493900 - FAQ: Release Strategy

some more in OSS note 365604 - FAQ: Release strategies in purchasing

and 10 more on services in OSS note 672719 - FAQ: Release strategies in the service

and a SAP given PDF documentation in OSS note 207490 - Release procedure purchasing: Documentation for Customizing

 

Please never miss to read the related notes that are mentioned at the bottom or in the text of these notes.

 

 

 

Analyzing issues and errors

 

If you have studied all referenced content above then I actually do not expect any more errors and issues. But you may have overlooked an important information or you really have a new problem.

There is a SCN blog with a check list in case of issues and as well a KBA in the market place and many wikis in SCN

MM - Check List to detect and solve Release Strategy Issues

1497235 - Release strategy is not determined for Purchase Requisition in t-code ME51(N)/ME52(N) or Purchase Order in t-code ME21(N)/ME22(N)

Check List to detect and solve Release Strategy Issues - ERP SCM - SCN Wiki

Why is no release strategy determined - ERP SCM - SCN Wiki

 

Beside of that explicit mentioned content we have 6500 discussions for release strategy. Here you should search to see if your issue was already addressed before you create a question.

 

But if you create a question, then please not a one-liner like this: "My Release condition is in PO level,when i am creating PR and converting to PO the release procedure is not working at PO level."

 

This sentence has almost no information to work on. What does "not working" mean? is there an error message? does the strategy not trigger? It is not told on what criteria the release strategy is built and no evidence that the data entered matches with this setup.

 

A release strategy can be compare with this geometry brick box for children (2-4 years old). The box is your customizing, the bricks is the data in your document. This has to match exactly, and when all your bricks at put into the right holes, then the release strategy triggers.

 

intelligenzrelease.PNG

Hence if you a problem, give information about your box and show us the bricks, but do not present and empty image:

empty.PNG

Viewing all 128 articles
Browse latest View live