SAP Knowledge Base Article - Public

2173085 - Business Rules do not trigger when the data is inserted via the API call

Symptom

A business rule has been created by the customer in SFSF which has been assigned to Position Object to auto populate few fields in EC as follows:

PositionCode_BusinessRule.jpg

So as per the rule, "Job Title" & "Position Title" fields are supposed to be populated automatically when Job Code is entered.

The issue here is that when the customer is making an API call to insert a position in SF, though it is successfully inserting the data, the business rule configured is not getting triggered and therefore the two fields (Job Title and Position Title) are inserted as blank in the system.

But when creating position via SFSF UI, these Business Rules trigger and fields get auto-populated as defined in the rule.

Impact: Position information is very important to be filled correctly to derive various other objects.

Environment

Successfactors system

Cause

Business Rule is not configured properly.

Resolution

To fix the issue for the rule shown in the symptom section, below configuraion change needs to be done:

    • Add the rule as save rule on Position object Definition, because only the 'onSave' rules trigger when updating the data via the API:

 

For rules to trigger on other MDF Objects, the rule must be created with the base object set as the MDF object on which you wish the rule to trigger

    • e.g. For a rule to trigger on MDF obejct Legal Entity, you must select "Legal Entity" as the base object when creating the rule
    • You must then assign this as a OnSave rule on the "Legal Entity" Object Definition.

 

In Employee Central the API upsert can only tigger rules on the Job Information Object.

To have an API trigger a rule on the Job Informaton Element you must carry out the following configuration.

    • create a rule with base object "Job Info" (API imports will not trigger if the rule is created with base object, "Job Information Model")
    • You must ensure that the "Execute Business Rules on Job Information Import" switch is enabled in Admin Center > Company System & Logo Settings for the API import to trigger the rule
    • add your rule to the Job Information element via Manage Business Configuration or Via Succession Data Model import

If editing the rule via Data Model import the rule should be added to the Succession Data Model as follows

 <trigger-rule event="onSave" rule="RuleId"/>

There are multiple events like: onView, onInit, onChange but "onSave" is the one that gets triggered for the data insert into SFSF via API call.

Please Note that Model Base Object are currently not supported to trigger via an API insert.

 

Keywords

Business Rule, API Call, OnSave, Not triggered , KBA , LOD-SF-INT-ODATA , OData API Framework , LOD-SF-EC-INT , Manage Pending Hires (Integration RCM/ ONB/ OBX + UI) , LOD-SF-EC-RUL , Business Rules & Event Derivation , Problem

Product

SAP SuccessFactors HXM Core all versions