Human Capital Management Blogs by SAP
Get insider info on SAP SuccessFactors HCM suite for core HR and payroll, time and attendance, talent management, employee experience management, and more in this SAP blog.
cancel
Showing results for 
Search instead for 
Did you mean: 
NeeleshKamath
Product and Topic Expert
Product and Topic Expert
1,427

Overview

 

This is a continuation of my previous blog https://community.sap.com/t5/human-capital-management-blogs-by-sap/timely-time-sheet-alerts-for-no-r... where I had provided a solution to check previous day records and send alerts

Many partners and customers had reached out to me to check if we can use a similar concept for a requirement where we need to send reminders to employees if the previous week or previous two week’s ago time sheet is not yet submitted. This is especially crucial from payroll perspective where employees who are on weekly or biweekly payroll need to have this submitted and approved in time so that their daily wages or overtime is paid on time.

Please note: This custom solution is only required for sending alerts and reminders and if you as an Org need them to ensure employee completes the time sheet and submits them. 

There are other inbuilt auto submission capabilities provided by product which can auto submit time sheets so that deadlines are not missed. Here is the link for that

https://community.sap.com/t5/product-and-customer-updates/automatic-time-sheet-submission-and-approv... 

 

 

Solution Approach

 

Create a custom MDF to check if the weekly/biweekly time sheet is submitted or not

NeeleshKamath_0-1722314550111.png

 

The custom MDF will have two fields:

  • User : as the external code
  • isTimeSheetSubmitted -  a Boolean field which tracks the submission

 

on Save Rule

 

The below on save rule needs to be created to check if the biweekly time sheet exists or not

NeeleshKamath_2-1722314668571.png

  • the first variable checks if there is a time sheet in past two weeks with a status “To  Be Submitted”. Please note in this case a time sheet record still exists.
  • the second variable checks if there is time sheet existing at all at first place. It could happen that employee hasn’t recorded anything at all. In case of positive time recorders, this would mean there is no time sheet record in database. So we need to explicitly check for this case as well. We don’t have to worry about negative recorders since the time sheet for them would be auto generated with status ‘To Be submitted’ which is taken care by 1st variable
  • If you notice I have mentioned -16 days as one of the parmeters. This would work for example If I am running the IC job (to be discussed in next section) every Wednesday. But if you plan to run it every Monday, you can use -14 . I would recommend running it every Monday or on Sunday during non business hours
  • What this essentially does is it backtracks -16 days from every Wednesday to check if a time sheet with start date that matches today – 16 days is found with status “to be submitted”. If yes then the flag “is Time Sheet Submitted” is set to NO. Else it is set to yes because it would be either approved or cancelled or declined already.

Please note: If the time sheet start day is always on Monday and you run IC on Monday, then -14 days from today will always give a date which begins on Monday. And further you can fetch time sheet records which begin from that start date

Alert Rule:

 

Like any other MDF alert rule, this is a simple rule which checks the flag ”is Time Sheet Submitted”. If the value is No it sends the alert

NeeleshKamath_3-1722314714727.png

NeeleshKamath_3-1722313700577.png

Integration Report

An integration Center Report is created with Starting entity as “USER” and our “Custom MDF” as the target entity. Also use SF to SF ODATA IC and scheduled as the type

 

Drag and drop the user ID from USER to External Code (User field) of Custom MDF.

 

Also, ensure that you use operation as Upsert Single/Multiple in IC

NeeleshKamath_4-1722314751855.png

Very simple IC process. Just one field has to be mapped

You can add appropriate filters to ensure that you can run only for subset of employees

To test this, I am using a filter to run it only for one employee

NeeleshKamath_5-1722313754053.png

Scheduling the IC: Please use this only once a week. Example Run it once every Monday. It will check for time sheet two weeks ago and send alerts. This is very very important!!!. You need to schedule it run only once a week

NeeleshKamath_6-1722313816765.png

Testing

 

I will use user 170 for testing this

NeeleshKamath_7-1722313837150.png

This is being recorded on July 22. So assuming July 22 is today, the last two weeks time sheet start date would be 8th July

We see that from manage data there is no time sheet for the employee at all for user 170

NeeleshKamath_8-1722313857447.png

Now I will run IC

NeeleshKamath_9-1722313875051.png

Rule trace also gets the start date to check as July 8 (backtracking 14 days from Jul 22 on when IC was run)

NeeleshKamath_10-1722313895260.png

The MDF now stores the submission flag as No (since the time sheet record it self did not exist) as a result of onSave rule

NeeleshKamath_11-1722313919898.png

Alert is sent for this case

NeeleshKamath_12-1722313937842.png

Case 2: The time sheet exists but not submitted yet

NeeleshKamath_13-1722313955959.png

From manage data also we can see that it exists

NeeleshKamath_14-1722313975771.png

Run the IC again

MDF and alert is still sent since the time sheet is not yet submitted

NeeleshKamath_15-1722313993538.png

NeeleshKamath_16-1722314007299.png

Case 3: The time sheet is submitted now

NeeleshKamath_17-1722314024759.png

Run the IC, see that the flag for submission is now set or changed to Yes since the time sheet has been submitted by the employee

NeeleshKamath_18-1722314042424.png

No alert is sent in this case

 

Case 4: the time sheet has been already approved

Similar to above , if the time sheet is approved , the flag will remain Yes and no alert is sent

This is it

I think this would be a way to deal with this situation. Please note this at the end is a custom solution. Please perform through testing before deploying this in your instance. You can further tweak this solution based on how many weeks past data you need to check

Best Regards

Neelesh

Product Expert : Best Practices for SuccessFactors

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 Comment