Quantcast
Channel: SAP ERP Manufacturing - Production Planning (SAP PP)
Viewing all 87 articles
Browse latest View live

Landing page for new users in SAP PP - ERP Manufacturing - Production Planning

$
0
0

If you are new to the SAP world and you are starting to work with the module Production Planning and Control (PP), this blog was made for you.

 

The idea behind this blog is to join all the official sources of information about PP, because many consultants, especially (but not only) the new ones, don't know where they can find the necessary information for troubleshooting and for a better understanding of the system standard design.

 

We end up seeing many threads opened for issues where the answer is already available somewhere else on the documentation but that is not find by the users or consultants.

 

 

Therefore, before opening a thread asking "please tell me everything about subject A" or "give me step-by-step instruction for process B", you should check in all the sources mentioned on this blog.

 

 

1 - SAP Help:

SAP help portal is the starting place to learn the basics about any functionality. Here you will learn what each functionality can do and some basic examples of how to use each functionality.


You can access SAP Help for the PP module on the link below:


Production Planning and Control (PP) - SAP Library

 

 

2 - F1 help:

Each field from each transaction has it's own documentation and you can access it by selecting the field and pressing F1.

This information is available on your system and you don't need any king of login to use it.

Some fields have a very detailed explanation and you can solve many issues by reading it.

 

 

 

3 - SPRO documentation:

Each customizing entry has it's own documentation, which can be accessed from transaction SPRO.

It is strongly recommended to read this documentation before making any change on customizing.

 

spro.PNG

 

 

4 - Search in the forum:

Before opening a new thread, you can use the search box on the right superior corner and search for old threads and documents.

Most of the threads opened on the forum were already discussed and resolved before.

You can use the filters to search for documents, blogs or threads only.

 

On the following document you can find a list of useful PP documents and blogs already published on SCN:

 

Useful documents on SCN

 

 

 

5 - Search on the WIKI:

You can find the PP WIKI on the link ERP Manufacturing - ERP Manufacturing (PP) - SCN Wiki

Here, common issues are described and there are examples of how to implement some scenarios.

 

 

6 - Search for notes on the SAP Service Marketplace:

People generally go to the SAP Service Marketplace when they are looking for a correction note.

However, you will can also find consulting and FAQ notes, which are very helpful to understand the reasons behind specific system behaviors. Sometimes, it is also helpful to read old corrections notes for a better understanding of the system design and the expected behavior.

In some cases, you can also find modification notes, that allow you to change the standard system behavior.

 

 

7 - Debug:

If you did not find anything on the documentation, it is always useful to analyze the issue in debug. Searching for old notes you can generally find the place to set a break-point to analyze an issue and if you don't have technical knowledge, you can ask for assistance from your ABAP consultant. The following documents provide useful tricks for debugging:

 

http://scn.sap.com/docs/DOC-53035

http://scn.sap.com/docs/DOC-53426

 

 

 

8 - Opening a thread on SCN

If you already did your homework, analyzed the issue, searched on the above places, you will now have a better comprehension of the system behavior and you should be able to judge if your system is working as designed or if it is a bug or missing functionality.


Nevertheless, it is always useful to hear what other people can tell you about this issue. In this case, you can open a new thread on SCN.

 

Before opening a thread, you should read the The SCN Rules of Engagement to learn about good community etiquette and behavior. In addition, you will also find the grounds for rejections of posts or account removal.

 

If you are not getting any answers on your threads or if you are getting too much answers without a solution, I suggest you to read the blog Asking Good Questions in the SCN Discussion Spaces will help you get Good Answers

 

If you don't want to get in trouble with the moderation or with another users, you should also read the blog Landing page for the troublemakers

 

At last, if your thread was solved or if you found a solution to your problem, you should close your thread, selecting the helpful and correct answers. The blog How to close a discussion and why explains how to do that and why it is so important to do that.


Work Center Formula and Overhead Calculation

$
0
0

This post will mainly describe how activity based overhead calculation is done in SAP from PP point of view very briefly. This is a very broad area in SAP.

To produce some product you need resources such as Labor, Electricity and Machine etc. Each of this has a cost which should be taken into product cost calculation. This is called Activity Based Costing (ABC).

Let’s take a simple example of knitting a fabric. For this we are using a knitting machine. Let’s assume the only cost relevant here is machine cost other than RM cost. Therefore machine overhead should be absorbed into the product cost.

Firstly knitting machine should be created in SAP as a work center. In the work center we have to maintain some important data relevant to activity based costing.

Knowledge in some concepts used in SAP would be important when creating work center master data.


Defining formulas and Standard Value Key


You will find below three configuration under SPRO –>Production ->Shop Floor Control -> Operations-> Scheduling

img1.JPG

 

Define Formula Parameters


Formula parameters are needed to define formula. SAP has a standard list of parameters.

  1. I.e.: SAP_08 – This parameter refers to the base quantity of routing.

 

IMG2.jpg

 

You may note the field name BMSCH which refers to the base quantity. Similarly SAP_09 has the reference to operation quantity.

Note the origin of the parameter ‘General Operation Value’.

 

Formula


In this menu option, you can set up formula definitions which can be used in the following areas:

  • Capacity planning
  • Scheduling
  • Costing

In this post we are considering costing formulas.

Here you can create a formula using parameters defined above. We can then link the formula parameters mathematically by using, for example, the following operators:

SAP has a standard set of formulas. We can create new formulas also.

IE

Standard formula for Production Set Up is SAP002. It has below calculation.

 

IMG3.jpg

 

This means,

SAP_02- Machine Time

SAP_09- Operation Quantity

SAP_08- Base Quantity

SAP_11- Number of Splits (this applies when an operation is carried out in different machines at the same time) Read More.

 

 

Standard Value Key


What is the use of Standard Value Key?

We can say below resources are needed to produce 1000M of a fabric F.

Labor – 2Hours

Machine- 10 hours

We have to maintaining above standard values in routings.  1000M is the base quantity of routing. Only after you set the relevant SVK in work center you will be able to maintain standard values for those activities in routing.

 

Standard values for the activities are maintained in routing as below.

 

routing.JPG

 

Standard Value key consists the cost parameters (i.e.: labor, machine etc.) relevant to the work center.

IE:

SAP1 is a standard value key defined in standard SAP. Below parameters are assigned to this standard value key (SVK).

 

SAP_01 -Setup

SAP_02 – Machine

SAP_03 – production time

SVK is assigned to work center in Basic Data tab. Then we can maintain standard values for above parameters (i.e.: Set up Time) in routing.

 

Work Center Formula:

 

In costing tab we can maintain a work center formula for each activity. For example if we are maintaining formula SAP002 for the activity Machine Time and routing information as below.

 

Activities Overview in Costing Tab


Example:

img4.jpg

