0% found this document useful (0 votes)
31 views29 pages

Mastering Time PCRs in SAP HCM

Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views29 pages

Mastering Time PCRs in SAP HCM

Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Introduction

I have come across many queries in SAP Community Network where SAP HCM consultants would like
to acquire the skillset to write Time PCRs. This knowledge artifact is an attempt from my side to
impart this knowledge based on my experience of working in Time management over 7 years and
writing Time PCRs in various SAP HCM projects.

However, before I go any further, let me be frank that there are no shortcuts to this. There isn’t any
tonic available in the market that you take a couple of shots of it and overnight, you become an
expert in writing Time PCRs.

It will require persistent and diligent efforts, analytical bent of mind and patience and if you are game
for it, this knowledge artifact is definitely for you.

Unlike other modules in SAP HCM where you have to mostly update configuration tables, Time
Management and Payroll require you to map customer scenarios using PCRs, operations and
functions and this is what makes these two modules very complex. However, once you have
mastered the art of writing custom PCRs, you will realize that SAP has provided such a robust and
flexible option in terms of PCRs to meet various client requirements. I refer to PCR Writing as
functional coding and it is similar to ABAP coding.

Definition

A Personnel Calculation Rule (PCR) is called within a schema for executing subtasks using various
operations. Each step within a PCR corresponds to an operation and there can be sub PCRs too. A
PCR will be processed by a function.

Below is an example of a PCR MODT being processed by function MOD in standard schema TM00.
You can access, create, modify or delete PCR using TCode PE02.

Each PCR has below sub-objects:


 Source Text – This displays the PCR in tree structure or table view and has two options –
ESGrp Grouping and Wage/Time type. Below is the screenshot of the PCR in tree structure.
The operations are highlighted in red box. Hence, PAYTP and MODIF are two examples of
time operations.

 Attribute – The attributes section display the text of the PCR, program class (T – Time
Management, C – Payroll), Country Grouping, Person Responsible, Changes only by Person
Responsible Checkbox, Created On and Last Change By date. Please refer below the
screenshot of the same:
 Documentation – This displays the documentation of the PCR and explains the functionality
and usage of this PCR.

We never modify standard PCRs delivered by SAP. If we have to make any changes to standard PCR,
we copy the standard PCR to a custom PCR and make changes to the custom PCR. Also, we comment
out the standard PCR in the schema and replace it with the custom PCR. It is recommended to use
codes starting with Z or Y for custom PCRs.

Probable Roadmap towards Becoming an Expert in Writing Time PCRs

When I had started my career in Time Management and Payroll, I went to a colleague of mine and
asked him about the best way to learn these two complex modules. I wanted to get rid of the fear of
time evaluation and payroll run log. His answer was a very simple one. Execute time evaluation for an
employee and go through each node in the time evaluation log to understand how time data is
getting processed by each function, PCR and operation. In hindsight, I can say that it was the best
thing he advised me to do. And this is what I did. I ran time evaluation for an employee and went
through the entire processing log one by one and in the process, I got myself educated on a number
of standard functions, PCRs and operations. While I was doing this activity, I used to maintain a
document to record the meaning and usage of the standard functions, PCRs and operations I came
across. Of course, there were few complex things which were not clear and I used to go to him to get
them clarified.

There was one important piece I had missed in this and that was the understanding of time types.
Since I didn’t have sound understanding of time types, I was not good in writing new Time PCRs from
scratch. I was, however, good in resolving support tickets which required analyzing the time
evaluation log and changing or fixing existing PCRs. Hence, I had become like a car mechanic who
could fix issues in a defective car and bring it back to shape. But I was still not good enough to create
a new car on my own. Hence, it is very important that consultants get an understanding of time types
if they wish to learn to write PCRs on their own.

Step 1: Understand Time Types – The DNA of Time PCRs

The first step involves developing an understanding of the functionality of time types. Without this,
you will never be able to map complex time scenarios in Time PCRs. I have written a knowledge
artifact regarding the same which will help you get this understanding. Please go through the below
document.

