Technical Articles
Auto Delegation and selection of delegates
We have responded to the previous year 2020 in a spectacular fashion, rapidly adapting to substantial changes ranging from client workshops moving to virtual mode, office coffee breakouts turning into digital coffee breaks and much more…
And most important, we have aced the art of working in the new normal without impacting our deliverables!
This is my first blog post for the year 2021 on the topic “Auto Delegation – Selection of delegate”
Disclaimer: All the images are captured from the sales demo instance!
Delegating workflows is a very common requirement for most of the customers across regions, in specific the auto delegations when compared to manual delegation.
Pain area:
As we all know, as part of 1H 2020 release of SAP SuccessFactors, we have new fields/features added to “Auto delegation” such as start date, end date etc.
However, there are cases where customers would like to choose only the selected users as delegates, but not just anyone who is active in the organization, which is the case as of now.
In SAP SuccessFactors Employee Central workflows, we currently support turning on the delegation and select the start date and end date, but selecting the preferred delegates, say from the same location or department as of delegators is something which is not yet supported. I am demonstrating a proof-of-concept service where this requirement can be achieved.
We would be needing the following tools in SAP SuccessFactors.
- Custom MDF (Meta data framework)
- Delegator (for whom you need delegation)
- Start Date (Date when you want to start delegation)
- End Date (Date when you want to end the delegation)
- Delegatee (to whom you want to delegate the workflow)
- Delegation Status (whether it is on or off)
- Integration Center
- Auto Delegation – This picks up the custom MDF records and map the fields to standard Delegation related MDF objects “Auto Delegate Config” & “Auto Delegate Details” along with appropriate filter
The Integration center job must be set real time and to be run daily.
CONFIGURATION STEPS
Custom MDF:
The Custom MDF has to be created and used to store the user preferences like when to start Auto delegation, when to stop the same, who is the delegator and the delegate and finally what is the delegation status.
Custom MDF – Object definition
Grant the permissions for this custom MDF to ESS (Employee Self Service) role, so that all employees are able to select the right delegate within the same location and department.
Role Based Permission Settings
Create a message definition like below in Manage Data, to display error message on UI (User Interface) when delegator selecting the wrong delegate who is outside of his/her location and department
Message Definition
Write a business rule like below, to display the above error message and assign it “onChange” of delegatee field of the custom MDF created in previous step
Business Rule
Create an UI for the custom MDF, like below –
Configure UI
Assign the above UI to “Configure people profile”, so that delegators can create a record and select the appropriate delegate in their profile page.
Configure People Profile
Now, the delegators can see the portlet on their profile pages as below and select the right delegate along with start and end dates and delegation status.
People Profile – Portlet
Integration Center:
Create new Integration type -> Select Scheduled, source & target both as ‘SAP SuccessFactors’
Integration Center – Scheduling a Job
Select Starting entity as custom MDF and target MDFs as Auto Delegate Config and Auto Delegate Details.
Integration Center – Starting Entity and Destination Fields
Set purge type as “Full” and operation as “Upsert Multiple”
Go to field mapping view and map the fields from custom MDF to Auto Delegate config and Auto delegate Details MDF objects –
Integration Center – Mappings
Fields mapped:
- “User” from custom MDF to “delegator” of Auto Delegate Config MDF
- “Delegation Status” from custom MDF to delegationStatus of Auto Delegate Config MDF
- “End Date and Time” from custom MDF to endTime of Auto Delegate Config MDF
- “Start Date and Time” from custom MDF to startTime of Auto Delegate Config MDF
- Default “alwaysOn” to true
- Default “status” from Auto Delegate Details MDF to ON
- “Delegatee (cust_delegatee)” from custom MDF to “delegatee” of Auto Delegate Details MDF
Go to filer view and create a filter as shown below
Integration Center – Advanced Filter
This means, the integration must pick only those records whose end date is after today.
LET’s TEST
I have run a report to identify a set of test users who belong to same department and two different locations
Snapshot of Adhoc Report
From the above table, Charles Braun can only select his delegate as only Christine or Lauren (since they belong to same location and department), but not Aanya Singh as she belongs to a different location though from same department.
Proxy as Charles Braun and try to select Aanya Singh as delegate. As soon as the delegate is selected as Aanya Singh, we get the below error message –
Selection of wrong delegate and the corresponding error message
Now, select delegate as either Christine or Lauren and system allows to do so, as they both belong to same location and department. Select the start date, end date and Delegation status and “Save” the record.
Selection of right delegate with no error message
In Integration Center, once you run a test/preview, the record from people profile (Custom MDF) gets mapped to standard MDF objects related to Auto Delegation.
Integration Center – Preview
Now, click on “Auto Delegate” which appears under Quick Links by proxy as a delegator
Auto Delegate option under Quick Links
Here, with no manual intervention, all the details like Delegation status, start time, end time and finally the Delegatee are auto selected based on what has been filled by the delegator in his profile page.
Auto Delegate Screen
Once the End time is passed, as per the filter logic, the record won’t be synced to Integration center and the delegation status becomes “Off” automatically.
RECAP
Even though system allows delegators to select anyone from the organization as his/her delegate, with this workaround, we can allow delegators to choose only the selected users as delegates.
Thanks for taking your time in reading this blog and leave your comments, if any for further clarifications. Thank you!
Super Sudheer
Thanks John!
Happy New year Sudheer Mathukumalli!
This Blog was what I need. In my case, The manager only delegates to another manager's job. I believe that business role can be adapt.
Happy new year to you too, Antonio!
As per the customer requirement, the business rule can be adapted but needs to be thoroughly tested (of course!)
This is a Great Solution Sudheer. We had several clients who wanted this kind of customization for Delegatee Selection.
This really Helps! Thank you for Sharing.
Thanks a lot!
Very well Articulated Sudheer!
The approach can be extended to different Customer Scenarios.
Thank you Govind for appreciating the content! Yes, the idea can be definitely extended to different customers with minor tweaks to the config...
Excellent Sudheer !! Innovative solution !!
Thank you Danya for liking my work!!
Hi Sudheer,
Very good solution!
I would just few points:
Definitively, from my point of view, this is the best solution as the standard option is a little bit hidden and sometimes difficult to find!
Hi Helder,
Very true and totally agree with all your points. Consultants to consider these when they have to implement the same in their customer instances with little tweaks as per the exact customer requirements.
Thanks a lot for your valuable feedback and suggestions!!
Wonderful Sudheer. This is truly customizable as per customer needs. Helpful indeed!
Thank you Neelesh, for reading this and also sharing your feedback!
This is very insightful Sudheer. Thanks for sharing!
Thank you Berlinda for liking it!
Hi Sudheer,
It's a great work. Thanks Sudheer !
I hope we can utilize standard autodelegate config object to manage UI rather creating a new custom object...and can attach validations biz rule too.
Regards,
Satya.
Hi Satya,
Thank you for reading and liking my work. Indeed, this can also be achieved using the standard MDF objects and assigning validation biz rules to standard objects/UI as well.
Thanks, Sudheer
Thanks for sharing !! Good solution Sudheer.
Hi,
If the record is created post the job runs the delegation is not happeing, is there any way to run the job automatically whenevr the record is created ?
Hi Mohiddin, The only option i can think of is to have more frequent jobs to cater to such needs. thanks!
Thanks.
Great work Sudheer!!
Thanks for the detailed step wise process to customized solution
Great article Sudheer Mathukumalli!
Question, any of the Quick Actions customizable? I would like to add an extra field to Delegate Workflows quick card. I'm able to change the object definition of Auto Delegate Config, but that extra field is not appearing on the QA card on the homepage regardless of the change of Object Definition.
Can you please help/share your thoughts on this?