Announcing the Saviynt Knowledge Exchange unifying the Saviynt forums, documentation, training,
and more in a single search tool across platforms. Read the announcement here.

SuccessFactors Fax,Phone,Telephone import not working

SinghAtul
Regular Contributor
Regular Contributor

 

Hi,

We have a requirement to import the fax, Phone, and Telephone data for SuccessFactors Users.

We have three phoneTypes: Fax,Mobile,Telephone. Each user may have either only one, two, or all three phoneTypes.

There is a property 'phoneNav' which has the list of phoneTypes.

"phoneNav": {
"results": [
{
"areaCode": "41",
"phoneNumber": "<phone here>",
"countryCode": "+55",
"lastModifiedOn": "/Date(1657925883000)/",
"phoneTypeNav": {
"externalCode": "MP"
}
},
{

"areaCode": "11",
"phoneNumber": "<phone here>",
"countryCode": "+55",
"lastModifiedOn": "/Date(1653504072000)/",
"phoneTypeNav": {
"externalCode": "B"
}
}
]
},

We have tried using the code below:

"customproperty40": "#CONST#${List phoneTypes=response.employmentNav.personNav.phoneNav.results; int count=0; int size=phoneTypes.size(); Iterator iterator=phoneTypes.iterator(); while(iterator.hasNext()){count++; if('B'.equals(.phoneTypeNav.externalCode)){return dataMap.countryCode + dataMap.areaCode + dataMap.phoneNumber}else if(count==size){return null}}}~#~char",

The above seems to work but it is not iterating through the entire list of phoneTypes(results).

Suppose  I check only for externalCode 'B' and some user is having the first item in the list of phoneTypes with externalCode 'B', it works fine. But if the externalCode of the first item is something else , it doesn't work.

Please guide as to what changes might be needed in the above code.

Thanks,

Atul Singh

 

1 REPLY 1

SB
Saviynt Employee
Saviynt Employee

We do not have an OOB functionality to support this but you can always build a JAVA string function to identify the value you need to save in CP attribute based on the response you receive from target.


Regards,
Sahil