Time Types - The DNA of Time PCRs

Step 2: Run Time Evaluation and study the Time Evaluation Log

Why am I asking you to go through this step? This is the best way to get an understanding of how
time data gets processed in time evaluation. You will be going through each node and in the process,
get an understanding of the usage of each function, PCR and operation. Don’t worry if things are not
clear at the first instance itself for all the nodes in time evaluation log. But do continue this for the
entire log. You can try various scenarios like capturing an attendance in IT2002, capturing absence in
IT2001, capturing time events in IT2011, not capturing any data at all anywhere (positive time
evaluation will result in error and negative time evaluation will get evaluated normally) and then
running the time evaluation and studying the time evaluation log. You can go through the
documentation of functions and operations and PCRs using TCode PE04 and PE02 respectively.

While I was doing the above activity, I used to maintain a spreadsheet with the codes of functions,
PCRs and operations and their usage in separate worksheets. This helped me to do a quick review of
what these functions, PCRs and operations were meant for, whenever required.
Operations

Taking cue from P.K. Agrawal’s book on Time Management, there are five different types of
operations:

1. Operations that provide information for Decision Making in PCRs

2. Operations that change contents of Internal Tables

3. Operations that change Overall Status

4. Operations that change contents of Database Tables

5. General Operations

Below screenshot shows these operations arranged in the above 5 categories:


I would recommend that you create 5 worksheets in a spreadsheet based on the above categories
and capture the definition and usage of each of the above operations as you study the time
evaluation log. Idea should be to capture the gist of the usage and not the entire content available in
the documentation. And, you should go through this list often and revise so that you develop a good
understanding of the usage of each operation.

The most commonly used operations in Time PCRs are OUTWP, TABLE, VARAB, VARPR, VARST,
ADDDB, ADDMB, COLER, COLOP, FILLP, HRS, TFLAG, GCY and PCY and I would recommend that you
study them first and understand them. You can also use the “Where Used” functionality in TCode
PE04 to find out PCRs where the given operations are being used.

I always had a confusion regarding when to use GCY and PCY as both of them seemed to call another
sub-rule. I was able to figure this out later on. GCY is used when you want to branch on to a new sub-
rule from one rule and you will be processing only this sub-rule going forward. PCY is used when you
want to process multiple sub-rules simultaneously from one rule.

You may also find that you have exhausted the maximum no. of operations that can be used in a PCR.
In such a scenario, you will use the last operation (GCY or PCY as the case may be) in the PCR to move
on to a new sub-PCR or another employee subgroup grouping of the same PCR.

Functions

Taking cue from P.K. Agrawal’s book on Time Management, there are three different types of
functions:

1. Functions that set a switch: These functions can be called at any position within the schema
and they are called again while the current schema is being executed. Such functions don’t
get processed in IF, ELSE and ENDIF loop. Examples are like OPPT, CHECK, EXPRT etc.

2. Functions that import data: Examples are P2001, P2011, P2002 and so on.

3. Functions that process a PCR:

o Functions for processing status information like ACTIO.

o Functions for processing internal tables like PTIPA, PTIP.

o Functions with fixed processing like PBRKS.

Let me explain you the usage of common functions which process PCRs.

 RTIP: It is used to read entries in Table TIP. Entries in Table TIP won’t get changed.

 RTIPA: It is used to read entries in Table TIP only if there is an absence for the given day.
Entries in Table TIP won’t get changed.

 PTIP: It is used to process entries in Table TIP. Entries in Table TIP may get changed.

 PTIPA: It used to process entries in Table TIP only if there is an absence for the given day.
Entries in Table TIP may get changed.

 ACTIO: It can be used to process any time PCR if there is no need to read or process Table TIP.
While using functions RTIP, RTIPA, PTIP and PTIPA to process a PCR, please use GEN in parameter 3
(beside the PCR) in the respective line of the schema if you are not processing the PCR for a specific
time type.

