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: 
Virginie_Klein
Product and Topic Expert
Product and Topic Expert

Introduction


Hi there! The 1H 2023 release upgrade is just around the corner and with that some great enhancements around the handling of public holidays are waiting to be implemented and used. So, let me tell you a little bit about those enhancements, what their purpose is and what you need to do to get everything up and running. Ready?

Great! Then grab a coffee and let’s start with a short overview of the single topics. Chapter 2 and 3 are independent from each other, but they both build upon chapter 1.

  1. Some Groundwork: Transition from Holiday Class to Holiday Planned Working Time
    We're now fully moving away from the holiday class. Learn how this impacts the holiday calendar and get to know our new object: Holiday Planned Working Time Determination.
    IMPORTANT: You now need to fill the holiday category instead of the holiday class.

  2. Extended Support of Partial Holidays (incl. Half Holidays for Clock Time Recorders – yay!)
    Partial holidays are holidays which don't last the full day, common in several countries of the globe. Learn about our new bouquet of possibilities to define a partial holiday.

  3. Support of Regular Work on Holidays: A Tribute to our Heroes who Keep Businesses Running 365 Days a Year
    Holidays don't necessarily lead to time off, at least not for everyone. A hospital, for example, cannot close only because it's a holiday, so certain holiday staff needs to regularly work even on holidays. Learn how you can now easily realize this.

  4. Summary
    Get an overview of how all the enhancements play together to determine the planned working time of an employee on a holiday.

  5. Conclusion


Until production upgrade, the same disclaimer as for the SAP SuccessFactors What's New | SAP Help Portal applies.

Some groundwork: Transition from Holiday Class to Holiday Planned Working Time


First, let’s open our history books: Back in time, the holiday class with its values ‘Full’, ‘Half’, and ‘None’ used to be an essential part of each holiday assignment and up to the 2H 2022 release it had in essence two different means:

(1) provide information about the planned working time on the holiday (e.g., holiday class = Full means that the day is a full day off),

(2) serve as a filter attribute in time valuation to pay holiday-related premiums.

Then, with the 2H 2022 release, we introduced the holiday category, in addition to the holiday class. The holiday category also consists of the same values ‘Full’, ‘Half’, and ‘None’ but in contrast to the holiday class it has the advantage that additional custom holiday categories can be created, whereas the holiday class values couldn’t be extended. Why did we do that? The holiday class as a filter attribute in the time valuation (see (2) above) wasn’t flexible enough. Many customers needed a more granular grouping of holidays to pay for example higher premiums on special holidays like Labor Day – or no premiums on company-specific holidays.

But we didn’t stop here. We didn’t want you to always maintain two fields (holiday class and holiday category). So, with 1H 2023 we’re now also replacing the planned working time function of the holiday class (see (1) above) by introducing the “Holiday Planned Working Time”. But one step after the other.

Let’s first have a look how the holiday calendar looks now starting from the 1H 2023 release:


Holiday calendar as of the 1H 2023 release


One of the first things you will notice is that the holiday class is not editable anymore, whereas when clicking on ‘Details’ you will see that the Holiday Category (which has been introduced with 2H 2022) has become editable per default (if you had not yet made it editable anyways):


All fields of the Holiday Assignment


And even more: The holiday class can also not be changed to editable anymore which means you can no longer fill it manually. It’s now always filled automatically on save based on the value selected for the holiday category. In turn this means that going forward you’ll need to fill the holiday category instead of the holiday class when adding holiday assignments. But no worries, this shouldn’t bother you a lot because, as already mentioned, for the holiday category we are providing you with the same default values as you know them from the holiday class:


Default values for the Holiday Category


Note: If you import your holiday assignments, keep in mind to download the updated import template via Admin Center > Import and Export Data > Download Template.

The holiday class is still filled (by the system) to not disrupt any existing integrations that rely on the holiday class or if you have business rules that refer to the holiday class. And we also kept it read-only to ensure you can still read the field via OData in case this applies to you. If it doesn’t, I’d recommend that you just make the field invisible. To do so, go to Admin Center > Configure Object Definition > Object Definition > Holiday Assignment > Take Action > Make Correction. Click on ‘Details’ for the field holidayClass and set the visibility to ‘Not visible’:


Object definition of the Holiday Assignment


Now that we’re anyways in the object definition, let’s also move up the holidayCategory field right after the holiday field to have all fields to be filled next to each other (you do so by clicking on the arrow that points up until the field is at the right place):


