Symptom
This KBA explains and lists Common Known Issues & Limitations about custom MDF Business Rule configuration scenario. It also includes:
- [Error: could not access: jobInfo; since missing instance of jobInfo]
- How to populate data from EC portlets to an MDF object?
- How to retrieve job information data from EC into MDF object?
- How to fetch personal information data from EC into MDF object?
- How to populate employment information data from EC into MDF object?
Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental.
Environment
- SAP SuccessFactors HCM Suite
- Metadata framework (MDF)
Cause
When creating a business rule for a custom MDF object, it is not recommended to use more than one parameter. Configuring the parameters referencing to the standard objects (Job Information, Employment Information, Personal Information and Context parameter) or "Context" is not supported.
- For full list of supported rule parameters, refer to: Functions A-Z | SAP Help Portal
- Possible use cases for MDF rule scenarios: MDF Rule Scenario Use Cases | SAP Help Portal
Below is the sample screenshot of an incorrect rule to retrieve data from EC related portlets.
Resolution
The correct way to retrieve data from EC portlets into an MDF object is using a field that is defined as User data type that should be available on the referenced base object. (means custom MDF object if you're attaching the rule on it)
The screenshot below shows how this can be done correctly:
Likewise, to retrieve data from the Employment Information or Personal Information, use the User type field from your object and navigate to Employment Information or Personal Information.
Notes:
- MDF scenario-based business rules are recommended because rule parameters are generated automatically by the rule scenario and cannot be manually altered, reducing the risk of configuration errors and ensuring clearer visibility of rule assignments.
- Basic scenario business rules remain supported, and their execution is not expected to cause issues. However, creation of new basic rules is deprecated, and existing basic rules should be migrated to MDF scenario-based rules for long‑term stability. Additional guidance is available in the SAP Community blog post UPDATE: The One & Only: Stable Transport and Import of Business Rules.
Common Known Issues & Limitations about custom MDF Business Rule configuration scenario:
-
Avoid using OnSave business rules to update system fields and business keys such as External Code or Effective Start Date. Adding such rules configurations can lead to errors and data corruption. Instead, add validate rules to check if the value of such fields meets your business requirement. For more details, refer to KBA 3452058
-
OnInit Business rule only work for CREATE Operation scenario, means Initialize rules are only executed for new MDF record. For more details please refer to Provide Default Values | SAP Help Portal
-
OnChange business rule does not support rule context to determine contexts such as "create" "insert", etc. It will set it as false and won't trigger properly.
-
Business rules can be created to fetch/synchronize data from standard EC objects and store that on custom MDF objects fields. But the vice versa - (Data flow from custom MDF objects to standard EC objects) is not supported.
-
Custom MDF Objects can't fetch/synchronize with another Custom MDF Objects. This is not supported.
-
Data flow from EP portlets or Background elements to MDF portlets is not supported.
-
For MDF object based rule, triggering point should be that MDF object only. (event can be Initialize(Only the fields from EC objects won't be fetched), onChange or Save etc). If there's a rule attached on ABC object, it cannot be used to update values or properties of some other object XYZ.
-
As of now, the rule engine does not traverse to successive child record in one to many association after executing on first child record. Hence to calculate the sum of a field value from various or all child records is not a supported operation.
-
To get the values from 2nd or 3rd composite child record, use a collection filter. For more information about it, refer to SAP Help Portal - Collection Filters.
-
There are limitations to fetch the Information from "Dependent" object to custom MDF object. When the business rule is executed, the error "Rule "XXXXX" execution failed with error "Rule execution context is null, either because Dependents is not a valid object or Dependents has no corresponding instance RE_Scen="_basic" Caller: com.successfactors.genericobject.app.processor.RulesExecutor.executeRule(RulesExecutor.java:47)" might appear due to the limitation to fetch data from the "dependent" object.
-
Full concepts and explanations of Rule Parameters can be found in Functions A-Z | SAP Help Portal
See Also
- KBA 2676674 - [Custom MDF] The business rules' operation when the data is created via Import in MDF object.
- KBA 2560623 - Step by step configuration of MDF Alerts & Notifications [Custom MDF]
- KBA 2982477 - How To Propagate HRIS Element Field to Custom MDF Object
- KBA 2080138 - How to Propagate fields using Business Rules
- KBA 2544336 - Custom MDF workflow and its behaviors depending on Pending Data = Yes/ No.
- KBA 2437420 - Which Portlets Support Cross Portlet Business Rules
- SAP Help Portal - Collection Filters
Keywords
Scenario based rules, MDF business rules, parameters, MDF rule, [Error: could not access: jobInfo; since missing instance of jobInfo], custom MDF, populate, fetch data, retrieve, propagate, cross portlet, dependent , KBA , LOD-SF-MDF-RUL , Custom Oject based Business Rules , LOD-SF-EC-ADM , Admin Tools (EC Core only) , How To
SAP Knowledge Base Article - Public