Fields are missing in the SFAPI data dictionary for ADHOC reports causing error on integrations such as Boomi and CPI.
You are getting bellow errors in Boomi:
- [EXCEPTION] Exception=[SFAPI Domain Error!] Error Code=[INVALID_FIELD_NAME] Error Message=[Field emp_personal_info_t_GENDER is not defined]
- [EXCEPTION] Exception=[SFAPI Domain Error!] Error Code=[INVALID_FIELD_NAME] Error Message=[Field ectint_jobRelationsInfo_663442_test_manager_RELATIONS_USER_ID is not defined]
Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental.
NOTE: The ADHOC API is deprecated and we do not advise further implementations using the same, for complete information, refer to KBA: 2682094 - Deprecation of Partner API, SFAPI Adhoc and SFAPI for Simple Entities
SAP SuccessFactors SFAPI data dictionary.
Reproducing the Issue
- Go to SFAPI data dictionary and pick a field, in this example we used a field from ectint_ADHOC which get data from the EC domain and the field "ectint_jobRelationsInfo_663442_test_manager_RELATIONS_USER_ID"
- This field was generated because we have created a "test manager" as a picklist option for the picklist "jobRelType", therefore, we can see that the field also appears on the SFAPI data dictionary as above, below you can see this option created in the picklist center:
Please also note that when we create a new option, a optionID is auto generated by the system, and this number is also on the field name further generated on SFAPI data dictionary.
- To reproduce the issue, we will delete this option and check again the SFAPI data dictionary:
Note that is not possible to see any field for test manager anymore, neither "ectint_jobRelationsInfo_663442_test_manager_RELATIONS_USER_ID"
Changes in the manage business configuration and picklists can affect the fields that are available on the ADHOC reports on SFAPI data dictionary, either for a picklist option that was deleted or a field that has the option masked set to "yes".
- An example of field that is currently set as masked: yes in our test system is the field "emp_personal_info_t_GENDER", this field cannot be seen in the SFAPI data Dictionary:
- To enable this field back, we have to go to manage business configuration find the field inside the entity, in this case by the name we can see that is comming from personal info and we can find in manage business configuration since it's from EC domain:
- Set the field masked to NO:
- Click DONE and SAVE, wait a couple of minutes and check again SFAPI data dictionary:
- If you are using Boomi, the recommended solution to avoid this kind of issue is to re-import all the properties to the ADHOC that you are using, this way, you will avoid using fields that are not available. Also, please be aware that changing the manage business configuration may lead to changes on fields that will require this import again, refer to: 2694294 - How to get all the properties from an Entity through Boomi
If you want to seek for root cause on what changed the information on the manage business configuration, you can refer to this KBA: 2651585 - Manage Business Configuration: How to Generate Business Configuration Audit logs via Manage Scheduled Jobs and fill a ticket with the concearned team.
Fields are missing in the SFAPI data dictionary for ADHOC reports causing error on integrations such as Boomi and CPI, [EXCEPTION] Exception=[SFAPI Domain Error!] Error Code=[INVALID_FIELD_NAME] Error Message=[Field emp_personal_info_t_GENDER is not defined] [EXCEPTION] Exception=[SFAPI Domain Error!] Error Code=[INVALID_FIELD_NAME] Error Message=[Field ectint_jobRelationsInfo_663442_test_manager_RELATIONS_USER_ID is not defined], field is missing in sfapi data dictionary for ADHOCS. , KBA , LOD-SF-INT-API , API & Adhoc API Framework , LOD-SF-INT , Integrations , Problem