Activity types are created from FICO side. Cost for each activity is maintained in KP26 transaction.

 

Routing Data


Base Quantity -1000M

Machine Time – 2H

Let’s assume for MACHINE activity USD30 /H is the standard cost.

 

How Target Cost calculation done for a production order of 5000M


SAP02 * SAP09 / SAP08 / SAP11

Parameter Values

SAP_02

Machine Time

2H

SAP_09

Operation Quantity

5000M

SAP_08

Base Quantity

1000M

SAP_11

Number of Splits

1

 

2H* 5000M/1000M/1= 10H

10 hours needed for do the production of 10000M.

Cost:

10H*30USD/H = USD300

 

 

This is how target cost is calculated for a production order. This may not be the actual cost. Actual cost is calculated using same formula using actual values submitted by user in production order confirmation.

 

img5.jpg

 

One can analyze the target cost vs. actual cost in the production order cost analysis.  Actual cost is based on the values entered by the user during production order confirmation.

Production Order Display > Go to > Cost Analysis

Variance analysis generally done by the management accountant of the company.

 

See below example.

 

IMG6.jpg

[PP-CRP]Capacity Availability Check returns "No reqmts/caps exists".

$
0
0

You create a production order in transaction code CO01 and then execute Capacity Availability Check, system pops up "No reqmts/caps exists or not relevant to finite scheduling". Message no. is CY298.  Long text of this message describes 3 possible causes.
5-12-2015 10-07-33 PM.png5-12-2015 10-08-03 PM.png

 

You can CHECK these points as below.

  1. If capacities have been assigned to the work centers. Go to the Capacities view in transaction code CR02/CR03.
    5-12-2015 10-10-04 PM.png
  2. If indicator "Relevant to finite scheduling" is ON for the capacities assigned. Double click the Capacity category 001.
    5-12-2015 10-10-45 PM.png
  3. If standard values for operations are maintained in routing or order. Go to operation details screen in transaction code CA02/CA03.
    5-12-2015 10-15-10 PM.png

MRP performance analyzer

$
0
0

One of the most frequent issues described by customers is the performance of the MRP execution.

 

With some simple changes on the MRP parameters and customizing we can improve drastically the MRP performance.

 

In order to automate the analyzis of such parameters and customizing activities I wrote a small ABAP report to carry out these checks.

 

The following checks are carried out by this report:

- Size of table RESB

- Bom buffering is active on customizing

- Aggregation of MRP lists is active on customizing

- Planning modes 2 or 3 were used

- Processing key NEUPL is used in combination with planning mode 2

- Scheduling horizon

- Parallel processing

- Planning file entries were converted to MRP area level

 

If you are interested to run this report on your system, you can find the source code on the WIKI below:

 

MRP Performance Analyzer - ERP Manufacturing (PP) - SCN Wiki

 

 

Below there are screenshots of this report and the results of the check.

 

1 - Selection screen:

MRP performance check 1.png

 

 

2 - Results screen:

MRP performance check 2.png

 

As you can observe from this screenshot, the report shows which settings can cause performance issue, describes the problem, explains how to solve it and points to a note where you can find more information.

 

This is still a beta version of the report, however, this report does not delete or change anything on your system, therefore, you can safely implement it on your system.

 

Your feedback about this report is highly appreciated. If you can remember of any additional checks that can be carried out to improve the MRP performance, feel free to leave your suggestion on the blog comments.

MRP and LTP: Useful reports

$
0
0

Besides the standard transactions displayed on the easy-access menu, there are some useful reports that will help you on your daily activities or troubleshooting.

 

This blog post provides a list of the most useful reports and describes under which circumstances it can be used:

 


Performace analysis:

 

RMMDMONI - Technical Statistics of the Planning Run: With this report it's possible to analyze the last MRP executions, see the total runtime, how much time system is taking on each step and the parameters that were used to execute MRP.


RMMDPERF- Technical statistics for the planning run - material hit list: Provides a list of materials which are taking more time to be planned during the MRP run.


Z_MRP_PERFORMANCE: This report checks the main parameters and settings that can affect the MRP performance. See the blog  MRP performance analyzer for more details.

 

Planning evaluation:

 

RMMD06NEW - MD06/MS06 - Example of User-Specific Entry: The report RMMD06NEW provides an EXAMPLE for a user-specific entrance to the collective display MD06/MS06 of mrp lists for one or more plants.

The new report includes a new selection function module with ranges.

 

RMMD07NEW - MD07/MS07 - Example of User-Specific Entry: The report RMMD07NEW provides an EXAMPLE for a user-specific entrance to the collective display MD07/MS07 of stock requirements lists for one or more plants.

The new report includes a new selection function module with ranges.


RMMDERRO - Display all termination messages from the MRP list: With this report we can identify materials for which a termination happened during the MRP run.


RMMDKP01 - Delete MRP Lists: This report is similar to transaction MD08 and it can be used to delete old MRP lists (e.g. for blocked materials), in order to keep the system clean and improve the MRP performance.


RMMDKP02  - Delete MRP Lists (long-term planning): Similar to report RMMDKP01 for LTP.




MRP Areas:


RMMDDIBE - Mass Processing of MRP Areas (Create/Change/Delete): This report can be for general MRP aras mass processinc (copy, create, change...).


RMMDDIBE02 - Mass Processing of MRP Areas (Background Processing): It's similar to RMMDDIBE but can be executed in background.

 

 


Long-Term Planning (LTP):


 

RMPLSC00 - Delete dependent data on scenario: Delete planning scenario dependent data (planning file entries, planned orders, MRP lists, manual firming data, data in purchasing info system, data in inventory controlling and average plant stocks).

 

RMPLAF00 - Delete simulative planned orders: Delete long-term planning simulative planned orders for a specific scenario.

 

RMMDFD00 - Delete firming data in LTP: Deletes the manual firming date (tables MDFD and MDFDDB)  for LTP.




Planning file entries:


RMMDVM10 - Consistency Check of Planning File Entries: Runs a consistency check for the planning file entries. It can catch inconsistencies on the low-level code and delete unnecessary planning file entries. This report DO NOT check the flags NETCH and NETP for existing entries.


RMMDVM20 - Preliminary Set Up of Planning File Entries: This report is generally used before the first MRP execution for a plant to build the planning file entries. This report will create the planning file entries when they do not exist, however, if the planning file entry already exists, the report WILL NOT check the flags NETCH and NETPL.


RMMDVL00 - Long-Term Planning: Set up Planning File Entries for a Scenario.


RMMDVL10 - Long-Term Planning: Delete Planning File Entries for a Scenario.


RMMDVL20 - Long-term planning: Create planning file entries for scenario.

 

 

 

Database Inconsistencies:


In some cases, database inconsistencies can cause problems (generally on transaction MD04). A list of these inconsistencies and the reports that can be used to fix these inconsistencies can be found on the following WIKI:


Inconsistencies for planning elements and display problems on transaction MD04 - ERP Manufacturing (PP) - SCN Wiki

PP-MRP Hot Note - Update of table PPH_PFE_CHANGE

$
0
0

As of SAP Enhancement Package 7 for SAP ERP 6.0 (release 617), a new table was introduced on the standard system to store the planning file entries of the MRP Fiori apps.

 

This table should be updated after each MRP relevant change that should affect the MRP Fiori Apps, similarly to the existing MRP planning file entries.

 

However, this update should only happen if the ERP on SAP HANA with HANA optimization for MRP (business function LOG_PPH_MDPSX_READ activated) and the MRP Fiori apps are running (areas of responsibility SDM_AOR are maintained).

 

In some specific scenarios, however, entries were created and updated on this table even when the above pre-requisites were not met.

 

This unnecessary update of this table on systems where HANA is not being used could lead to performance issues or deadlocks in extreme cases.

 

Notes with corrections to avoid this issue were already created and the issue should be fixed on the standard system, however, if you have already upgraded to release 617 or if you are planning an upgrade, you should ensure that the following notes are implemented on your system:


 

2162643Unnecessary entries created on table PPH_PFE_CHANGE
2156419MRP schreibt Vormerkungen in PPH_PFE_CHANGE ohne Nutzung der MRP-Apps
2135413MRP apps: Performance problems in SAPLDISP when updating planning file entries
2116751MRP on HANA und MRP-Apps: Lange Laufzeiten und Deadlocks in COHV
2115306MRP on SAP HANA: Long runtimes and deadlocks when converting into or releasing
2042592SAPLDISP: Performance during changes to BOMs
2027966Performance problems when updating the planning file entries due to table PPH_PFE_CHANGE

 

 

For more information about the HANA optimizations available for MRP on release 617, take a look below:

 

MRP on HANA: What's new?

 

For more information about the MRP Fiori Apps, check the following blow:

 

Using SAP Fiori to manage shortages on MRP

Capacity Requirement Table KBED

$
0
0

This post is describing how KBED entries are changed according to the status of production order.

 

Basics

 

Table KBED saves capacity requirement records. Field BEDID is key field of table KBED, and also the linking field between table AFKO and KBED. And there are 6 important fields which contains scheduled capacity requirements and remaining capacity requirements for segments.  Each operation of production orders has 3 segments: set up, processing and tear down.

5-28-2015 2-42-48 PM.png

 

1. Status CRTD


When create an production order, capacity requirement entries are created for each operation. If multiple capacity categories are assigned to the correcponding work center of the operation, e.g. 2 capacity categories, then 2 entries are created in table KBED for this operation.

 

For example,

  • The formulas are maintained as below in Capacity view of Work Center.
    Setup formula = Standard formula SAP005  = Setup * Operation Splits
    Porcessing formula = Standard formula SAP006 = Machine * Operation quantity / Base qty
    Teardown formula = blank

 

  • Routing has 2 operations.
    Operation 0010 has standard values as Setup = 1 Hour   Processing = 1 Hour
    Operation 0020 has standard values as Setup = 2 Hours Processing = 2 Hours

 

When create an production order with qty 10, capacity is caculated as below.

Operation 0010

  • Setup = Setup standard value(1 H) * Operation Splits("No. of individula capacity" maintained in Capacity details, 1 this time) = 1 Hour
  • Processing = Machine standard value(1 H) * Operation qty(10 PC) / Base qty(1 PC) = 10 Hours

Operation 0020

  • Setup = Setup standard value(2 H) * Operation Splits("No. of individula capacity" maintained in Capacity details, 1 this time) = 2 Hour
  • Processing = Machine standard value(2 H) * Operation qty(10 PC) / Base qty(1 PC) = 20 Hours

 

You can see 2 entries in table KBED for 2 operations. I will only explain the change for operation 0010. Operation 0020 is the same.

For Setup segment, the scheduled capacity requirement(KRUESOLL) and remaining capacity requirement(KRUEREST) are 1 H; For processing segment, the scheduled capacity requirement(KBEASOLL) and remaining capacity requirement(KBEAREST) are 10 H.

5-28-2015 3-43-31 PM.png

 

2. Status PCNF

 

When partial confirmation is executed, remaining capacity is reduced accordingly, based on the remained order qty, scheduled capacity requirement does not change. This time, partial confirmation with qty 2 is executed. For Setup segment, scheduling capacity requirement(KRUESOLL) remains same, remaining capactity requirement(KRUEREST) does not change too, because the parameters of setup formula are not related to order qty. For Processing segment, scheduling capacity requirement(KBEASOLL) remains same, remaining capacity requirement(KBEAREST) is changed to 8 hours, since remaining order qty is 8.

5-28-2015 3-46-44 PM.png

 

3. Status CNF

 

When final confirmation is executed, remaining capacity requirement(KRUERESR & KBEAREST) becomes ZERO, scheduled capacity requirement(KRUESOLL & KBEASOLL) does not change.

 

5-28-2015 3-47-24 PM.png

 

4. Status TECO

 

When technically close an order, capacity requirement entries are deleted.

5-28-2015 3-49-26 PM.png

When revoking TECO, capacity requirement entries are regenerated.

5-28-2015 3-51-37 PM.png

 

5. Status CLSD

 

When close an order, capacity requirement entries are deleted.

5-28-2015 3-52-21 PM.png

Storage Location MRP

$
0
0

The Purpose of this document is to explain the significance of “Storage Location MRP”. This feature gives you flexibility to:

 

1) Exclude storage location stock from MRP

 

2) Plan storage location stock separately


Material requirement planning generally runs at plant level. When you run it for a material, system sums-up total stock from all storage locations and considers it as "available stock" to full fill the demand elements.

 

The control of storage location on Material Master is maintained in MRP 4 view:

 

Pic 1.png 
 
Let’s consider a raw material RM0001 maintained in plant FP01. This material is extended to storage locations SL01 and SL02. I have kept both the Sloc as non WM managed in order to simplify the example.


RM0001 has following stocks in 2 storage locations


SL01 – 20


SL02 – 50

 

FP01 = 70 (Plant)

pic 2.png

The stock requirement list shows:


pic 3.png


Case 1: When the indicator is blank


Pic 4.png

 

This is the default case where stock of material at storage location is considered for MRP run (Plant level). This is the default case in which total stock of all storage locations is used together in MRP at plant level.

 

Case 2: With indicator “1”

 

The storage location stock gets excluded from MRP

pic 5.png

Example: let’s set this indicator “1” for sloc SL01 (with 20 quantity)

 

MRP 4:

 

New 1.PNG

 

MD04:
pic 6.png


