Symptom
You associated an MDF Object with a workflow via Business Rule, however the workflow is not triggering when creating or updating data through the following methods:
-
OData API calls
-
Integration Center jobs
Common symptoms:
-
No workflow approval request is generated.
-
No logs appear in the Business Rule Execution Log.
-
MDF workflows and business rules are not executed as expected.
Environment
SAP SuccessFactors HCM Suite
Reproducing the Issue
OData API calls
-
Make an API request to create or update data;
-
Workflow is not triggered; no logs in Business Rule Execution Log;
Integration Center jobs
-
Integration Center job create or update data;
- Workflow is not triggered; no logs in Business Rule Execution Log;
Cause
For all methods
-
Workflows are not triggered if no approver is defined in the workflow. This behavior applies to all methods.
- Workflows are not triggered if the object associated with it is not reached. Sometimes a similar object is created or updated than not the one associated one.
OData API calls
-
In case the API user has the Admin access to MDF OData API permission, workflow triggering is skipped by design.
- In case the API user does not have the Admin access to MDF OData API permission and also the API request does not include the parameter workflowConfirmed=true, the workflow will not be triggered by design, and the following error will be returned: "COE_GENERAL_BAD_REQUEST – In order to trigger workflow, please set the 'workflowConfirmed' flag to true."
Integration Center jobs
-
Integration Center does not support custom parameters like workflowConfirmed=true. However, there is a workaround mentioned on the Resolution step.
Resolution
For all methods
-
Ensure an approver is defined in the associated workflow. If no approval is needed, remove the workflow from the configuration, or redesign the process so that it no longer depends on a workflow step.
- Make sure the creating or updating the correct object associated with the workflow.
OData API calls
-
Check if the API user has Admin access to MDF OData API permission (under View User Permissions > Metadata Framework) and if permission is granted and is according your business requirements, remove it to allow workflow triggering.
-
Include workflowConfirmed=true in your OData API request (e.g. https://<api-endpoint>/odata/v2/upsert?workflowConfirmed=true). This simulates the UI confirmation step and is mandatory for triggering workflows via API (see workflowConfirmed chapter).
Integration Center jobs
-
Workflows cannot be triggered via Integration Center while the scenario is SuccessFactors to SuccessFactors due to technical limitation.
- However you can configure an Integration Center job to send data to a REST endpoint. Then configure this endpoint to call SuccessFactors API endpoint with workflowConfirmed=true parameter (e.g. https://<api-endpoint>/odata/v2/upsert?workflowConfirmed=true).
- Check if the API user has Admin access to MDF OData API permission (under View User Permissions > Metadata Framework) and if permission is granted and is according your business requirements, remove it to allow workflow triggering.
Keywords
MDF, Metadata, Framework, OData, API, Business Rules, Workflow, API, call, integration, center, not, trigger, triggering, triggered, skip, skipped, approval, approve, workflowConfirmed, please set the ‘workflowConfirmed’ flag to true, with the index 0 , KBA , LOD-SF-INT-MDF , Metadata Framework API (MDF) , LOD-SF-MDF-API , OData APIs & Integrations , LOD-SF-INT-INC-ODATA , ODATA API In Integration Center , Problem
SAP Knowledge Base Article - Public