Object definition of the Holiday Assignment


(And if you cannot make the holidayClass invisible because you need to read it in one or the other way, this would also be the moment to at least move the holidayClass field down.)

Let’s check the holiday calendar again…Yup, this looks better, doesn’t it? Now we have all relevant fields to be filled at one place, without the need to click on ‘Details’.


Holiday Calendar after update to the object definition


For those of you who already know that the Holiday Category is an MDF object consisting just of external code and name, you might have already started wondering how we know what is the correct holiday class that needs to be set by the system, or better: what is the impact on the planned working time of a holiday category, especially custom holiday categories? This brings us to our new object called ‘Holiday Planned Working Time Determination’:


Holiday Planned Working Time Determination


There can be only one such object in each instance and it will be created automatically with the external code "HOLIDAY_PLANNED_WORKING_TIME_DETERMINATION" during the release upgrade. The effective start date of the first record is 01/01/1900 and cannot be changed. It will contain 'Holiday Planned Working Time Specifications' for all holiday categories that have already been used in any of the holiday assignments. So, it might look slightly different for you, depending on which holiday categories are already in use in your instance. Let me first mention which permissions you need to access this object so that you can open the object on your end as well:

  • User Permission > Time Management Object Permissions > Holiday Planned Working Time Determination

  • User Permission > Time Management Object Permissions > Holiday Planned Working Time Determination.Holiday Planned Working Time Specifications


Once you have granted the permission, you can open the object via Admin Center > Manage Data > Holiday Planned Working Time Determination > HOLIDAY_PLANNED_WORKING_TIME_DETERMINATION.

Got it? Ok, then let’s go on.

For each holiday category you need to set here the ‘Holiday Planned Working Time’, i.e., the impact a holiday with that holiday category will have on the planned working time of an employee (which was earlier handled by the holiday class). The available values for Holiday Planned Working Time are:

  • Scheduled Working Time: no impact on the planned working time; the employee will work as scheduled by the (temporary) work schedule (corresponds to holiday class ‘None’)

  • No Planned Working Time: the day becomes a non-working day due to the holiday (corresponds to holiday class ‘Full’)

  • Reduced Planned Working Time: the day becomes a partial day off due to the holiday (corresponds to holiday class ‘Half’)


As you can see, each of the Holiday Planned Working Time values corresponds to one of the holiday classes – this is how we set the holiday class: You enter a holiday category in the holiday assignment, we check what is the Holiday Planned Working Time for this holiday category and translate this back to a holiday class based on the above mapping.

Whenever you use a new holiday category* after the 1H 2023 release, you first need to add this holiday category in the Holiday Planned Working Time Determination, before you can use it in any of the holiday assignments, such that the system knows how to determine the planned working time on the holiday (and, consequently, how to set the holiday class). HERE you can find a video explaining how to use custom holiday categories.

HERE you can find the What's New Viewer topic related to the holiday calendar changes.

* Note: You need an SAP SuccessFactors Time Tracking subscription to create additional holiday categories other than the default values Full, Half, and None.

Extended Support of Partial Holidays (incl. Half Holidays for Clock Time Recorders – yay!)


Before we get into this: In return for this feature I want to see at least 32 likes for this blog post 😉, which is the number of votes on the corresponding influence request: Improvement Request Details - Customer Influence (sap.com) !! 😊

As already mentioned, the holiday planned working time ‘Reduced planned working time’ is the equivalent to the holiday class ‘Half’. This means that it will reduce the planned working time by 50%. Now, the nice thing is that whereas earlier this was only working for duration-based recorders, this setting can now also be used for clock time-based recorders, wohoo! What you need to know is that in case of clock time-based recorders it’s the second half of the day which will be considered as off. Let’s take an example: On 24 December 2023 (Christmas’ Eve), an employee, Stefan, is scheduled (i.e. planned as per the work schedule) to work from 8am to 5pm, with two scheduled unpaid breaks amounting to 1 hour of break in total, leading to 8 hours of working time:


Planned working time as per the work schedule (not considering holidays)


Christmas’ Eve is considered a half holiday, so the actual planned working time for the employee (considering the holiday) on 24 December 2023 will be from 8am to 12:15pm, including the break from 10:00am to 10:15am (4 hours working time = 8 hours x 0.5):


Planned working time considering holidays


(This screenshot is taken from our new planned working time UI, see more information HERE.)

