Product Information
Use Case for Situation Handling – MRP Material Exceptions
Introduction
As part of the SAP S/4HANA RIG team, we would like to provide some examples of Use Cases for Situation Handling that could be beneficial for your company. In the SAP Portal you can find the Use Cases available in your SAP S/4HANA version.
There are several activities that require our attention during the daily work. However, if we delay to action in some of them, we can cause subsequent impact in the supply-chain, or waste money by purchasing or producing unnecessary goods.
Situation Handling is a strategic SAP product, which brings a real tool to handle tasks which are difficult to follow-up, are time-consuming and on top of that, risky for business supply-chain when unattended.
In this blog, I will present to you how to monitor MRP Material Exceptions and act proactively when you receive the alerts via the Situation Handling tools.
Business scenario
Imagine that you are the production planner, and you have already a production order planned to supply the demand of a sales order. Now, by any reason, the sales order was cancelled, meaning that you don´t need to produce anymore. If you are not looking the Monitor Material Coverage or the Stock / Requirements List, you won´t cancel the production order on time.
1) How can Situation Handling help us?
The template MRP Material Exceptions is used by Situation Handling to inform specific members of your MRP organization automatically about exception messages that occurred during the MRP run for purchase orders or production orders that are no longer needed. For that, we can consider the conditions of the following exceptions:
- Cancel Process
- Excess Stock
2) How is Situation Handling set for this scenario?
You can check an example of this process in the SAP Best Practices Explorer, under the scope item J44 ( Chapters 2.4.2 – Prerequisite for Material Exception and 4.5 – Material Exception). There, you will see an example of exception handling for Purchase Requisitions. In this blog, I will show you an example when a sales order is cancelled.
2.1) Pre-requisites
You need the following SAP roles to set-up and test this scenario:
- SAP_BR_BUSINESS_PROCESS_SPEC – Business Process Specialist
- SAP_BR_BPC_EXPERT – Configuration Expert – Business Process Configuration
- SAP_BR_MATL_PLNR_EXT_PROC – Material Planner – External Procurement
- SAP_BR_PRODN_PLNR – Production Planner
You must have the users that will receive the notifications created as Employee Business Partners.
2.2) Defining the list of users to receive material exception notifications
Go to the app “Manage Teams and Responsibilities” and click on “Create”.
Then, select the Type “SMRPT” and press “Enter”.
Inform the Name, Global ID and change the status to “Enabled”.
In the Responsibility Definitions, you can assign the MRP Controller(s), Material(s) and Plant(s) allowed.
Next, verify the Team Owner and add the Team Members that will receive the notifications by clicking on “Create” > selecting the Employees > pressing “Go”.
Save.
2.3) Defining your Situation type by copying the template MRP Material Exceptions
In the Fiori app “Manage situation types” , select the template SAP_PP_MRP_MATERIAL_EXCEPTION and click on “Copy”.
Now you are creating a New Situation Type, based on pre-fulfilled information copied from the template.
In the section “Admin information”, define an ID and a Name.
For the section “Conditions”, you will define the criteria to trigger the notification. The template proposes to send notifications with status “Open” and Material Situation Type = “CAN” (Cancel Process). In our example, I´ll restrict as well by Material.
But what is the situation type “Cancel Process”? It is the Exception Message “20 – Cancel Process” in the MD04 – Stock / Requirements List.
For Batch job scheduling, define when the system will check the documents and send the notification. In this case, it will be every day at 6 am Brazil.
TIP: if you´re-testing your scenario, you can trigger the job immediately after saving your situation type, clicking on “…” and “Trigger Now”.
In the section “Situation Display”, you can adjust the content of the message to be sent. For instance, you can add some variables in the Message Details by using “{ }”, or simply leave the text from the template.
Also, we recommend you flag that the system will aggregate several notifications in only one message.
In the section “Recipients”, review the Responsibility Definition and set the Member Function
In the section “Situation Monitoring”, flag “Monitor Instances” and save the Situation Type.
Click “Yes” to enable your Situation Type
3) How a Notification looks like?
Now, let´s execute the process to receive a notification.
Initially, we have a Sales Order of 10 pieces with a Production Order created to supply this demand.
Then, by any reason, I cancel the Sales Order. For instance, enter in the app “Change Sales Order” > go to the tab “Item Detail” > select a “Reason for Rejection” > save the Sales Order.
You will notice that the Stock/ Requirements List has changed. Now we have a Production Order with the Material Exception “20” – Cancel Process.
Trigger the Job manually in the app “Manage Situation Type” or wait for the automatic daily execution according to the date / time you defined.
Once the Job is triggered, the employees assigned will receive a notification on the top right of their Fiori Launchpad screen.
Click on the icon and check the notification message.
You can click directly in the message and the system will take you to the app “Manage Material Coverage” (For Make-to-order scenarios, we need to go to the app “Monitor Material Coverage – Net and Individual Segments (Version 2)”, select the material and click on “Manage Materials”).
In the “Stock/ Requirements List” section, you will see a “trash can” icon in the column “Rescheduling”, for cancelling the Production Order.
Click on the “trash can” icon.
Click on “Yes” to confirm the Technical Completion of the Order.
There is no Production Order anymore in the Stock/ Requirements List.
You can click on “Close Situation” > select “Resolved” and click on “Confirm” to close this notification.
Conclusion
I hope you have learned about how SAP Situation Handling – MRP Material Exception can help you to monitor the supply-chain changes and react proactively. If you are interested to learn more about Situation Handling in the SAP S/4HANA, I suggest you the following blogs created by the SAP S/4HANA RIG team:
- SAP Fiori for SAP S/4HANA – Getting started with SAP Situation Handling
- Situation Handling: Use Case – Confirmation is Overdue for PR Item
- Situation Handling – Case Invoice Skipped in Payment Advice
Additionally, there are some very nice demos in the openSAP portal:
- openSAP Microlearning – Situation Handling for Physical Inventory Counting
- openSAP course s4h21 – Delivering Value with Intelligent Innovations in SAP S/4HANA – Unit 3
You’ll find much more on our SAP Fiori for SAP S/4HANA wiki
Other helpful links:
- See all questions and answers about SAP Fiori for SAP S/4HANA
- Follow SAP Fiori for SAP S/4HANAfor more blogs and updates
- Ask a Question about SAP Fiori for SAP S/4HANA
- Visit your community topic page for SAP Fiori
Please, let us know your comments. If you have any questions, we encourage you to post into the Q&A are using the Tags SAP S/4HANA, SAP Situation Handling and S/4HANA RIG and we will try to answer them as soon as possible.
Thank you!
Brought to you by the SAP S/4HANA RIG team.
That is a great, instructive article.
The Situation Handling for MRP exception is a really nice functionality. However it must not be an excuse for not managing MRP exceptions with the Monitor Material Coverage or the Stock / Requirements List. These apps are still the primary tools of an MRP controller only supplemented by the Situation Handling.
It's worth pointing this out constantly as I see over and over again MRP exceptions not being monitored or even not being understood.
Best regards
Dominik Tylczynski
Thanks, Dominik.
You are absolutely right. Managing MRP exceptions is a must, and Situation Handling is one of the tools that improves this activity.
Best regards,
Kusiel
Excellent info on situation handling use case..Thanks for sharing..
It is very nice feature and will solve many issues in material planning process.
Best Regards,
Lingaiah
hi, Kusiel :
-------------------------------------------------------------------------------------------------------------------------------------
Trigger the Job manually in the app “Manage Situation Type” or wait for the automatic daily execution according to the date / time you defined.
I followed the steps to create it, but i didn't see the option to trigger the job. and the job wasn't triggered these days. My version is s4 1909. thanks.
Hi,
Very Informative, trust we replicate this for the GUI also in MD04>collective access
Thank you for the article, very interesting and useful.
In our environment every material has its own MRP controller, and each MRP controller is a different user.
Which is the best way to filter the MRP exception notification in order that each user receives only the notification of the materials related to one MRP controller?
We thought about creating a new team for each MRP controller and filter by MRP controller in the team, but as we have many MRP controller this activity is not efficient.
Would it be possible to manage with Authorization Fields or Responsibility Definitions? How?
Thank you!
Matteo
Hello Matteo,
As rightly informed by you, it is not efficient that the you create 1 team for each material controller with 1 team member (user) corresponding to the material controller as there are many material controllers.
Although Responsibility by Teams is generally a good solution, but for your use case, it is not a good fit.
So we suggest you (as a good will gesture and not as consulting) to consider going for the following steps at your own risk.
Note: Other customers might find it easy to go with "Responsibility by Teams" if they don't have similar restrictions as yours.
Cloud customers can consider Manage Responsibility Rules, Manage Responsibility Contexts and Transport Responsibility Contexts, Rules, and Team Categories if they want to use custom agent rules instead of "Responsibility by Teams" in Recipient section.
Best Regards,
Abinash Routray
Thank you Abinash.
I got stuck at the first point, "Creating custom responsibility rule", because when selecting the package to create the custom responsibility rule, only 3 standard packages are available and I cannot select a custom package.
I created a specific post for that.
Any idea on how to proceed?
Thanks
Matteo
Hello Kusiel ,
Thanks for sharing such wonderful detail. Could you please advice, is it possible to get notification only for particular exception message.
Because my client requirement is, they need notification when the stock quantity falls below safety stock (the exception message number 96 for the same). Am I able to enable enable notification only for that???
thanks in advance.