While working on a requirement for one of my clients, I chanced upon a standard function PZL which
gives a lot of flexibility to process wage types in Table DZL. Using this function, I was able to round off
overtime hours generated in wage type from Table T510S. I was also able to split overtime hours
after it has breached a given threshold limit in a month.

You can refer the below documents where function PZL has been used:

Splitting of Overtime Hours after X Hours in Time Evaluation

Rounding off Overtime Hours Generated via T510S table in Time Evaluation

Step 3: Develop Clarity of Thought on the Requirements and visualize design

It is one of the most important activities that each consultant must do while trying to write a new
PCR. One must have clarity of thought on the requirements. Because only then, you will be able to
design the right PCR to meet the requirements. I discovered this technique fortuitously.

Every PCR goes through the below stages and each stage has few typical queries:

 Input

 What data needs to be processed?

 Where does the data come from?

 Processing

 For whom the data needs to be processed?

 How does the data need to be processed?

 What should be the outcome of this processing?


 Output

 Where the processed data needs to be stored?

For each stage, depending on the activity, you may require different operations. Use the above
questions to find the operations which will help you design the PCR. For example, a particular PCR
needs to be processed for employees belonging to Personnel Area 1000 only. In such a case, it is the
1st question in the processing stage and you will use operation OUTWP as a decision operation to
filter out the employees belonging to Personnel Area 1000.

When you have to write a custom PCR, you should try to understand the requirements functionally
before trying to figure out the operations to use. You should think of the complete design in a way
that if this requirement was being handled by someone else, then you should be able to explain the
step by step process of how the solution should work. You should ask the above questions which will
help you zero down on the operations to use or direct you to look for the right operations from the
list you have prepared.

Frankly speaking, I discovered this accidently, while trying to build my first solution independently
using PCRs and time types. Below is the document regarding my first solution:

Determination of First Clock In & Last Clock Out in Positive Time Evaluation

I would recommend you to go through it so that you get an idea about the challenges faced when
you are developing a solution using PCRs independently for the first time.

There may be situations when no standard operation can handle the client’s requirements. In such a
case, you may go for development of a custom operation.

Step 4: Practice already built Standard and Custom PCRs

Practice, Practice and Practice!!! There is no substitute to this.


Yes, that’s the mantra to get into the groove of writing PCRs. Develop your confidence and
understanding of the PCRs by creating simple Standard and Custom PCRs which are already built.

Some of the simple standard PCRs which you can practice are MODT, TD20, TD10 and TE20. If you
wish to practice simple custom PCRs, you can refer to the below blogs:

Grant of Absence Quotas in Time Evaluation

Balance Absence Quota Carry Forward – Method 1

Once you have mastered the simple PCRs and created them on your own, you can move on to
medium and high complexity PCRs. Some of the medium and high complexity standard PCRs which
you can practice are TE30, TO01, TO02, TW31, TW32, TW33, TW34, TW35, TW36, TO20 and TO21. If
you wish to practice medium and high complexity custom PCRs, you can refer to the below blogs:

Determination of First Clock In & Last Clock Out in Positive Time Evaluation

Late Coming, Early Going and Unauthorized absence

Pre-approved Overtime Using IT2007

Calculation of Ramadan Overtime during Planned Working Time

Splitting of Overtime Hours after X Hours in Time Evaluation

Rounding off Overtime Hours Generated via T510S table in Time Evaluation

Please ensure that you run time evaluation and validate that PCRs created by you are behaving as
expected. It is very important that you go through the processing log of the PCR to validate its
functioning.
Step 5: Moment of Truth – Build your own solution using custom PCRs

After you have gone through the above steps, you will definitely become comfortable in writing
custom PCRs. But the moment of truth will come when you are able to do end to end design and
build of a solution using custom PCRs independently. That moment will slowly and steadily build your
confidence and help you to design more solutions with custom PCRs for various client requirements.
And as you go on writing more PCRs, you will finally realize that writing PCR comes to you naturally.