If you have already been using the holiday class ‘Half’ in your instance before, then you don’t need to do any additional configuration to use this feature. You can now just add half-day holidays to the holiday calendars by using the holiday category ‘Half’, even if those holiday calendars are assigned to clock-time recorders. Because if you have already used the holiday class ‘Half’ before, then we have already maintained the Holiday Planned Working Time ‘Reduced Planned Working Time’ for the holiday category ‘Half’ for you. Hence, it will work out of the box as described above. If you’ve not been using the holiday class ‘Half’ before, you first need to add the holiday category ‘Half’ (or any other custom holiday category of your choice) to the Holiday Planned Working Time Determination object and set the Holiday Planned Working Time value to “Reduced Planned Working Time”. Only then you can start using the holiday category in your holiday assignments.


Half holiday configuration in the Holiday Planned Working Time Determination


If you now say the behavior described above is not what you need, because maybe you want all employees to go home at exactly 2pm (no matter if this leads then to 50% or some other fraction), or maybe you have the requirement to reduce the planned working time by an absolute number of hours (e.g., everyone can go home 1 hour earlier – you may have this requirement even for duration recorders), then we now have something else for you in addition to this 50% default logic: You can assign variants to a day model where you can schedule deviating working times which can then be used as a basis for the planned working time on a partial holiday (i.e., a holiday with holiday planned working time = reduced planned working time). This provides you lots of flexibility, but in turn comes at the cost of some configuration effort. But don’t worry. I will explain here now step by step what needs to be done in terms of configuration.

Let’s start from the day model of Stefan. We have added a new field to the day model object called ‘Day Model Usage’:


New field on the day model


Per default, this field is set to ‘Regular Day Model’. The alternative value is ‘Variant for Partial Holidays’. When the field is set to ‘Regular Day Model’, the day model is a normal day model as you know it; when the field is set to ‘Variant for Partial Holidays’, instead, the day model is not treated as a normal day model, but as what we call a “Day Model Variant”. Day Model Variants have the characteristic that they cannot be assigned as day models in a work schedule or temporary time information. They can only be assigned as a variant of a regular day model, which in turn is assigned to the work schedule.


Dependencies among work schedule, day model, and day model variant


To achieve this, the day model object has a new child object called ‘Variant Assignments’. To access this, we first need to grant the following permission:

User Permission > Time Management Object Permissions > Work Schedule Day Model.Variant Assignments (Work Schedule Day Model Variant Assignment)

Now let’s edit the day model and have a look at the Variant Assignment fields:


Variant Assignments


A day model can have multiple variant assignments and each variant assignment consists of a ‘Day Model Variant Identifier’ and the actual ‘Day Model Variant’. Let’s first have a closer look at the Day Model Variant Identifier. The Day Model Variant Identifier is an MDF object and in essence consists just of external code and name. To create a day model variant identifier, you need the following permission:

User Permission > Time Management Object Permissions > Work Schedule Day Model Variant Identifier

And this is how it looks like:


Day Model Variant Identifier


To explain you what this object is there for, let’s simply imagine the variant assignments without the day model variant identifier field. As mentioned, a day model can have multiple variant assignments. So, when calculating the planned working time, we somehow need to know which variant applies. And here, the Day Model Variant Identifier comes into play. It helps to identify which day model variant needs to be used on a certain holiday. Let's assume that for Stefan there are two partial holidays per year: Christmas' Eve (24 December) and New year's Eve (31 December). From next year (01/01/2024) the following rules shall apply:

  • Christmas' Eve: work ends at 12 pm

  • New Year's Eve: work ends at 2 pm


This means that his day model requires two different variants, along with two different day model variant identifiers.

So, we’ll create two day model variant identifiers now, called “Christmas' Eve” and “New year's Eve”, and use them in the variant assignments:


Creating Multiple Variant Assignments


Then, we also create two different day model variants. For the creation of a day model variant, you need to know that:

  • It cannot be a non-working day

  • It cannot have the same planned working time as the day model, where the variant is assigned to

  • For clock time-based day models, the scheduled working time of the variant needs to be within the scheduled working time segment of the day model where the variant is assigned to. (We plan to enhance this in future)


In our case, the day model has a scheduled working time from 8 am to 5 pm. Hence, the scheduled working time of the day model variants can be somewhere between 8 am to 5 pm, but not exactly 8 am to 5 pm.

So, we’ll now create a day model variant with a scheduled working time from 8 am to 12 pm for Christmas' Eve, and another day model variant with a scheduled working time from 8 am to 2 pm for New Year's Eve.


