SAP Knowledge Base Article - Public

2510395 - Custom Data uploaded through API is not appearing in panels - Onboarding 1.0

Symptom

  • Customer posted the custom fields through API and it is not appeared in Panels.

Environment

SAP SuccessFactors Onboarding 1.0

Resolution

Please follow below steps in order to post custom fields successfully and to appear in panels:

1. If you would like to add custom fields, please update section <UserArea> in import file. 

Example:

        <UserArea>
        <!-- Custom Fields -->
        <xpresshr:CustomField name="name" value=" Test"/>
        <xpresshr:CustomField name="addrs1" value=" Test1"/>
        <xpresshr:CustomField name="addrs2" value="Test2"/>
        <xpresshr:CustomField name="mobile" value="123456789"/>
        <xpresshr:CustomField name="country" value="US"/>
        </UserArea>

2. By default all custom fields will be created with prefix "CustomField.". For example the field "mobile" will be transformed to "CustomField.mobile".

But the key with name like this cannot be used on panel. To avoid it the follwoing steps must be done:

  • Go to Super admin site
  • Import/Export Settings
  • Download the file "HRXML.ImportNewHire"
  • We recommend to use Notepadd++ (or any suitable XML editor) to update content of this file
  • After changes do import of file back

What must be modified? Remove or mark the row as comment the string “<xsl:text>CustomField.</xsl:text>” from xslt file in custom fields section and your file should be like below:

        <!-- Custom fields -->
        <xsl:for-each select="/hrxml:NewHire/hrxml:UserArea/xpresshr:CustomField">
        <xsl:call-template name="item">
        <xsl:with-param name="key">
        <!-- <xsl:text>CustomField.</xsl:text> -->
        <xsl:value-of select="./@name" />
        </xsl:with-param>
        <xsl:with-param name="value">
        <xsl:value-of select="./@value" />
        </xsl:with-param>
        </xsl:call-template>
        </xsl:for-each>

 OR

        <!-- Custom fields -->
        <xsl:for-each select="/hrxml:NewHire/hrxml:UserArea/xpresshr:CustomField">
        <xsl:call-template name="item">
        <xsl:with-param name="key">
        <xsl:value-of select="./@name" />
        </xsl:with-param>
        <xsl:with-param name="value">
        <xsl:value-of select="./@value" />
        </xsl:with-param>
        </xsl:call-template>
        </xsl:for-each>

Not acceptable way.

        <!-- Custom fields -->
        <xsl:for-each select="/hrxml:NewHire/hrxml:UserArea/xpresshr:CustomField">
        <xsl:call-template name="item">
        <xsl:with-param name="key">
        <xsl:text></xsl:text>
        <xsl:value-of select="./@name" />
        </xsl:with-param>
        <xsl:with-param name="value">
        <xsl:value-of select="./@value" />
        </xsl:with-param>
        </xsl:call-template>
        </xsl:for-each>

During import of the file it will not recognized as error, because xml format is correct. But application will do "pretty" xml format and it will be transformed to

        <!-- Custom fields -->
        <xsl:for-each select="/hrxml:NewHire/hrxml:UserArea/xpresshr:CustomField">
        <xsl:call-template name="item">
        <xsl:with-param name="key">
        <xsl:text>
        </xsl:text>
        <xsl:value-of select="./@name" />
        </xsl:with-param>
        <xsl:with-param name="value">
        <xsl:value-of select="./@value" />
        </xsl:with-param>
        </xsl:call-template>
        </xsl:for-each>

As result custom fields will be created with incorrect name, extra special symbol before name.

Notes:

  • With each version that you import you will see the Modification history getting built up.You can revert to an earlier version of the XSLT by clicking on Restore for a given version.
  • Unfortunately ONB does not collect information who exactly has done with the changes. 
  • The HRXML.ImportNewHire is always uses during import, include import from RCM
  • When you do changes in Super admin site >> Processes >> Process Filter you do changes fo the file "HRXML.ImportNewHire" for section which is related with RCM and/or EC integration.
  • Any changes in UI filter page, the file will automatically updated with "pretty" format.

Keywords

  • Custom Field
  • API
  • Onboarding
  • Onboarding 1.0
  • Posting custom fields 
, KBA , LOD-SF-OBD-API , Webservices & API's , Problem

Product

SAP SuccessFactors HCM Core 1705