The important point to note here is that total 70 is still unrestricted quantity and available for use but since we have set indicator “1” in SL01, the sloc stock will get EXCLUDED in MRP run.

 

pic 7.png


Now if there is demand for this material for 60 quantities


System will only consider 50 for MRP calculation and ignore 20 from SL01 (excluded)


pic 8.png


After MRP:


There is a demand of 60 and out of which 50 is covered by stock in MRP calculation and system finds a deficit of 10 quantities. Even though there is an extra stock of 20 in SL01 but since we have excluded it from MRP run, system generates a purchase requisition of 10 quantities.


pic 10.png

Case 3: with indicator "2"


Storage location stock is planned separately


pic 11.png


Separate storage location MRP is carried out using consumption-based planning. In this case, one must define a reorder level and a replenishment quantity (fixed lot size) at storage location level. In so doing, it is possible to monitor this storage location's stock automatically, and if the stock level falls below the reorder level the storage location is also replenished automatically.


MRP 4 settings


pic 12.png

 

Pic 13.png


After consumption of 10 quantities form SL01. The current stock level comes (10) below reorder point  (15) and it should trigger transfer requirement of 25 quantity from SL02 as stock is already present in different storage location under same plant.

 

After MRP run
Pic 14.png


Once the transfer posting is made against the reservation, stock situation looks like this:

Stock from SL02 has moved to SL01

Pic 15.png

 

 

Apart from transfer posting with movement 311, there are possibilities to use special procurement key for Sloc to be planned separately.  They can be maintained in MRP 4 at storage location details:

Pic 16.png


Scenario 1


Material RM0001 in plant FP01 in Sloc SL01 (Storage location to be planned separately with SPK 40 – Stock transfer)

 

Reorder point –  15

Replenishment Quantity - 25

Current Stock of RM0001 – 10 (below reorder point)

Demand plant - FP01

Supplying plant - FP02

 

MD04 in Demand Plant FP01

Pic 17.png


After MRP run:


System creates a planned order that can be converted in Purchase requisition then to Stock Transfer order


Pic 18.png


STO gets created with Suppling plant as FP02

Pic 20.png

After Goods Receipt, the stock gets updated

Pic 21.png

 

Situation where such Indicator is useful:

 

1. When you want to have some quantity of material separate for specific purpose (only for manual goods issue)

 

2. When you DO NOTwant to have a particular material considered for net requirement planning.

 

3. When stores / warehouse is geographically too far from the production location that is planned with the storage location MRP

 

4. When stock of a storage location is only available for service and not for production

 

5. etc...

 

There could be multiple other cases where Storage Location MRP functionality can be used instead of setting up complex scenarios.

 

* Request all readers to please suggest other possible cases where this functionality can be used so that this documents can be updated and improved with the course of time.

 


BOM selection logic in MRP

$
0
0

The BOM selection logic is quite complex as several customizations and fields of the material master are involved, so I am summarizing it here.

 

First of all, the BOMs of a material may exist in the architecture below.

 

1. Usage: e.g. production BOM, costing BOM, engineering BOM etc.
2. Multiple BOM: Multiple alternative BOMs under one usage.
3. BOM change status: Different BOM items/quantities etc in different periods which can be made by change numbers.

 

Please see the picture below.

 

BOM structure.JPG
The BOM determination in MRP is done level by level through the structure above and by the procedure below.

 

BOM determination.JPG

 

Here is the detail of the steps.

 

Step 1: Determine the BOM usage.

The usage is determined by the selection ID which can be configured in customizations below. In the MRP customization, the selection ID to be used is defined on plant level and the BOM customization OS31 defines the priorities of each BOM usage. If there is no BOM exists under the usage of the first priority, the usage of the next priority is checked.
Selection ID.JPG

 

Step 2: Determine a BOM in the multiple alternative BOMs.

 

This is decided by the field 'Selection method' of the material master in the picture below.

 

Selection method of material master.JPG

 

2.1 Selection method is blank (Selection by order quantity):

 

The quantity range of each BOM header is checked to see which BOM can be applied according to the order quantity, here is a picture for an example.Selection by order quantity.JPG

 


Here is the screen shot of the quantity range of multiple BOMs.

 

Selection by order quantity and screen shot.JPG

 

2.2 Selection method is 1 (Selection by the explosion date):

 

To use this method, the customization of the picture below should be maintained.

 

Customization of BOM explosion date.JPG
In the example above, the alternative BOM 1 is valid from May 1 to May 31 and the BOM 2 is valid since June 1. They are selected by the explosion date, either the order start date or the end date or the date of the explosion number according to the customization transaction OMIW in the picture below.
The one of the MRP group has higher priority.

Customization of explosion date OMIW.JPG

 

2.3 Selection method is 2 or 3 (Selection by production version):

 

The production version can be maintained in the material master and it defines both the BOM usage and alternative BOM as the picture below.Production version screen shot.JPG

 

Step 3: Determine the valid BOM according to the BOM change status.

 

A valid BOM is determined by the explosion date in multiple periods of an alternative BOM as shows in the picture below, the periods can be made by change numbers.
BOM Change status.JPG

The explosion date is the one explained in the step 2.2 and here is more information of the date of explosion number. Using the explosion number all levels of BOM are exploded by the same date of the explosion number as showed in the picture below instead of the start or the end date of planned orders in each level.


Date of exploson number.JPG

 

Here is the explosion number maintenance transactin MDSP and the fields where the explosion number can be entered in the PIR (Planned Independent Requirements) and sales order.

 

Explosion number.JPG

 

 

Additional checking points:

 

1. BOM header

 

BOM header.JPG
2. BOM Item:

 

BOM Item.JPG

The BOM item should be relevant to production.

 

For more information, please refer to blog Problems with BOM explosion on MRP (Exception message 52).

MRP: Planning regularly a specific material

$
0
0

In some situations, we want to have a specific material planned on a regular basis by MRP, even when there was no MRP relevant change for this material and the planning file was not set.

 

This is generally necessary when a planned order was created outside the opening period. If there was no MRP relevant change, this material will not be planned again by MRP and a purchase requisition will not be created when the planned order reaches the opening period.

 

One of the possible solution is to run a regenerative planning run (processing key NEUPL), however, with this key all the materials will be planned and this is a frequent cause of performance issues.

 

Another option is to use the setting "plan regularly" on the MRP type and this blog will explain how to use this setting. With this setting, a material can be planned on a regular interval, defined on the MRP group.

 

The first step is to create an MRP type on the customizing transaction OMDQ where the flag "plan regularly" is set on customizing. On the following example I have created a new MRP type Z2 as a copy of the standard MRP type PD, just setting this flag.

 

omdq.png

 

The second step is to define a "Maximum MRP interval" for the MRP group on the customizing transaction OPPR.