Day model variant for Christmas' Eve



Day model variant for New Year's Eve


(Note: If you set the field ‘Day Model Usage’ to “Variant for Partial Holidays” the Variants assignments section disappears because a variant cannot have another variant assigned.)

Finally, we’re assigning both the variants to Stefan’s day model. You will notice in the drop down that you can only select day models where the field ‘Day Model Usage’ is set to “Variant for Partial Holidays”. Additionally, some further checks like time recording variant or country are performed to ensure you get a pre-filtered list of day model variants for selection:


Assignment of day model variants to a day model


Now we’re almost there. We have assigned relevant day model variants and have made them “identifiable” via the day model variant identifier. But one piece is missing. We still need to define which variant should be used for which holiday. This brings us back to the Holiday Planned Working Time Determination. When selecting “Reduced Planned Working Time” as ‘Holiday Planned Working Time’, the field ‘Day Model Variant Identifier’ becomes available there as well:


Day model variant identifier field in the Holiday Planned Working Time Specification


Holiday category “Half” is the one we’re using for Christmas’ Eve (24 December), and as described above work on that day is supposed to end at 12 pm. Hence, Stefan's planned working time would be 8 am to 12 pm (no break). The variant assignment with this variant has the day model variant identifier “Christmas' Eve”. Hence, this is the one we need to select for the holiday category "Half" in the Holiday Planned Working Time Specification.

Note: In our example, we would now need a separate holiday category for New Year's Eve to be able to assign a different day model variant identifier and, hence, use a different variant on that day.

There’s one important aspect to consider: Since there are already existing holiday assignments with holiday category “Half” from the past, we cannot simply edit the existing holiday planned working time specification. Because that would mean that the planned working time of all back-dated holidays (since 01/01/1900) with that category would change. This means that we need to insert a new Holiday Planned Working Time Determination record with an effective start date from which we want the change to take effect. In our example, we want the change to be effective only from 1 Jan 2024.


Insert of a new effective-dated record to the Holiday Planned Working Time Determination



Assignment of the day model variant identifier to the Holiday Planned Working Time Specification


Now, for any holiday assignment where the holiday category is “Half” and the date is on or after 1 January 2024 (e.g., 24 December 2024), the planned working time will not be the 50% default logic but be based on the day model variant with the day model variant identifier “Christmas' Eve”. In Stefan’s example the variant assignment with day model variant identifier “Christmas' Eve” has the variant with a planned working time from 8 am to 12 pm. This is the planned working time for Stefan on such holidays. We will create the holiday assignment on 24 December 2024 to see this live at the end of this blog post.

Note: If a day model variant identifier is used in the Holiday Planned Working Time Determination, but the corresponding day model doesn’t have a variant with the same day model variant identifier, then the planned working time will fall back to the 50% default.

HERE you can find the What's New Viewer topic related to the partial holiday enhancements.

Support of Regular Work on Holidays: A Tribute to our Heroes who Keep Businesses Running 365 Days a Year


What do police officers, nurses, 24x7 production workers etc. have in common?

They need to cover shifts 24x7, 365 days a year – no matter whether it’s a holiday or not.

This brings us to our last, but not least, public holiday enhancement for 1H 2023.

Organizations with such employee groups typically need to cover both cases. In a hospital, for example, nurses need to be present even on public holidays whereas the hospital accountant for example doesn’t need to work on a public holiday. Let’s assume Stefan is an accountant in a hospital. But then there’s also Emma, surgeon in the same hospital. The nature of their jobs determines the work pattern on public holidays: whereas Stefan can enjoy time off on public holidays, Emma needs to work on public holidays (if she’s scheduled to work). To distinguish between the two groups of employees, we’re introducing the ‘Holiday Work Pattern’. The Holiday Work Pattern is again an MDF object, consisting of external code and name. To create a Holiday Work Pattern the following permission is required:

User Permission > Time Management Object Permissions > Holiday Work Pattern

We will now create two Holiday Work Patterns: one that represents Emma’s and one that represents Stefan’s work pattern on Holidays:


Holiday Work Pattern for no work on holidays



Holiday Work Pattern for regular work on holidays


Two holiday work patterns will probably hold good for most cases. However, you can create also more, if required.

The holiday work pattern is then assigned to the job information of an employee. For this, we’ve added a new job info field, also called ‘Holiday Work Pattern’. You first need to add the field via Admin Center > Manage Business Configuration > jobInfo > Take Action > Make correction. Add a new field with the following settings:

  • Identifier: holiday-work-pattern-code

  • Label: “Holiday Work Pattern”

  • Section: Time Management

  • Enabled: Yes