The above steps are simply guidelines to help new consultants wanting to master the art of writing
time PCRs. For some of them, the learning curve may be faster and not all steps may be needed.
Some who may have attended SAP training may do it even quicker.

I hope consultants will benefit by the approach highlighted in this blog. It will require continued
perseverance and patience to reach the goal. Remember that Rome wasn’t built in a day.

RPTIME00 Future Ahead?

SAP is rapidly changing quite a few things in SAP HCM space after acquiring SuccessFactors and one
of the things which may get impacted is time evaluation solution. As per the blog – (RP)TIME to Say
Good Bye? - published by [Link] yesterday, SAP may soon sound the death bell for RPTIME00
program and time evaluation solution. If that indeed happens to be the case in future, it will be really
unfortunate for SAP to do away with a time tested, highly flexible and robust time evaluation
solution. And that would mean that my blog will also become redundant

Till that point of time, where customers continue to use time evaluation and new consultants are
willing to acquire the art of writing Time PCRs, I hope this knowledge artifact will be useful and
relevant.

Warm regards,

Vivek Barnwal
**********************************************************************************
*******************

You can also refer to other knowledge artifacts created by me at the below link:

One Stop Shop of my Knowledge Artifacts in SAP HCM

 SAP Managed Tags:

 HCM (Human Capital Management)

 function

 HCM

 HR

 Human Capital Management

 pcr

 sap erp human capital management

 time evaluation

 Time Management

11 Comments

Sanky

Active Contributor
05-13-2015 5:55 AM

0 Kudos

Excellent...Top Class.... :smile:

Regards,

Sankarsan

Lkv

Active Participant

05-13-2015 6:03 AM

0 Kudos

Hi Vivek,

I was being wondering where to start PCR. I thing this document was paving way for how to go for
it.

Nice explanation.....

Warm Regards,

Vinodh

Former Member

05-13-2015 2:30 PM

0 Kudos

Hi Vivek,
Driving high end cars ain't make childhood bicycle ride redundant.

We all love and cherish those moments.

Your blogs, comments are always relevant. Keep em coming.

RPTIME00 is just one facet of SAP, not an end in itself.

Learning is always relevant, may not degrees or repackaged softwares.

Regards

Rohit.S

vianshu

Active Contributor

05-14-2015 4:48 AM

0 Kudos

Hi Rohit,

I just made a simple point that if SAP removes RPTIME00 in future, this blog will become redundant.
And it is specific to this functionality of SAP and not the entire SAP.

Cheers,

Vivek

Former Member

05-14-2015 4:22 PM

0 Kudos
HI Vivek,

I appreciate on your article, Your exercise will surely helps for the folks, who wants to learn PCR
writing.

As you said this may be for some period as new software's are come in to fulfill the current business
requirement.

Just we have to keep update knowledge as grow flows on..

Thank you,

Srinivas.

Former Member

05-15-2015 7:51 AM

0 Kudos

Hello Vivekji,

Thank you for valuable information.

Regards,

Santosh Shivane

Former Member

11-06-2015 6:57 AM

0 Kudos

Thanks you.

Former Member

07-28-2016 11:41 AM

0 Kudos

REALLY GOOD! thanks a lot!


Former Member

01-13-2018 12:54 AM

0 Kudos

Hi Vivek,

A wonderful document on 'Writing PCRs' for the beginners. You explained it very nicely. Thanks a lot.

former_member622494

Participant

06-03-2020 11:52 AM

0 Kudos

Dear Vivek Ji,

Thanks for the detailed document.

[Link]
Aravind_Mak

Explorer

05-21-2024 7:34 PM

0 Kudos

Such a wonderful and helpful document... thanks a lot

You must be a registered user to add a comment. If you've already registered, sign in. Otherwise,
register and sign in.

 Comment