max mrp 1.png

 

 

On this example, we have defined an interval of 7 days, which means that this material will be planned by MRP 7 days after being planned for the last time.

 

max mrp 2.png

 

After that, ensure that the MRP type and the MRP group were assigned to your material on transaction MM02.

 

mm02.png

 

 

Now, if you run MRP for your material, you can observe on transaction MD21 that a planning date has been set on the planning file. This material will be planned again by MRP after the planning date, even if there was no MRP relevant change for this material.

 

On this example, MRP was executed for this material on 03.06.2015, therefore, considering that we defined a maximum MRP interval of 7 days for this material, the planning date calculated was 10.06.2015.

 

Therefore, with the above settings we can ensure that some materials are planned regularly, without using the processing NEUPL.

 

planning date.png

 

It means that this material will be planned again if you run MRP on 10.06.2015 or after, even if the planning file has not been set in this period.

 

If this material is planned again by MRP before 10.06.2015, a new planning date will be calculated, considering the maximum MRP interval.

"Shift Order" indicator in customizing Tcode OPU3

$
0
0

"Shift Order" indicator in customizing tcode OPU3 controls if the actual dates of the partially confirmed operations are taken into account during a new scheduling run.

 

Prerequisite

 

  1. Create a production order in tcode CO01 and release it. Scheduling is automatically executed.
    1.png
    Operation 0010 starts on 2015.6.2 and ends on 2015.6.4.
    2.png
    Operation 0020 starts on 2015.6.4 and ends on 2015.6.6.
    3.png
  2. Execute partial confirmation with 5 qty for operation 0010 in tcode CO11N on 2015.05.28.
    6-4-2015 9-04-22 AM.png

 

When "Shift Order" is ON


System ignores the existing actual dates as if no confirmation happeded, and shift the order to the dates when re-scheduling is executed.

6-4-2015 9-05-59 AM.png

Execute scheduling by clicking the scheduling icon in tcode CO02.Today is 2015.6.4.
Check the rescheduling result. The planned start date was on 2015.6.2, now it starts on 2015.6.4, the date when re-scheduling is executed.
6-4-2015 9-22-25 AM.png
You can also check the "Confirmed dates" view. The order qty is 10, 5 of them has been confirmed on 2015.5.28, the other 5 starts from current date 2015.6.4.
6-4-2015 9-23-12 AM.png

 

When "Shift Order" is OFF


System takes actual confirmed dates 2015.5.28 in to consideration during re-scheduling.
6-4-2015 9-15-01 AM.png

Execute scheduling by clicking the scheduling icon in tcode CO02. Check the rescheduling result. The planned start date was on 2015.6.2, now it starts on 2015.5.28, the actual dates when the partial confimation was executed.
6-4-2015 9-12-53 AM.png

You can also check the dates in "Confirmed Dates" view. Start time is same as the actual confirmed dates.
6-4-2015 9-12-01 AM.png

Convert PIT time used in scheduling to real date - Report CYDATTIM

$
0
0

Scheduling internally converts the dates in seconds relative to a reference date (1980.1.1). It is called PIT time. E.g. 1 o'clock on 1980.1.1, 1 hours is 3600 seconds, so this date/time is represented as 3600 internally.

 

Reference date 1980.1.1 is hard-coded. Only date between 1980.1.1 and 2048.1.1 can be converted without problem. Considering 2048 is approaching, you can use note 49257 to change the reference date.

 

Sometimes the scheduling result is hard to be explained, you want to analyze it via debugging. However, the dates are a long number in internal calculation. Report CYDATTIM can be used to get the real date/time.

 

Execute report CYDATTIM in t-code SE38

6-4-2015 10-34-15 AM.png

There are 5 fields.

  • DATED - Real date
  • TIMED - Real time
  • DATEI - Integer format for date
  • TIMEI - Integer format for time
  • PIT - seconds from reference date

 

In this sample, PIT equals to 1,123,722,816, what is the real date/time for this PIT? It is 2015.8.11 01:13:36.

6-4-2015 10-34-34 AM.png

Dump with error CO889 while creating production orders and a BOM checking tool

$
0
0

A dump below with error CO889 occurs if there are more than 99 phantom materials on one level of BOM when a production order is created.

 

Dump.JPG

 

The cause is that the length of the field keeping the number of phantoms is only 2 so it cannot hold the number greater than 99. The adjustment of BOM structure is necessary in order to avoid the dump, e.g. reduce the number of phantom materials on the same level of BOM, but it is sometimes difficult to find the phantoms if the BOM is very big. Thus, a report is developed to find them and show.

 

It's source code can be found in the wiki below.

 

http://wiki.scn.sap.com/wiki/display/ERPMan/BOM+checking+tool+for+the+dump+with+error+CO889+while+creating+production+orders

 

Here is the selection screen.

 

Selection screen.JPG

 


This can be used to check the material BOM, sales order BOM, WBS BOM, and the material number/plant/usage should be entered whichever BOM need to be checked.

 

1. 'MAXLEVEL' is for restricting the BOM explosion up to that level for better performance.
2. ORD_NUM and ORD_ITEM are for sales order number and its item.
3. WBS is for the WBS number.

 

If no sales order number or WBS number is entered, the material BOM is checked.

 

Here is the result.

 

Result 1.JPG

 

At the top, it shows the number of phantoms and the level where the phantoms are located. The column 'Count Phantoms' shows the number of of each phantom till the current one on the same level, so, scroll down to the last phantom can show the total number, the material number of phantoms and the numbers of phantoms therefore can be identified.

More information can be found in the result screen as following.

Result 2.JPG

 

Please feel free to let me know if this can help or any suggestions to make it easy to use.

MRP execution parameters

$
0
0

There are several parameters below in the initial screen of MRP execution transactions like MD01, here, I am summrizing their usages and also introduce how they work with their corresponding customizations.

 

  • Scope of planning.
  • Processing key
  • Create purchase requisition
  • Create MRP list
  • Planning mode
  • Scheduling
  • Planning date
  • Parallel processing
  • Display Material list
  • User exit key
  • User exit parameter


MD01.JPG

 

1. Scope of planning:

 

It can group multiple plants and MRP areas, so those can be run together by one time execution.

Customization transaction code: OM0E

 

Scope of planning.jpg

 

2. Processing Key:

 

NEUPL:  Regenerative planning, all materials whose MRP type is not ND are planned.
              Technically speaking, the materials who have planning file entries in transaction MD21.

NETCH:  All materials whose MRP relevant objects have been changed and that actions changed the stock requirement situation are planned.
              Technically speaking, the materials who have the indicator NETCH get set in the planning file entry are planned, this is for improving the MRP   
              performance.

NETPL:  Only materials which had MRP-relevant change in the planning horizon since the last planning are planned and requirements in the planning horizon
              are covered