Before we can assign a holiday work pattern in the job information, we also need to add the permission for the job information field. The relevant permission is:

User Permission > Employee Central Effective Dated Entities > Job Information > Holiday Work Pattern

Now we can assign Stefan and Emma a holiday work pattern. So, even though they both have the same work schedule (not realistic, I know, but makes it easier to explain 😉) and the same holiday calendar, their planned working time on holidays will now be different – thanks to the holiday work pattern.


Holiday Work Pattern on Job Info (Stefan)



Holiday Work Pattern on Job Info (Emma)


But how is this possible? Holiday Work Pattern only has external code and name which can be defined completely flexibly. So, how does the system know what impact it has for the planned working time? Sounds familiar? Yes! It’s like for the holiday category – the holiday work pattern needs to be added to the Holiday Planned Working Time Determination. Maybe you had already noticed it in any of the earlier screenshots: The Holiday Planned Working Time Specification also has the field ‘Holiday Work Pattern’:


Holiday Work Pattern field on Holiday Planned Working Time Specification


However, whereas the holiday category field is mandatory, the holiday work pattern is an optional field. We have here now the possibility to not only define the Holiday Planned Working Time per holiday category, but per combination of holiday category & holiday work pattern. So, let’s do this. Before adding the Holiday Planned Working Time Specifications containing the holiday work patterns, some remarks:

  • There needs to be always one specification per holiday category, where the holiday work pattern is left blank. This serves as the default specification which is used to fill the holiday class and which is used whenever the holiday work pattern field on the job info isn’t filled (it’s optional) or when it’s filled but there isn’t any Holiday Planned Working Time Specification defining the Holiday Planned Working Time for this holiday work pattern in combination with the respective holiday category.

  • Because of the previous point, we don’t need to explicitly add specifications for the holiday work pattern “Off on Holidays” because it would be exactly the same as the default entries. And if there is no specification for “Off on Holidays”, anyways the default specification will be used.



Holiday Planned Working Time Specifications with Holiday Work Pattern


Now we’ve defined that for the holiday category “Half” and “Full” the Holiday Planned Working Time will be “Scheduled Working Time” given that the holiday work pattern is “Regular Work on Holidays”. Otherwise, it will be “Reduced Planned Working Time” (for “Half”) or “No Planned Working Time” (for “Full”). Since Stefan has the Holiday Work Pattern “Off on Holidays” for which there is no dedicated specification, the latter will apply. For Emma, since she has the holiday work pattern “Regular Work on Holidays”, all holidays will be regular working days, as if it wasn’t a holiday.

Now, that we’re done with the configuration, we finally add the holiday assignments to the holiday calendar which is assigned to Emma and Stefan. We will add two holidays for 2024:

  • Christmas’ Eve on 24 December 2024 with holiday category “Half”, and

  • Christmas on 25 December 2024 with holiday category “Full”



Holiday Assignments


If we now compare Emma’s and Stefan’s time sheet, we see that the planned working time for the two employees is different:


Time Sheet showing planned working time for Emma


For Emma, both days are regular working days. The work schedule takes precedence over the holiday calendar.

Note: If any of the holidays were a non-working day as per the work schedule, Emma would not be required to work on that holiday. Whether or not she needs to work depends only on the work schedule (or temporary time information) when the Holiday Planned Working Time is set to “Scheduled Working Time”.


Time Sheet showing planned working time for Stefan


For Stefan, we can see that Christmas Eve is a partial day off. Planned working time is from 8am to 12pm as we had defined it in the day model variant. Christmas, instead, is a complete day off for him.

Remember: If you add/delete/change holiday assignments, you should also create a manual Time Management Recalculation Event. For example, if Stefan would have already created an absence for 24 December 2024, the system would have deducted 1 day before assigning the holiday. Now, after assigning the holiday, the absence would need to get recalculated to 0.5 days due to the half holiday.

Finally, it’s also possible to generate different holiday premium payments depending on the holiday work pattern. This means that even if Emma and Stefan are treated differently in terms of premium payment on public holidays, they can be assigned the same time recording profile. To achieve this, we have added the Holiday Work Pattern as filter attribute to the Time Records Filter:


Holiday Work Pattern as new filter attribute in the Time Records Filter