Labels in this area

 "mm02"1

 $session in CDS1

 A_PurchaseOrderItem additional fields1

 ABAP5

 abap cds1

 ABAP CDS VIEW2

 ABAP CDS Views2

 ABAP CDS Views - BW Extraction1

 ABAP CDS Views - CDC (Change Data Capture)2

 ABAP DDIC CDS view1

 ABAP Development1
 ABAP Extensibility1

 ABAP Programming1

 abapGit1

 ACCOSTRATE1

 ACDOCP1

 Adding your country in SPRO - Project Administration1

 Adobe form binding1

 Adobe forms1

 Adobe Printing1

 Advance Return Management1

 Advanced Intercompany Sales (5D2)1

 Advanced SAP Techniques1

 Advanced Variant Configuration1

 AI and RPA in SAP Upgrades1

 API and Integration1

 Approval Workflows1

 Ariba1

 ARM1

 Artificial Intelligence (AI)1

 ASN1

 ASSET MANAGEMENT1

 Assigned budget1

 Associations in CDS1

 Associations in CDS Views2

 auditlog1

 Authorization1

 Auto PO from GR1

 Availability date1

 Azure Center for SAP Solutions1

 AzureSentinel2

 BADI1
 Bank1

 BAPI_SALESORDER_CREATEFROMDAT21

 Billing1

 BRF+1

 BRFPLUS1

 Budget for PRs1

 Bundled Cloud Services1

 business participation1

 Business Processes1

 Capacity Planning1

 CAPM1

 Carbon1

 CDS Annotations2

 CDS View with Parameter2

 Cental Finance1

 Central finance1

 CFIN2

 CFIN Document Splitting1

 Cloud ALM1

 Cloud Integration1

 COGS SPLIT1

 Commitment Cost1

 Commitments by Cost Center1

 condition contract management1

 Connection - The default connection string cannot be used.1

 Consignment Process using MRP Area1

 Controlling1

 COPA1

 Cost plan1

 Custom Table Creation1

 Customer Screen in Production Order1


 Customizing1

 Data Analytics1

 Data Analytics & AI1

 Data Quality Management1

 Date required1

 Decisions1

 desafios4hana1

 Developing with SAP Integration Suite3

 Direct Outbound Delivery1

 DMEEX1

 DMOVE2S41

 DMS1

 DMS attachment Service SAP Object Link Tables1

 DTW1

 EAM1

 EDI3

 EDI 8501

 EDI 8561

 edocument1

 EHS Product Structure1

 Emergency Access Management1

 Employee Central Integration (Inc. EC APIs)1

 Energy1

 EPC1

 ERP1

 Extended Warehouse Management(EWM)1

 FINANCE1

Related Content

 SAP Fiori for SAP S/4HANA – Trial system options for Private Cloud and On-
Premisein Enterprise Resource Planning Blogs by SAP 05-28-2024

 Service Hours based Payscale reclassification or Auto progression in SAP in Enterprise


Resource Planning Blogs by Members 05-05-2024
 Subcontracting requirements does not consider plant's inventory in Enterprise Resource
Planning Q&A 04-19-2024

 How do I write a PCR to accumulate the rate values from certain wage types in the arrears
table?in Enterprise Resource Planning Q&A 04-17-2024

 FAQ on Upgrading SAP S/4HANA Cloud Public Editionin Enterprise Resource Planning Blogs
by SAP 04-12-2024

Popular Blog Posts

IDoc Basics For Functional Consultants

by former_member213836 •Active Participant

 1020727 Views
 318 comments

 662 kudos

LSMW for Functional Consultants in simple step-by-step way

by former_member182098 •Active Contributor

 601802 Views

 294 comments
 388 kudos

Pricing procedure Steps and Details in SAP MM

by former_member183424 •Active Contributor

 727197 Views

 161 comments

 323 kudos
Top kudoed authors

20

DenizZilyas

Avinashborate

2
hjamithi1

29ratul

2
kumarsanjeev

Senthilkumar3

2
Ruthvik_Chowdary

rajarajeswari_kaliyaperum

1
coleti

View all

Follow

 Privacy

 Terms of Use

 Copyright

 Legal Disclosure

 Tra

You might also like