Planning Horizon of NETPL:

For plant: Customization transaction, OPPQ > Planning Horizon
For MRP group:
Customization transaction, OPPR > Planning Horizon

 

Planning Horizon.JPG

3. Create Purchase requisition:

 

  • Purchase requisitions
  • Purchase requisitions in opening period
  • Planned order

Opening period: MRP creates planned orders first internally, if the planned orders whose opening date is earlier than today or the same, then they are converted to purchase requisitions.

The scheduling margin key is entered in the material master, and the opening period can be defined in the customization below for the schedule margin key.


Opening Period.JPG

This can be maintained in several places below and they have priorities.

Priority  
1            MRP group  (Other execution parameters can also be maintained here.)
2            Plant
3            Initial
screen

Create Purchase requisitions priority.JPG

4. Planning Mode:

 

Values
1            Adapt planning data (Normal mode)  -  Only process the changed data
2            Re-explode BOM and Routing          -  Read the BOM and routing again for the existing proposals
3            Delete and recreate planning data     - Completely delete the MRP data and create again

Note:
planning mode 3 is not suggested for better performance unless it is really necessary, mode 1 and 2 is generally sufficient in business.


5. Scheduling:


Values:
1  Basic Scheduling
2  Lead time Scheduling

Scheduling.JPG

Scheduling Details.JPG


6. Planning Date:


This is only valid for time-phased planning. In time-phased planning, we can run materials on specific date only, e.g. every Tuesday, the next date to be run is recorded in the planning file entry of that material in transaction MD21. Therefore, the material is planned when its date of planning file entry is the same as the planned date entered in the initial screen of MRP execution transaction.


7. Parallel Processing:


To improve the performance, the materials can be divided into several groups and run on multiple dialog work processes in parallel. The maximum number of work processes and destination instances can be defined in the customization transaction OMIQ. Please make sure that the instance exists in the transaction SM59 and is configured correctly.

 

Paralle Processing.JPG

If an MRP job is scheduled in parallel on background by transaction SM37,  the work processes occupied can be monitored in transaction SM66 below when the job is running.

 

SM66.JPG

The program RMMRP000 which is running on background work process (Type BTC) is the main program of MRP, this only divides and distributes the materials to several dialog work processes (Type DIA and programs start with SAPLM61*), RMMRP000 doesn't run materials actually. It shows the status 'Stopped' (Sometimes 'On hold') but it doesn't mean that the MRP job is stopped or is held because the materials are running on other dialog processes and it is just waiting for the result from them so shows those kinds of statuses. Thus, if you'd like to make a trace for performance analysis, the dialog work processes should be traced instead of the main program RMMRP000.

 

8. User exit Key, User exit Parameter:


User exit M61X0001 can be implemented to exclude some materials from planning, the user exit key and parameters can be entered, those are transferred to the user exit to identify what materials should be excluded. E.g. the parameter can be the MRP controller or MRP group or material group etc.
The user exit contains 2 function modules below. The 2 function modules should be programmed with the same source codes if the user exit is active because one is for non-parallel processing and another one is for parallel processing.


EXIT_SAPLM61C_001

EXIT_SAPMM61X_001

 

The user exit key and parameter are the importing parameters of the function modules as showed in the screen shot below, so they can be transferred to the function modules, and can be excluded by writing own source code there based on the parameters transferred.

User exit function module.JPG

Subcontracting requirements are not considered in long-term planning

$
0
0

In SAP standard the subcontracting requirements are not considered in the long-term planning.

In transaction MS04 the subcontracting dependent requirements are not displayed.
You can find further information in the SAP note 311336.

 

With an implementation of BAdI MD_CHANGE_MRP_DATA using method CONSIDER_RESB, it is possible to make the subcontracting requirements relevant for long-term planning.

 

Sample code:

 

 

*--> set flag to consider SC dep. requirements in LTP

       ch_no_exit_flags-ltp_subcon = 'X'.

 

*--> set changed flag

       ch_changed = 'X'.


Scheduling Levels for Integrated Long, Mid and Short Term Planning

$
0
0

Sometimes I wonder how much flexibility, great thought and opportunity for business improvement was packed into SAP-ERP. Yes, it's not the new, flashy poster child of SAP, but it has an enormous amount of functionality and features. the key is to find this stuff and apply it correctly. Just last week I was experiencing one of those magic moments when a certain functions, which I didn't give the attention it deserves, makes perfect sense to solve a problem most people think SAP is not good at solving. The function helps with planning in the long, middle and short term as I describe in a previous blog Respecting your planning horizons.

 

SAP ERP provides you with the ability to plan, sequence, level and schedule on three different levels. These levels somewhat correspond to the level of detail used in the horizons long-term, mid-term and short-term. For whatever reason, these scheduling levels are not very often used to their full potential but they provide excellent features to move your plan through the periods and fine-tune it along the way. You can, as an example, use different task lists for the long term as what you’re using for the short term. Also, you may decide to perform mid and long term scheduling period and rate based,  whereas you’re planning your capacity in the short term to specific dates and hours, even minutes.

 

This poses some interesting opportunities for your planning efficiency. As most people stick with discrete routings throughout all planning horizons, there is the great possibility to use a rough-cut planning profile for the long term, rate routings in the mid-term and for detailed planning in the short term we can determine exact, planned execution times with a routing or recipe.

 

If you do this, you’re effectively planning rates and periods (like 20 pieces for August and 5 pieces for week 25) for when specific, date based planning is too far out and you are planning your order’s capacity load onto a very specific point in time with its specific output quantity for the next – let’s say – four weeks. Remember that the short term planning horizon does not equal the frozen zone. In the short term you’re still planning with planned orders, whereas the frozen zone only contains released production orders.

 

Task lists are assigned to a planning horizon in the production version of a material as shown in below screen shot

 

02-01-12 schedimg levels in the production version.png

 

In above example a discrete routing (with a group counter 1 out of routing group 500000002) is assigned to short term, detailed planning. Interestingly, a rate routing has been assigned to rate-based planning which effectively describes the mid-term. Often, one comes across the notion that rate routings are only used in repetitive manufacturing. However, that is not true as rate routings provide an exquisite instrument for period and rate-based planning. They describe a production process with an output rate from the operation (quantity per time) other than a discrete routing which uses the opposite: the time it takes to produce (time per quantity) a lot size. Most people would agree that planning period and rate based in the mid-term, more closely reflects the actual business process and allows for better planning results and manageability.

 

The settings in above figure also suggest that for the long term (rough-cut planning) a rough-cut planning profile is used. Rough-cut planning profiles are, similar to rate routings, also meant to plan for rates in periods. But that may be the only similarity.

 

02-01-13 schedimg levels in customizing for planned orders.png

 