To use the Holiday Work Pattern filter in the Time Records Filter the following 2 prerequisites need to be met:

  • You need an SAP SuccessFactors Time Tracking subscription

  • You need the following permission:
    User Permission > Time Management Object Permissions > Time Records Filter.Holiday Work Pattern (Holiday Work Pattern)


The rest is business as usual: You create the time records filters, use them in your time valuations, and assign the time valuations to the time recording profile. More information can be found HERE.

HERE you can find the What's New Viewer topic related to the support of regular work on public holidays.

That’s it!

Summary



White = existing logic, Orange = Chapter 1 (Transition from Holiday Class to Holiday Planned Working Time), Purple= Chapter 2 (Partial Holidays), Green = Chapter 3 (Regular Work on Holidays), Blue = Result



Conclusion


I hope this blog post gives you a good overview on what is in for public holidays with the 1H 2023 release and how to set things up. If you have any questions or feedback, just drop a comment.

By the way: In Germany we have a long weekend ahead as 1 May is Labor Day, like in many other countries as well. What a nice opportunity to not only cheer the new public holiday features, but also the way work has already changed and will continue to change for good: From 137 years ago when workers in the US fought for an 8-hour working day over HCM to HXM – Happy Holiday everyone!
18 Comments
0 Kudos
Hi Virginie,

 

Such a wonderful and very detailed blog!

 

I tried to apply this feature in our dev instance and seems to be working fine. However, i am having a problem now when using the Get Holidays for Period() business functionality. As you can see, I have created new Holiday Categories (to be used for different Holiday Premiums/Valuations) and in these Holiday Categories, employees are expected to work or to have Scheduled Working Time. Although the problem lies when the business rule is not considering the Holiday Category with Holiday Work Pattern: Schedule Working Time.

I ran a business rule trace and it's not considering the Holiday with Holiday Work Pattern: Schedule Working Time as a HOLIDAY.

Thanks and Regards,

James
Virginie_Klein
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi diazmj30

thanks a lot for your feedback. Happy to hear you successfully configured the new functionality in your instance! 🙂

Regarding the rule function: You're right. The rule function is not considering the Holiday Work Pattern. It always takes the 'Holiday Planned Working Time' value of the Holiday Planned Working Time Specification where the Holiday Work Pattern field is empty (because this is considered the "default"). I understand the need to make this rule function consider the Holiday Work Pattern as well. Could you please create an improvement request for this? https://influence.sap.com/sap/ino/#/

This will help us see if also other customers have this requirement and then prioritize accordingly.

Thank you and kind regards

Virginie
PetraRana
Participant
0 Kudos
Thank you Virginie for a very detailed description of the new functionality! Much appreciated.

I am trying to configure proof of concept for the point 3; i.e. Support of Regular Work on Holidays: A Tribute to our Heroes who Keep Businesses Running 365 Days a Year. I have configured Holiday Work Pattern, assigned it to one employee as of 01.07.2023 in job info, and when I try to configure Holiday Planned Working Time Determination, to set full and half holidays to 'Scheduled Working Time', system issues error message 'You can’t insert a new record for the time period 01/07/2023 to 31/12/9999 because Holiday Category FULL, used in one or more holiday calendars along with its associated values, does not exist for this time period.'. I do not understand what the message says ... surely all existing customers will have category FULL already used in holiday calendars?

Thank you very much in advance,

Petra
Virginie_Klein
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Petra,

thanks for the positive feedback!

