Professional Documents
Culture Documents
MRS is one of the critical area of SAP where hardly any consultant available. In this post I have tried to
explain end to end step for implementation of SAP MRS and also guide you to integrate with SAP PS and
HR module.
Introduction
Introduction to MRS
Multi Resource Scheduling (MRS) is a solution for resource management in the service and in
the project business With Multi Resource Scheduling you are able to visualize your service
planning status and assign requests to your service staff and tools using an intuitive graphical
planning board.
Get an overview of your current planning status; including scheduled requests, resource
utilization and open work lists
Use a graphical planning board, supported by an alert monitor, to interactively dispatch open
service requests to your available resources
Use an optimization engine to automatically create an optimized schedule
Take advantage of analytics to:
Determine your overall request status
Understand your resource utilization
Support your field service efficiency:
Reduce commute times by integrating Geographical Information Systems (GIS)
Make use of mobile connectivity to update the requests for your field service personnel
Configuration Guide
1 Basic Settings
a. Status
In SAP, all the statuses are 4 Character statuses and these are language dependent. Moreover,
this 4 character status can be customized also. The system statuses are delivered by SAP and the
user statuses are customized at each customer location.
So, a status that represents 'Work has started' for an assignment could be customized differently
at each customer location. I can call it STRT and you can call it BEGN.
If in MRS we were to code some logic that depends on statuses, then it would be big mess if we
coded based on the 4 character statuses STRT or BEGN (because they would be different for
different customers). So inside MRS we use "Abstract status" which can be mapped to the
concrete statuses.
Thus the MRS code always depends upon the abstract status and on the UI, we always continue
to show the 4 character concrete statuses (because this is what is shown in all other SAP
applications and users are comfortable with this)
2. Assign Status
You can assign exactly one abstract status to a concrete status. However, an abstract status can
be mapped to multiple concrete statuses.
In this customizing node you will define the object type the system will use as Resource planning
node and the related evaluation paths.
Here, I will explain the R/3 Scenario (because I have no experience of other scenarios ).
The object type: The object type used as 'Resource planning node'. It can be O, 9O, A or
anything else that customer likes.
Resource planner and Contact persons: Define here the object type used to identify a
Resource Planner and Contact Person. You can chose between P(Person) or US(User). If you
specify Person, the system retrieves the contact data for the resource planners from the HR
master record. If you specify User, the system retrieves the contact data for the resource planner
from the user master record.
Evaluation paths for Authorizations: Specify the evaluation paths that should be used for
evaluating the user authorizations. Here, from the user the system will identify the Org units
using these evaluation paths. The resulting org units are the ones for which the user is authorized.
These evaluation paths are used only if in the basic settings you have activated "Authorization
check based on Evaluation paths".
Evaluation path for resources: This evaluation path is used to determine the resources from a
resource planning node. So when you double click on an org unit in planning board, the
resources are fetched based on this evaluation path.
Evaluation path for Resource planner and contact person: This evaluation path is used to
determine the Resource planner and contact person of a Resource planning node. In the resource
planning scenario for project business, we enter the Org unit number in network header customer
enhancement tab. At that point, this evaluation path is used to determine the names and details of
contact person and resource planners.
EP: Resource planning node to Resources: The name here is slightly confusing. This
evaluation path is used to determine the resource planning nodes to which a person is attached.
This is used at the time of authorization checks. For a person, this evaluation path will find the
planning nodes to which this person is attached. If the resource planner is not authorized to plan
these planning nodes, then he cannot create / change the assignment or time allocations for this
resource.
Eval Path for higher level RP nodes: This evaluation path is used to find the parent org units
for a given org unit. This is used at many places. For instance during the authorization checks
also to determine if the planner is authorized for higher org units.
EP: Dir assigned RP Node for Resource planner: As the name suggests, this evaluation path
will get the directly assigned resource planning node for a resource planner. This is used in
transaction /MRSS/PLBOTIME to find the RP Node for the current user. It is also used in the
lean planning board transactions.
EP: Dir assigned RP Node for contact person: As the name suggests, this evaluation path will
get the directly assigned resource planning node for a contact person. This is used in the
transaction /MRSS/RAP_CP.
Log. Work center to RP Node: This evaluation path is used to find the work center connected
to a Resource planning node. This EP is used to determine the work center during the back
integration. For example if you change the assignment to planning node for a demand in
planning board, the appropriate work center must be written back.
RP Node to work center: This evaluation path is used to find the Resource planning node from
a given work center. This EP is used in the forwards integration of PM/CS and PS demands.
Here, from the work center of the activity or operation the system determined the planning node
and assigns the demand to that planning node.
Work center to higher level RP Node: This evaluation path is used to determine the work
centers for a selected and higher level resource planning nodes. This evaluation path is used in
the search help of work centers. The search help shows the complete resource planning node
hierarchy and the work centers under that.
Person to Work center: This evaluation path will find the persons attached to a work center.
This EP is used during the automatic assignment creation to determine the resources from a work
center.
Work center to Person: This evaluation path finds the work center for a person. The system
uses this EP during the back integration to determine the technician work center of the resource.
Time Allocation types are defined in the customizing node MRS Basis->Define Time Allocation
Types.
To know about what are time allocations, read the page Time Allocation.
Here, you define the types of individual time allocations and determine the parameters required
to calculate the time availability of a resource. The time availability of a resource is calculated
using the sum of all time allocations (for example, Monday to Thursday from 8:00 to 18:00 and
Friday from 8:00 to 14:00).
Each assignment can have a specific type, such as WORK for working time, ILL for illness, and
so on. You can assign the following attributes to each time allocation type:
An exception indicator for the time allocation that specifies that this time allocation
type does not form part of basic availability (normal working times)
Example
You define a time allocation type for illness. You define a time allocation type "ILL" for the
absence type illness. Since a resource is not available when ill, you assign the availability 0. You
then define the standard priority of this absence.
You have defined a value range from (-64) to 64 for your priorities, where (-64) is the lowest
priority and 64 the highest. Since employees are never available when they are ill, you assign the
time allocation type the priority 64.
Since ILL does not form part of the "normal" working times, you mark it as an exceptional time
allocation type.
You then enter "ILL" as the short text and "ILLNESS" as the long text.
b. Assign Time Allocation Types to Resource Types/ Time allocation Type for Tools
The time allocation types defined in the previous step must be assigned to resource types. Then
only they can be used in Planning board.
Note:The resource types 00(Human Resource), 01(Tool Resource) and 99(Team Resource) are
delivered by SAP and must not be changed.
Example:AVAIL. This time allocation type must have availability type '1-Available' and
exception indicator set to space.
The MRS solution provides you the architecture to create your own alerts based on custom code
and view them in alert monitor in planning board.
It is very easy to do this. Before you proceed from here, it is expected that you must read the
IMG Node documentation of following nodes:
Set Up Scheduler Workplace -> Workplace Profiles -> Check Profile -> Define Classes for
Performing the Checks
Set Up Scheduler Workplace -> Workplace Profiles -> Check Profile -> Define Check Profiles
Set Up Scheduler Workplace -> Workplace Profiles -> Alert Profile -> Define Alert Types
Set Up Scheduler Workplace -> Workplace Profiles -> Alert Profile ->Define Alert Profiles
After reading the above mentioned documentation you need to do the following:
Step 0:
Create a new message type in SE91. This will be the message that appears in the alert
monitor.
Step 1: Create a new check class. Let's call it ZCL_MY_CHECKS. This class must implement
the interface /MRSS/IF_SGE_CHECK. Here you need to define all 4 methods of this interface.
CHECK_PERFORM : This method is called when the planning board is launched. This method
imports all the data from the planning board and this data can be used to create alerts.
INITIALIZE :
This method is called at the initialization of the planning board. Here you can
populate some global variables etc. This method will import the reference of Alerts, Resource
manager, Work list and Clocking interface. These references will be used to get the global
buffered data of MRS application.
IS_TIME_DEPENDENT : This method is called to check if a particular check class is time dependent
or not. Here, you just have to return the RETURNING flag as 'X' or ' '. If 'X' is returned then it
means that the checks in this class will be called at a periodic interval of time. It is useful if you
have certain checks that depend on time. So these checks have to be carried out at a regular
interval of time.
Step 2:When implementing the methods in your class ZCL_MY_CHECKS you need to write
your check code in CHECK_PERFORM and CHECK_PERFORM_CHANGE.
Here, first you need to collect all your alerts in one internal table. The type of internal table must
be: /MRSS/T_ALERTDATA_TAB. Here you will fill the table with the message created in Step
0 above.
Alert components and types: When creating alerts you need to provide the component type and
guide. The component is the object for which alerts is created. For e.g. if I create a alert for
resource unavailability, then the component type will be 'D' for resource and the component
guide will be resource guide. Also, we can populate additional components for an alert message.
For e.g. in this case I can populate the Assignment guide and Demand guide in additional
components. This is populated in structure: /MRSS/T_ALERTDATA.
The methods of object for alerts (imported in INITIALIZE method above) must be used to
create, modify, delete alerts. Check the methods provided by interface:
/MRSS/IF_SGA_ALERT_INT.
In your coding, you should only call the methods of this interface to create or modify alerts.
Step 3 - Customization:
Add you class to list of check classes. This will be done in: Set Up Scheduler Workplace ->
Workplace Profiles -> Check Profile -> Define Classes for Performing the Checks. When you do
this, your class will also be called when ever checks for alerts are called.
Add your check class in your check profile. This check profile is in turn linked to the planning
board profile. This is done in: Set Up Scheduler Workplace -> Workplace Profiles -> Check
Profile -> Define Check Profiles
Define your new alert type in customizing : Set Up Scheduler Workplace -> Workplace Profiles -
> Alert Profile -> Define Alert Types
Define your new alert message number in your alert profile. This is done in customizing: Set Up
Scheduler Workplace -> Workplace Profiles -> Alert Profile ->Define Alert Profiles
That's all. Then launch your planning board and your checks and alerts are active.
Planning board
1 Optimizer
The optimization function in MRS enables the scheduler to create optimized schedule for their
technicians. The strategies of optimizer can be configured. Thus the optimizer can be used to
create schedules such that: Travel time is minimum OR Utilization of resources is maximum OR
Overtime for technicians is minimum OR any other strategy which is suitable for the customer.
Technician: The availability information of the technician. His working times, breaks etc. The
starting location of the technician and his qualifications.
Orders: The location of the customer (address), the time window where the operation can be
The optimizer takes this data from MRS and will propose an optimized schedule which will
result in minimum cost.
The optimizer will find all the possible solutions for a given situation. It will then calculate the
cost associated to each solution and will then propose a solution with the minimum cost. The
"cost" here represents an abstract cost parameter. For e.g. the cost of travel per KM can be 10
units. Thus if a technician travels for 5 KMs the cost of travel is 50 Units.
Important configuration before using Optimizer:
The Utilization report in MRS show the utilization of a Single Org unit, a Resource, or a group
of Org units.
This report can be launched separately as a new transaction or directly from the planning board.
To Launch the Utilization report directly from the planning board, the customizing for
transaction jumps must be maintained. For details check: Customizing of UI Profile.
To view the utilization of a single resource, right click on the resource box in the MRS Planning
board grant and select the option: "Resource Utilization".
The utilization report makes use of bar chart control to show the utilization values in form of
Bars, Area, Lines etc. Some salient features of this report are:
MRS is also capable of Work Center Scheduling or Capacity Planning. This feature is available
from SP03 release onwards.
Before you kick start to test the work center scheduling functions, please make sure that all the
steps described in Set up Planning board in 15 minutes! are completed. After that follow the below
steps:
Step 1: Define the duration of work center breaks in MRS customizing. This is defined in: Set Up
have created in previous step. Switch to Demand Planning layout from the Planning board menu
to see the work center capacity information.
Here, you should see that the work center capacity and dispatching information is shown on the
planning board.
Step 5:Move any of the operations ahead in time. Trigger scheduling for the Order.
Check that other related operations should also move accordingly. Also, the capacity of the work
center must be calculated accordingly.
Troubleshooting:
The work center cannot be seen on the planning board - Check that you have successfully
transferred the work center as described in step 2.
The capacity utilization of the work center is shown incorrectly for the old order - Save the
order again and then relaunch the planning board. It should work fine. If you still get problems
- raise a flag!
Step 0: Check if the system is ready for tests. Check the following points. If one or more checks
fail - write a mail to the system administrator and get it resolved before proceeding for testing.
Check in table T000 if the logical system for the defined for the testing client.
Check that the system is open for customizing changes and correction changes.
If the testing client is not delivery client (000) then make sure that the delivery customizing is
imported before you proceed.
Step 1: Make sure that you have employees created in your SAP HR system and make sure that
the work schedule is created.
Step 2: In transaction PPOME check that the resources are assigned to the org units (positions).
Step 3: Customize settings in MRS (transaction /MRSS/IMG). Note: Maintain only the settings
described here. Do not maintain / change any other MRS customizing. This will be a test to
check if the delivery customizing is maintained correctly or not!
a) HR Integration->Configure Settings for HR Integration - Define the work and work break
entries here. The entry should look like this:
b) MRS Basis->Define Time Allocation Types - Define the time allocation types WORK and
WORK_BREAK here. The entries should look like this:
c) MRS Basis->Assign Time Allocation Types to Resource Types - Assign the time allocation
types to the Human resources
e) Basic Settings->Assign ERP Objects->Assign Work Center Types - Assign the work center
category (Of the work center to be created in step 6) to WCPN (WC for Planning node). This is
required so that during the forward integration, the linked Org unit for a work center can be
found.
Step 4: Run the availability transfer report /MRSS/HCM_RPTWFMIF for the resources.
Step 5: Implement the note 1380802 (if you are running MRS 700) for PM/CS integration. Make
sure that no manual corrections are required. The note implementation should be automatic.
Note: If you are running MRS 610 use note: 1135513 instead of 1380802.
Step 6: Check that in CR03, the work center (that you plan to use) has the HRMS link to the org
units.
Step 7: Create a sample order from transaction IW31 and save. If you want to integrate the
existing orders, then just open and save the order again.
Step 8: Launch planning board via transaction /MRSS/PLBOORG. You should see the resources
and their working times transferred. You should also see the sample order created in Step 7. Drag
and drop the demand on the resource. The assignment must be created.
Troubleshooting:
The Order I created does not appear on the planning board - Check the customizing in step 3-d.
Confirm the note in step 5 has been correctly implemented. Check that the work center is
correctly created as described in step 6. If you still don't get the order... raise a flag!
I can see the resources in planning board but the work timings are weird - Check your
customizing in steps 3-a, 3-b and 3-c. If necessary, delete the resource data using the same
report and run the availability transfer report once again after correcting the customizing. If
you still don't see the correct data... raise a flag!
For setting up the PS MRS Integration, the Step 0 to Step 4 you can contact me.
Step 5:Implement the note 1135512 for PS integration. This note has automatic corrections as
well as manual steps to be followed.
For the time being, just skip all the manual steps. Only follow the automatic corrections. Thus
we will test the work center planning integration (Integration based on Work centers). Later on
we will implement the manual steps also and we will thus activate the resource planning
integration.
Step 6: Check that in CR03, the work center (that you plan to use) has the HRMS link to the org
units.
Step 7: Define PS Integration relevant customizing in MRS:
a) Sources of Demand->Networks (Projects and WBS Elements)->Control Integration of
Projects and WBS Elements in MRS - Here define if you want to integrate Projects and WBS
elements or not.
b) Sources of Demand->Networks (Projects and WBS Elements)->Define resource planning
relevance for networks - Here define if the network activities are relevant for MRS integration or
not.
Note: In the Process variant field, the entries: Contact Person Process, Resource Planner Process
and Background Resource Planning Process are all relevant for Resource Planning. They are
NOT relevant for work center planning.
Hence for the time being, always select Not Relevant for Resource Planning.
Additionally, we also have separate check boxes for Resource planning and Capacity Planning
(in the end). For the time being use only Capacity Planning check box for steering the
integration.
Step 8: Create a Project, WBS Elements, Networks, Activities, Activity elements and
relationships between them. Save the Project in CJ20N.
Step 9: Launch the planning board via transaction /MRSS/PLBOSRV. Here you should see the
The Order I created does not appear on the planning board - Check the customizing in step 7.
Confirm the note in step 5 has been correctly implemented. If you still don't get the order...
raise a flag!
After testing the PS Integration for work center planning, it is not time to test the PS integration
for Resource Planning. After you have successfully completed the previous steps, follow the
below steps now:
Step 1:
Implement the note 1135512 for PS integration. This time, you have to implement only
the manual steps given in the note. Follow all the steps given in the long text of the note.
Important: If you have note implemented the automatic corrections yet, please implement them
also.
c) Make sure that the status profile for networks has a status STPL defined. This is done in
SPRO transaction.
d) Basic Settings->Assign ERP Objects->Status->Assign Status - Here, map the abstract status
START_PLAN to STPL.
Step 3: Create a Contact Person and Resource Planner for the Organizational units that you want
to use. This can be done in transaction PPOME.
Step 4:Create a Project, WBS Elements, Networks, Activities, Save the Project in CJ20N.
Note: Now you should see an additional tab in the network header and network activity screens
named 'Customer Enhancement tab'. This tab is of the most relevance for MRS integration.
Set the flag Start of Planning in network activity screen and save the network.
Step 5:Launch the planning board for your selected org unit. Here you should see your network
and the resources also.
Troubleshooting:
The Order I created does not appear on the planning board - Check the customizing in step 2.
Confirm the note in step 1 has been correctly implemented. If you still don't get the order...
raise a flag!
The 'Start of Planning Flag' is cleared automatically - Check the status customizing in step 2.
Pay special attention to the status language in customizing.
MRS is also capable of Work Center Scheduling or Capacity Planning. This feature is available
from SP03 release onwards.
Before you kick start to test the work center scheduling functions. After that follow the below
steps:
Step 1: Define the duration of work center breaks in MRS customizing. This is defined in: Set Up
Scheduler Workplace->Define Breaks for Work Centers.
Note: This is an optional customizing.
Step 2: Run the work center transfer report /MRSS/SGE_PN_MNT. Enter the work centers that
you want to transfer.
Step 3: Create new PM/CS Orders or PS Networks (capacity planning relevant) and save them.
have created in previous step. Switch to Demand Planning layout from the Planning board menu
to see the work center capacity information.
Here, you should see that the work center capacity and dispatching information is shown on the
planning board.
Step 5:Move any of the operations ahead in time. Trigger scheduling for the Order.
Check that other related operations should also move accordingly. Also, the capacity of the work
center must be calculated accordingly.
Troubleshooting:
The work center cannot be seen on the planning board - Check that you have successfully
transferred the work center as described in step 2.
The capacity utilization of the work center is shown incorrectly for the old order - Save the
order again and then relaunch the planning board. It should work fine. If you still get problems
- raise a flag!
MRS Tutorials
It is also possible to do work center planning (also referred as rough cut scheduling) in MRS.
This function is available since MRS 610 SP03 release.
In order to use this function, you must first transfer the work center to MRS. This is done by
executing the report: /MRSS/SGE_PN_MNT.
The current version of MRS - MRS 610 is equipped with lot of new features. You can now
visualize the travel time for your technicians if they are traveling to a customer location to
complete the work.
For e.g. you can customize a layout to show only the resource gantt and the item work list, OR
you could customize a layout to show only the DPD (Demand planning and dispatching) Gantt.
You can switch between different layouts easily and you can also default a layout in your user
settings.
You can create assignments via drag-drop or by drawing on the Gantt chart. You can also move
them. You can undo and redo your work multiple times and then finally save your work.
Enhancements in MRS
In this section, you can find how to enhance SAP solution MRS to cater to your custom needs.
This section will explain about the MRS BADIs and enhancements, how they can be
implemented and in which scenarios which Badi needs to be implemented.
However, if you wish to change the sort sequence, then you can do so. There is no customizing
option to do that, but a BADI is available that can be used to change the sorting sequence.
In this method all the necessary information like: Resource Guide, Name, Org unit information is
available. Based on these details, customers can decide their sort sequence.
13 comments:
1.
Wow! Amazing...Grt Work Done! a little tip...Pl post some graphics and screen shots
for illustrations! That would make things look more interesting and understandable to
people who are not tech savvy as well.
Keep it up!
Cheers
Rhea
Reply
2.
Regards
Jawaid Burney
Reply
3.
Hi!
Just wondering if you know a company that uses MRS to schedule human resources,
replacement parts and equipment needed for attending maintenance needs; MRS
integrated with PM, MM, and HR for maintenance orders schedule. We would like to
see MRS working altogether with these functions before buying it.
Sincerely,
Mauricio
Reply
Replies
1.
Hi Mauricio,
Hope you are doing good. If you are still looking out for MRS expertise
and implementation done then we could get intouch to discuss this
further. I have mentioned below what we have achieved through MRS.
We can also help you with the demo if you are interested. Please let
me know, you can reach me at : abhijit.neelgar@enstrapp.com
Thanks,
Abhijit
Reply
4.
Regards,
Balachandar L
Reply
5.
WOrk order no will only come to the planning board when explicitly entered in the
demand field. And when i try to schedule it, the message appears " work center of
demand is not assigned to organization unit " .This Work Center has been attached to
its Org Unit for a long time and it is active. Can i know how this could have been
disconnected. Is there any thing i can check in the table HRP1001.
Reply
6.
Dhanajay
Could you please tell me how can I exclude Teco orders from Planning board in MRS.
THanks
Ajay
ajaysetty9@gmail.com
Reply
7.
Hi All,
I would like to share valuable inputs on similar lines what Dhananjay has put across. I
am Abhijit and I lead Sales for an IT firm known as Enstrapp. We have been working
on MRS over a couple of years now for a top notch energy service provider in Europe
and we are first of its kind to do a complex MRS 800 implementation and integration
with ECC 6.0.
I would like to quickly highlight on what we have achieved so far:
1. Complete MRS technical implementation with integration to SAP PM/CS
2. One of the first MRS 800 Implementations done across the globe
3. Development of MRS Dispatching cockpit tool for internal/external resource
planner for efficient and optimized multi-resource planning
4. MRS & Google Maps Integration
5. MRS technical integration with PM/CS appointment booking functionality
6. MRS Technical upgrade and support
7. SAP XI integration with legacy systems
All I wish to say is we have the required expertise on SAP and are willing to help
similar firms to improve and optimize their business on daily routine. If you are
aware of any such similar requirements or need additional info, please write to me at
: abhijit.neelgar@enstrapp.com. Just to add, we also have extensive expertise on
SAP Mobility.
Thanks,
Abhijit
Reply
Replies
1.
MOHAMED ALIJanuary 18, 2013 at 1:30 PM
2.
Hi Mohamed,
Thanks,
Abhijit
Reply
8.
Hi Folks,
good blog!! Does anybody can give me an advice for a good book regarding MRS
within SAP?
Thanks
Reply
9.
Thanks in Advance.
Reply
10.
Hi,
nice blog Dhananjay, I wish to understand and learn/certify in MRS.
Could you guide me how, do you have documents to understand, what is the training
id that SAP provides for MRS.
Thanks,
AV
Reply
Dhananjay
View my complete profile
Followers
Blog Archive
2012 (1)
2011 (1)
o November (1)
MRS (Multi Resource Scheduling) in SAP
2010 (2)