Human Capital Management Blogs by SAP
Get insider info on HCM solutions 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: 
Dharmin_Thakkar
Product and Topic Expert
Product and Topic Expert
Hello All,

Greetings of the day!

Most of the SuccessFactors customers are looking for this requirement - sending an email to employees on their birthday or anniversary. Personally, I know a few customers who use 3rd party paid tool to send birthdays and anniversaries alert. After a lot of analysis, I have figured out a way to send birthday or anniversary alerts to the employees of the company.

Prerequisite -

  1. Integration Center.

  2. Alerts and Notification.


How this requirement can be achieved?

  1. Create an MDF object - Example 'Birthday'. Add two date fields in the object - 'field-1' (which will be DOB from biographical information) and 'field-2'

  2. Convert 'field-1' date to current year (keeping date and month same) using business rule. For example - 'field-1' has a date as of 01/01/1989 than 'field-2' should be 01/01/2019 (current year - 2019).

  3. Configure an alert rule on 'field-2' (If 'field-2' equals today, trigger an alert)

  4. In the Integration Center, configure an integration schedule which will pick Date of Birth from Biographical information and input in 'field-1' under the MDF object created in Step-1.

  5. Thus, through integration center, 'field-1' will be defaulted (from biographical info > date of birth field). The rule will convert 'field-1' date to current year keeping date and month same as 'field-1' which sets in 'field-2'.

  6. Schedule EC alerts and Notification job from provisioning. When the job will run, the alert rule will get a trigger and if 'field-2 is today, and an alert will be sent to the employees.


 

Create an MDF object named 'cust_birthday'. Configure two date fields. I have created cust_dobBiog and cust_customDOB. The 'external code' should be 'user' field. API visibility should be visible.



 

Configure a rule to convert 'cust_dobBiog' field to current year keeping date and month same. Example - 'cust_dobBiog' is 01/01/1990 then 'cust_customDOB' should be 01/01/2019 (taking current year - 2019). Below rule should be configured as 'Save Rule' under Configure Object Definition > Object 'Birthday'



 

Configure an Alert rule in the MDF object 'Birthday'. The rule should be under 'Post Save Rules'. The rule will consist of a Workflow, Alert Message. The workflow will only have Cc role as Self. The Alert Due Date will be today.

The workflow should be configured under 'Manage Organization, Pay and Job structure.

The alert message should be configured under Manage Data > Alert Message.



 

The workflow should be configured as below.

 



 

Alert Message should be configured as below. Alert Description can be changed as per the requirement.



 

Under Integration Center, schedule a daily job to fetch Date of Birth from Biographical information to MDF object Birthday > cust_customDOB. Prefer to run job during midnight (basically during low server load).

Give Integration name and Description



Configure Fields. Take Biographical Information as a base object. Use Field mapping tool to map :

  1. The date of birth from Biographical information to MDF object cust_customDOB field.

  2. External code to user id of the user.


Make sure the operation used is 'Single Upsert' and Purge Type is 'Full Purge'

The configuration looks like below



Create a daily schedule with Start time (recommendation is to use when the load is minimal).



Set the schedule and review.



 

Example Below :

Today's date is 03/07/2019. User Milan Bakker has a birthday - 03/07/1982 (Shown below). The business email id should be maintained.



Run the integration created in the above steps.



After the job has been run successfully, objects will be created under Manage data > Birthday. For the user Milan Bakker, an object will be created, Date Of Birth from Biog will be 07/03/1982 and custDOB will be 07/03/2019 (per the configured rule). The rule will compare custDOB with today's date.



If the rule condition matches, an alert will get trigger after EC alerts and notification job has been run.



 

We can have the same configuration for the anniversary date :

  1. Create a date field under Biographical Information (say Anniversary date). You can do this from Manage Business Configuration.

  2. Create an MDF object - Example 'Anniversary'. Add two date fields in the object - 'field-1' (which will be Anniversary date from biographical information) and 'field-2'

  3. Convert 'field-1' date to current year (keeping date and month same) using business rule. For example - 'field-1' has a date as of 01/01/1989 than 'field-2' should be 01/01/2019 (current year - 2019).

  4. Configure an alert rule on 'field-2' (If 'field-2' equals today, trigger an alert)

  5. In the Integration Center, configure an integration schedule which will pick Anniversary date from Biographical information and input in 'field-1' under the MDF object created in Step-1.

  6. Thus, through integration center, 'field-1' will be defaulted (from biographical info > Anniversary date field). The rule will convert 'field-1' date to current year keeping date and month same as 'field-1' which sets in 'field-2'.

  7. Schedule EC alerts and Notification job from provisioning. When the job will run, the alert rule will get a trigger and if 'field-2 is today, and an alert will be sent to the employees.


The process is the same as birthday alert except to create a custom field in Biographical Information and default the MDF field to the anniversary date field value.

 

Kindly note - For a large number of employees, integration center will full purge the data and create new data on a daily basis. Thus might take time for the job to run hence it is recommended to schedule the job when the server load is minimal.

Thank you for reading the blog. I request your feedback on the above configuration. Kindly let me know in case of any limitation which I can try to overcome. I have tested in my demo instance and it works as expected.

 

Regards,

Dharmin Thakkar

 

 

 
42 Comments