Unfortunately, the system is not yet able to automatically update planned working time/availability data that is sent outside of SuccessFactors on change of the Holiday Planned Working Time Determination (and customers don't have a possibility to do the same in a manual way).

If you already have a holiday with holiday class Full in the system, say today, and now change the holiday planned working time configuration effective from 1 July, the planned working time for the employee would change for today, but integrated systems (e.g. Payroll) wouldn't receive any update of the same. This is why we need to be quite restrictive with changes to the Holiday Planned Working Time Determination. I recommend that for the proof of concept you make the change to the holiday planned working time determination with an effective date in the future after which there are not yet any holidays maintained in the system. For productive usage, depending on how many years in advance holiday assignments already exist, you would need to remove those future holiday assignments first, do the change in the Holiday Planned Working Time Determination, and then add the holiday assignments back to the calendars (the update of data that is sent outside SuccessFactors happens automatically on the change of a holiday assignment; recalculation needs to be triggered manually).

I'm sorry for the inconvenience this creates.

Warm regards

Virginie
PetraRana
Participant
0 Kudos
Thank you Virginie for clarification.

We would have around 379 employees out of overall employee population of 95 000 needing this functionality currently. I made sure that holiday calendars currently assigned to those 379 employees (2 calendars) do not have any holidays class FULL assigned, however still get the error message. Only the 379 shift employees would have Holiday Work Pattern field updated to 'work on public holiday' and assigned the same calendar as office employees - this is to reduce number of holiday calendars and simplify maintenance.

Do I understand correctly, that the restriction means that I would have to ensure that, as of effective dated change in 'Holiday Planned Working Time Determination', I need to make sure that NO calendar has holiday with class FULL assigned? If this is the case, the system limitation makes it extremely impractical to implement this great new functionality. We (as well as most other customers) would have next year holidays in system ahead of next year to allow employees to plan their next year holidays (good user experience). We currently have 157 holiday calendars configured with 1000s of holidays. If we need to remove temporarily all holidays to allow the configuration of 'Holiday Planned Working Time Determination', this is huge amount or recalculation with impact on downstream systems (and payroll) for over 90 000 employees to all to allow configuration for 379 employees.

The limitation is most impractical. Is there a plan to remove this? I would expect that system would only check the calendars assigned to the employees who have corresponding holiday class and Holiday Work Pattern value assigned in their Job Info; i.e. to check only the impacted employees and their calendars with the corresponding combination of holiday class and work holiday pattern. Do not understand why this limitation applies also to all the other employees.

Is there a timeline to remove this restriction? As this makes it very impractical to take advantage of the new functionality.

Other option suggested by yourself; i.e. to configure as of date far in the future; would not resolve the issue as we would have to wait to take advantage of the new functionality for a very long time. We would have to move the configuration to production now and wait for a year or so until it comes to an effect. Our support team would never approve such a big gap between technical and business go-live.

Looking forward to hearing from you soon. really would like to use the new functionality as it reduced number of calendars and also makes continuous update simpler, but with limitation, I cannot see our design authority validating this solution. Thank you.

Petra

 
PetraRana
Participant
0 Kudos
Hi Virginie,

can you please confirm on my query posted on 04.07.2023? I am evaluating the new functionality to align with our next project increment but I would need to know the response to may query to present for design validation internally. Thank you very much.

Petra
Virginie_Klein
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Petra,

thanks for the feedback. We plan to remove this restriction with the 2H 2023 release (as usual, no commitment). However, the restriction will remain in place for instances where Workforce Availability is switched on (see Manage Employee Central Settings). This will be covered in another release.

Hope this helps?

Kind regards

Virginie
PetraRana
Participant
0 Kudos
Thank you Virginie for your response. We do not have Workforce Availability switched on yet, so good there for the moment. Would you like me to raised Influence Request for this? Thank you.

Petra
Virginie_Klein
Product and Topic Expert
Product and Topic Expert
0 Kudos
Ok, great!

Influence request is not needed, thank you!

Kind regards

Virginie
Virginie_Klein
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Petra,

with the 2H 2023 it is now possible to add the required entries in the Holiday Planned Working Time Determination object using Holiday Work Pattern: Flexibility to Update the Holiday Planned Working Time Determination Details | SAP Help Portal

Kind regards

Virginie
PetraRana
Participant
Thank you Virginie, already earmarked for analysis :).
PetraRana
Participant
0 Kudos
Hi Virginie,

Hope you are well. I am trying to progress with my proof of concept in our sandbox system. However I am not able to assign the configured Holiday Work Pattern to employee in Job Info as I was before H2 2023. The previously described gap has been closed and I can use holiday category in object 'Holiday Planned Working Time Determination' even though already assigned to employees - thank you for resolving the gap.

However this time around after I add the field in manage business configuration, update permissions and complete configuration for Holiday Work pattern and also Holiday Planned Working Time Determination object, I am not able to update the filed Holiday Work pattern. Can you please advise if I am missing any step(s)? Note I am successfully update other fields for my test employee. Thank you very much for your help.



Enablement Summary



Configuration



Holiday Work Pattern field not accessible

I531572
Advisor
Advisor
0 Kudos

Hi Petra,

I noticed only the first two checkboxes are selected in RBP > Employee Central Effective Dated Entities > Holiday Work Pattern.

The 3rd checkbox is Edit/Insert.

 

PetraRana
Participant
0 Kudos
Thank you, Vivian! I have realized that I was maintaining the wrong role. maintained the 3rd checkbox in another role and the role now can update the field. Thank you very much.
PetraRana
Participant
0 Kudos
virginie_klein , I have now managed to progress my testing (thank you Vivian!) and have  question regarding the expected system behaviour please.

