How to pull data from standard EC objects (Personal Info, Job Info etc) to a custom MDF object on Initialize event using rule.
Initialize rule not working/ not able to set the values.
Initialize rule not fetching values into custom MDF object
SuccessFactors Cloud HCM: MDF
SuccessFactors Cloud HCM: MDF Business Rule
Reproducing the Issue
1) Create a business rule to set the values into custom MDF portlet from standard EC object. See the KBA 2562069 to learn how to do that .
2) Configure it on the Initialize event. (Configure Object Definition - > Rules -> Initialize Rules)
3) Attempt to create the data for the portlet. -> The values are not being fetched/ set as per rule, fields are rather blank.
The rule executes, but does not serve this requirement in this case. The object from where the values are being fetched are pre delivered EC objects and any data that is needed from them has to be extracted on the basis of externalCode (User) as per KBA mentioned above in 3rd Step.
The calculation of externalCode does not happen on the Initialize event (first load up) and hence rule is not able to establish a link with EC objects.
Otherwise if you try to raise a message or set a value manually into a field (Set field = Value = ABC), it would reflect as expected. Only the fields from EC objects won't be fetched.
To achieve this requirement, we can put the rule on externalCode field as an onChange rule. Even though that field is not explicitly entered while creating the data, but that field is being calculated in the background. Say if you're accesssing ABC's profile, then his UserID will be set in the externalCode field.
Due to which the onChange rule on the field level will execute and it will initialize the values in the required fields.
Note: We do not input the values manually only in the PP3 page, but if we are creating data using Manage Data page, we do input the externalCode field
- MDF: Metadata Framework
- Custom MDF portlets
- Business rules
- Initialize Rules
- onLoad event