You define your scheduling levels, and what happens to them, in customizing for planned order scheduling. This customizing table has its own transaction code – OPU5. An example of how the scheduling levels can be set up you can see in the screen shot above.

 

In this example, planned orders (order type LA) in plant 1000 and maintained with production supervisor 101 (production scheduler in the ‘work scheduling’ screen of the material master), will be scheduled and loaded with capacity requirements  for the short term (Detailed Scheduling) and the mid term (Rate Based Scheduling). Note that it is a choice that we use detailed scheduling for the short term and rate based scheduling for the mid term. The decision is done by the assignment of a rate or discrete routing and the type of planning table we will be using (period or date based planning table.

 

No scheduling or capacity records are generated for the long term (rough-cut planning)

.

You can see the results of these choices (settings) after you run the MRP Run with lead time scheduling. In the generated planned order you will see separate tabs for each scheduling level that was planned. These scheduling records can then be used in the respective planning horizons to plan capacity with the appropriate detail and time frame.

 

So what's the point in all of this? I think that using scheduling levels can elevate your planning to the next level. Given that you are respecting your planning horizons and you operate in a long, in a middle and in a short term planning horizon (and you also execute in a frozen zone), you can now control the level of detail you're planning with. But more importantly, using a rough-cut planning profile for the long term and a rate routing for the mid-term - and using the appropriate planning table, you can plan periods and rates where, in the past, you might have killed yourself planning exact dates and quantities.

 

As an example... at my current client we use rate routings for the mid-term and the resulting rate based orders are scheduled and capacity leveled in the tabular or graphical planning table. In fact we are doing this in Long Term Planning in a simulative mode using transaction MS05. That way we can look at periods and move the rate based orders without having to deal with all the unnecessary detail of a detailed, discrete routing. According to the need to respect the planning horizons (as described in a previous blog post), we manage demand in the mid-term and capacity level simulative planned orders until we find the perfect demand program (as defined by the Planning Scenario in LTP). Once done, we hand over that demand program to MRP so that, by use of a discrete routing and the respective detail scheduling level, exact dates, times and quantities are determined in the short term.

 

The beauty is, that because of our upfront work in the mid term, the demand program should fall pretty well into the available capacity profile and there shouldn't be too much work in terms of detailed scheduling to do anymore.

 

Using scheduling levels might not get you to the perfect system of planning for your capacity and customer delivery service, but it may be a great step forward to a more integrated system of handling and managing your orders (using standard SAP-ERP software functionality).

 

In any case, you will have to be clear about where you are planning, what you are planning for and it what timeframe you'd like to use what level of detail first...

 

...or like Yogi Berra said: "If you don't know where you are going, you might wind up someplace else"

What can I check if MRP does not plan a material?

$
0
0

One of the most frequent issues described on SCN threads is that MRP does not plan a specific material. The idea behind this blog is to describe exactly what can be checked to ensure that all the materials will be planned by MRP.

 

Below you can find the steps to check this specific material on your system and understand exactly why it was not planned.

 

 

1 - Check if there is a termination on the MRP background job

 

The first check to be carried out is if there was any termination on the MRP background job. We can check that accessing the job on transaction SM37.

The most frequent cause of terminations on the MRP background job is when the number ranges are almost expired. Note 531599 provides more details about this issue.

 

 

 

2 - Check the material MRP List

 

When a material is planned by MRP, an MRP List is generally created and it can be accessed on transaction MD05.

On the MRP list we can find exactly when this material was planned by the last time and if any error message happened during the MRP planning run, that could affect the MRP results. Here, we will define if the material was not planned by MRP or if it was planned but no replenishment proposals were created due to a termination or any other possible issue.

 

Below there is an example of a MRP List where a termination happened for a material.

Capture.PNG

 

We can also find all the MRP lists where an error happened running the report RMMDERRO on transaction SE38. This report is very useful when errors are happening for several materials.

 

CAUTION: depending on the settings defined on the MRP variant or on the MRP Group Creation Indicator, the MRP list may not be created.

 



3 - Check the planning file entry exists on transaction MD21

 

If a material is not being planned by MRP in background or on MD01, then we must check if the planning file exists on transaction MD21.

Please observe that the material can still be planned by individual MRP transactions, such as MD02 or MD03, since they do not check the planning file when planning a specific material.

 

If the planning file does not exist, the error message "No planning file entry exists for this selection" should be displayed on MD21 and the solution in this case is to run transaction MDAB (report RMMDVM20), in order to create ensure that all the planning file entries were created.

 

CAUTION: The planning file entries are generally created when MRP is active for a plant and a material is create with a valid MRP type. It is not necessary to run this transaction or report on a regular basis.


See also the blog PP-MRP Hot Note - "MRP does not plan any materials" and further clarifications about planning file entries

 

 

 

4 - Check if the planning file flags NETCH or NETPL are marked

 

Whenever there is an MRP relevant change for a material (such as a goods movement, a master data change or any change to an MRP element) the planning file flags should be marked. Therefore, a material will be only planned in background with the keys NETPL or NETCH if the respective flag is marked on the planning file.

Capture.PNG


If those flags are not checked, it's probably because there was no MRP relevant change for this material since the last MRP run, so it was not necessary to plan this material again.


If there are uncovered requirements and this material should have been planned by MRP, you must find out what was the last MRP relevant change for this material and understand exactly why the planning file flags were not set. A good starting point for the investigation is to compare MD04 with MD05 to check if there is any missing planning element or any new planning element, to find out exactly when the planning file entry was not set.


A workaround for this issue is to run MRP using key NEUPL, which will plan all the materials, even when those flags are not set.


CAUTION: Transaction MDAB (Rerport RMMDVM20)only creates missing planning file entries. It does not check the flags NETCH or NETPL when the planning file already exists. The same is valid for transaction MDRE (RMMDVM10), which  only corrects inconsistencies but does not check those flags when there is no inconsistency.




5 - Check if it is an MPS material

 

A material with an MPS MRP type will be planned by MPS transactions and programs. MPS uses different transactions, such as MDBS, MD40, MD41, etc... so these materials will not be planned by MRP transactions.

 

 

 

6 - Check if the servers for parallel processing are available

 

If you are using parallel processing, the servers that will be used for parallel processing are defined on the customizing transaction OMIQ. During the MRP run, all the servers must available, otherwise, one of the packages may not be processed, which means that some materials may not be planned by MRP.

Generally, all the servers defined on the customizing transaction OMIQ must be available on transaction SM51, so that MRP can correctly process all the packages.


A workaround for this issue is to run MRP with the flag "parallel processing" unchecked, until fixing the entries on transaction OMIQ.




7 - Retail listing prevents the planning with MRP.


There is a retail functionality called listing, which can prevent the a material to be planned within MRP. When this functionality is active we can generally find an entry on table WLK1 for the material.

 

 

 

8 - Check if EXIT_SAPMM61X_001 and EXIT_SAPLM61C_001 are implemented

 

User exits EXIT_SAPMM61X_001 and EXIT_SAPLM61C_001 are generally implemented to select which materials will be planned by MRP. The most frequent use of these exits is to plan all the materials for a specific MRP controller. However, if there is any problem on the exits implementation, it may affect the MRP planning run. So we must test the MRP run after deactivating those exits, in order to ensure that there is no problem with the exits implementation.

 

 

 

9 - Check if there is any BAdI active

 

Any BAdI active executing custom code during the MRP run can lead to unknown side-effects. When a BAdI is executed during the MRP run, the indicator BAdI Active is displayed on the MRP List (MD05), as displayed on the picture below:

 

Untitled.png

 

A list of the BAdIs available for MRP is available on the document BAdIs for MRP.


Is your system prepared to take advantage of MRP on HANA?

$
0
0

As I have explained on my previous blog MRP on HANA: What's new?, as of SAP Enhancement Package 7 for SAP ERP 6.0, MRP was completely redesigned to take full advantage of the SAP HANA architecture.


Now there is a new MRP mode called MRP Live, which is executed on a different transaction and that can be much faster than the classic MRP. The new MRP Live is fully executed on HANA and, since it was built from the scratch, there are some scenarios that are still not covered by MRP Live. A complete list of these scenarios can be found on note 1914010.

 

As explained on my blog MRP on HANA: What's new?, when MRP Live is executed and system finds one of these restrictions, it will automatically change to the classic MRP, where the database reading was optimized to be executed on HANA, but further processing is carried out on the old ABAP logic.

 

It means that all the materials can be planned on MD01N, even though they cannot be totally planned on HANA. However, in order to achieve the optimal performance on the MRP Live, we must try to avoid those restrictions, so that we can plan as many materials as possible directly on HANA.

 

In order to help you to estimate how many materials can be planned by MRP Live and exactly which restrictions do you have on your system, SAP delivered note 1975704, which contains report PPH_CHECK_MRP_ON_HANA.

 

This note is valid as of release 600 and this report is delivered on a support package, even on systems that are not using HANA. With this report, you can estimate the effort to improve your master data focusing a better performance on MRP Live after an upgrade.

 

The report provides a compact display, with the total number of materials that can be planned by MRP Live by low-level code, and also specifying the number of materials that cannot be planned by MRP Live for a specific restriction.

 

Capture2.PNG

 

The report also provides a detailed display, where all the materials are displayed. Here, the report will tell you if the material will be planned in HANA or in ABAP and it will also tell you if there is any specific restriction for this material.

 

Capture.PNG

 

Therefore, if you are considering to use MRP on HANA, you can use this report to improve your master data and reduce the number of restrictions, focusing a better performance on MRP Live.

 

I also suggest you to take a look on the following note, which provides more information about the MRP on HANA performance:

 

2023766 - MRP Live/MRP Classic: Performance Information



See also the information from the following SAP Help link for more details:


MRP Live: Incompatible Changes - Carrying Out the Planning Run Using MRP Live - SAP Library


At last, the common issues on this topic are described on Issues related to MRP on HANA.

Useful books for studying Production Planning

$
0
0

I have already seen many threads on this space asking for books to study production planning, therefore, I have decided to share here the books that I consider more relevant on this area.

 

Starting with the SAP Press "official" books, we can find some intersting topics abou production planning.

 

If you are just starting to learn production planning and you would like to learn a little bit about process before a deep dive into the technical aspects, a good book to start is The Goal. It is and easy reading book, as it is written as a novel and it provides an overview about the theory of constraints.

 

Another book that provides an overview of production planning and that may be interesting for someone starting on this area is Fundamentals of Production Planning and Control - Stephen N. Chapman.


A classic book about production planning is Toyota Production System, written by Taiichi Ohno. He is nothing else than the inventor of the Toyota Production System and Lean manufacturing.

 

You can also find several suggestions of books about this topic on the link Production Planning.com - Latest in Production Planning and Scheduling.


Now considering SAP Press official books, Uwe Goehring, who is a regular contributor of the SAP ERP Manufacturing - Production Planning (SAP PP) space recently wrote the book Materials Planning with SAP. von Uwe Goehring - by SAP PRESS, which provides an overview of Materials Planning on the ERP system. I did not read the book yet, but considering the quality of the content published bu Uwe on SCN, I'm quite sure that it is worth the price.

 

Another interesting book about PP is Production Planning and Control with SAP ERP. von Jaw - by SAP PRESS. It is more focused on production control and provides an overview about discrete, repetitive and process manufacturing types on the SAP ECC.

 

SAP Press also publshed the e-book Configuring Kanban in SAP ERP MM and PP - SAP PRESS, which is more specific about the Kanban functionality.

 

 

At last, there are the official SAP trainings, and the related documentation. Take a look on the following links for more details:

 

SCM130 - SAP ERP Planning & Manufacturing Overview

SCM240 - Production Planning in ERP

SCM310 - Production Orders in ERP

TSCM40 - Planning/Manufacturing I

TSCM42 - Planning/Manufacturing II



If you know any other interesting book about this topic, please share it on the comments and I'll add to the list.

PP-CRP Hot Note: Planned orders are not lead time scheduled

$
0
0

You are running MRP on your system with the parameter Scheduling = '2 - lead-time scheduling and capacity planning', as shown on the figure below:

 

Capture.PNG

 

After the MRP execution, you are observing the following symptoms:

 

  1. Only the first planned order generated by MRP is correctly schedule and, for all the other orders, the tab 'lead time scheduling' is not created.
  2. Planned orders created by MRP are no longer generating capacity requirements and they are not displayed on capacity leveling or capacity evaluation transactions, such as CM21, CM25 or CM01.
  3. If you try to manually schedule one of these planned orders on transaction MD12, the tab 'lead time scheduling' is correctly created without any kind of problems.

 

 

This is a side-effect of note 2131199, which was created to improve the performance of the planned orders lead-time scheduling. This note was delivered on support package SAPKH61708 and, after the implementation of this note, you may observe the described symptoms.

 

In order to avoid this issue on your system, you must implement the following note:

 

2192359Follow-up note for note 2131199

 

 

If this not is not relevant for you and the planned orders are still not scheduled correctly, I suggest you to check the work center and routing settings, according to the documents below:

 

CRP Basic Settings Part 1 - Work Center

CRP Basic Settings Part 2 – Routing

 

In addition, the following notes may be useful

 

2240796MRP lead time scheduling does not return correct result in generated planned or
2120367Planned orders generated from MRP don't have the tab "Detailed scheduling"
Viewing all 87 articles
Browse latest View live


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