I have created Holiday Work Pattern ‘Work on Public Holidays’ and have one holiday calendar with public holidays defined as full (Holiday Calendar FULL) and one holiday with public holidays defined as none (Holiday Calendar NONE). Note we are currently using ‘holiday calendar NONE’ for shift employees and the ‘holiday calendar FULL’ for office employees. We are looking at using only the office calendar and use Holiday Work pattern for shift employees instead of having multiple holiday calendars.

I have three test employees:

  • Employee 1 assigned Holiday Calendar Full and Holiday Work Pattern ‘Work on Public Holidays’ (this is how we expect to set up shift employees going forwards)

  • Employee 2 assigned Holiday Calendar Full and no Holiday Work Pattern (this is how we expect to set up office employees going forwards, and basically how they are set up currently)

  • Employee 3 assigned Holiday Calendar None and no Holiday Work Pattern (this is how are our shift employees set up currently)


I have tested impact of the holiday calendar and holiday work pattern assignment for all 3 employees.

Employee 2 and 3 work as expected. For Employee 2, system evaluates the public holidays as non-working days in time off as well as timesheet; where in timesheet attendance allowed on a weekday working day cannot be successfully saved on public holiday weekday. For Employee 3, system evaluates the public holidays as working days in time off as well as timesheet; where in timesheet attendance allowed on a weekday working day can be successfully saved on public holiday on a weekday.

However, for Employee 1, only time off works as expected and system evaluated the weekday public holiday as a non-working day (deducting 0 hours from time account for absence counted in working hours), but in case of timesheet, although system correctly displays 0 planned hours for the day, it does not allow to record attendance which is allowed on weekday working days. I would expect system to work in timesheet in the same way as for employee 3; i.e. allow to save attendance allowed on working days as the public holiday is on a weekday and is defined as a working day according to holiday work pattern.

Please note that I have not changed any data entry checks or time valuation or any other configuration except the Holiday Work Pattern and its assignment to employees. I am only using standard holiday categories / class Full and None here.

My expectation as that if we change definition of public holidays using Holiday Work Pattern, the rest of the system functionality should not be impacted, however in case of timesheet this does not seem to be the case. Can you please confirm whether this is expected system behaviour and for data entry checks in timesheet, it is not sufficient to use Holiday Work Pattern but also we need to change timesheet data entry checks / valuations? Would this require Time Tracking Licenses?

Thank you very much

Holiday Planned Working Time Determination configuration below:


configuration detail

I531572
Advisor
Advisor
0 Kudos
Hi Petra,

Please allow me to chip in.

The expectations on Employee 1 (shift Employee) (with HC FULL plus Work on Public Holidays) should be as follows:

  • Time Off:

  • PH is displayed as 0

  • 1 day absence is to be deducted from the time account


  • Timesheet: 

  • Planned Time not zerolized



I believe you are using Time Records Filter (Weekday Filter + Filter Holiday Category = FULL) to stop the recording of attendance. The Employee 1 couldn't record attendance due to this rule as the holiday category = FULL.

In short, time valuation need to be amended accordingly.
PetraRana
Participant
0 Kudos
Thank you vivianng , please chip in as much as you want! 🙂

Do I understand correctly please that:

  1. as no new holiday category has been configured, this will not require time tracking licenses (we are not using time tracking licenses for this currently as configured before time tracking licenses introduced)

  2. although we can merge shift and office holiday calendar into 1, we will need to duplicate time recording profiles for shift and office employees to evaluate the timesheet entries a bit differently?


Thank you very much
Virginie_Klein
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi petrarana

happy new year!

Sorry for my late reply, but I'm back only today from vacation. Thanks vivianng for taking up the questions 🙂

As Vivian correctly mentioned, it depends on your configuration for the validation. Based on how you describe it, I also assume you are using a time records filter based on holiday category. In the time records filter we also offer to filter for holiday work pattern, in addition to holiday category (note that you need the permission for Time Records Filter.Holiday Work Pattern to see that filter option). However, for this Time Tracking subscription is required.

Alternatively, I could imagine that you add another time valuation where you compare the actual planned working time (note: you need to select 'Actual Planned Working Time', not 'Scheduled working time') with a threshold of 0 and then raise the error only on the time type group below.

So, I don't think different time recording profiles are required.

Kind regards

Virginie