Extend SuccessFactors with SAP Cloud Platform Workflow (Part 1/2)
We are well aware that SAP Cloud Platform extension package makes it quick and easy for companies to adapt and integrate SuccessFactors cloud applications to their existing business process. This establishes SAP Cloud Platform as the go-to PaaS offering for any extensions use case. In this blog, I will explain how SAP Cloud Platform Workflow Service can help you to easily extend the core functionality of SuccessFactors which require workflow capabilities.
There are multiple use cases where one want to extend the core functionality of SuccessFactors with workflow capabilities. In this blog, I would take an example of a new hire Onboarding scenario and explain how one can extend the SuccessFactors Onboarding module with a workflow in SAP Cloud Platform to achieve the target business process.
ITeLo is an (imaginary) IT company with a strength of ~5200 employees across 8 different countries and they use the Onboarding module of SuccessFactors as part of their talent management strategy. With the Onboarding module, the hiring manager has less paperwork to do and now can easily connect to the co-workers and even schedule training for new hire even before his/her employment start date.
ITeLo being a multi-national company has a few new requirements from business for the Onboarding process. They want to have
- Different Onboarding process for different countries.
- Automatically determine equipment based on certain business conditions (like the country & role of the new hire) & availability of the product.
- Initiate travel booking in Concur if the new hire requires relocation or want to undergo training in a different location than he/she is located.
In order to achieve ITeLo’s goal, whenever an employee is on-boarded in SuccessFactors, workflow should be triggered to perform additional tasks based on certain business conditions. This can be achieved by the combination of SuccessFactors Intelligent Services and the SuccessFactors Integration Center.
Once the ‘Intelligent Services’ is enabled & configured, a business event is triggered whenever a new employee is hired. We can create an integration model in the ‘Integration Center’ to listen for this event, retrieve additional information required (more details about the new hire like departments, location, etc.) and then call an endpoint to initiate an integration flow in SAP Cloud Integration. In this integration flow, based on the business conditions the respective workflows can be initiated.
Note that the Intelligent Services can also be configured to call an endpoint to initiate an integration flow in SAP Cloud Platform Integration, whenever a new hire event is triggered. But in this case, only the employee id is available for processing and retrieving additional information about that employee (like location, role, department, manager, etc.) would be an extra service task in the workflow.
SAP Cloud Platform Business Rules
In order to automatically determine the equipment for the new hire based on certain business conditions, a decision table is created in SAP Cloud Platform Business Rules. The list of equipment is determined based on the country, company (ID) & job title of the new hire and whether he/she is a full-time employee. The decision table is designed to return all the equipment matching the aforementioned conditions. For more information on SAP Cloud Platform, Business Rules refer to this link.
SAP Cloud Platform Workflow
Onboarding Process in the USA
In the Onboarding extension process for USA (Onboarding_USA), the SAP Cloud Platform Business Rule is triggered to determine the right set of equipment required for the new hire. At the same time, the buddy who is assigned to the new hire in SuccessFactors is determined from SuccessFactors application. The buddy of the new hire (which is assigned as part of the SuccessFactors onboarding process) will get a workflow task to confirm the equipment proposed by the business rule. Next, the hiring manager gets a workflow task to approve the proposed equipment. Upon the manager’s approval, a shopping cart is automatically created and posted in the S/4HANA system. Finally, when all the equipment is received from the vendor, the buddy confirms that the workplace is ready for the new hire.
Onboarding Process in India
ITeLo has started its operation in India very recently with a handful of employees. So, when a new hire is recruited in India buddies are not assigned to them but the entire team helps the new hire to settle down. Hence, the Onboarding process extension for India (Onboarding_IN) is a little different than it is in the USA. Once the business rule determines the equipment, the hiring manager gets a workflow task to confirm the proposed equipment. Once the manager confirms the same, a shopping cart is created in the S/4HANA system as it was in the USA. Apart from this, if the new hire requires travel (relocation or training as maintained in SuccessFactors) then a trip is automatically created in the Concur system for the proposed dates & location.
Similarly, the Onboarding process extension is different for different countries and all these different workflow models are created in SAP Cloud Platform Workflow. For more information on creating a workflow in SAP, Cloud Platform refers to the help document.
SAP Cloud Integration
The integration flow created in SAP Cloud Integration performs the following two tasks:
- The API to create an SAP CP workflow instance is CSRF protected. Hence, to create a workflow instance one needs to first get a CSRF token through an API and then pass that token to create an instance. Since there are multiple end-points involved here, SAP Cloud Integration is used to orchestrate the API calls.
- Since ITeLo requires to trigger different workflows for different countries, the SAP Cloud Integration is used to trigger the right workflow definition based on the hiring country.
An integration flow is created to read the country of hire from the input payload and call the API to create a workflow instance for the respective countries. For more information on how to create an integration flow in SAP Cloud Platform Integration that creates an SAP Cloud Platform Workflow instance refer to this blog.
So far, a cloud platform business rule has been created to determine equipment and a cloud platform workflow has been created to orchestrate the Onboarding extension process for different countries. An integration flow has also been modeled to trigger the extension workflow based on the country of new hire.
In the next blog, I will explain the remaining part of the jigsaw puzzle – how to trigger the cloud platform integration flow from SuccessFactors whenever a new hire is recruited.