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

How we can handle special character in System Username Generation

SIRAJMOLLA
New Contributor III
New Contributor III

Hi Team,

Can anyone tell me How we can handle special character in System Username Generation. We are using advance configuration for System Username Generation and also we need to convert those characters to general form. Below is the list-

å, Å a or A
æ, Æa or A
œ, Œo or O
ç, Çc or C
ð, Ðd or D
ø, ØCtrl+/, o or O
¿?
¡!
ßs

Please let us know if anyone can help me.

 

With Regards, 

Siraj Molla

5 REPLIES 5

dgandhi
All-Star
All-Star

Check below forum post?

https://forums.saviynt.com/t5/general-discussions/how-to-remove-special-characters-while-generating-...

 

Thanks,
Devang Gandhi
If this reply answered your question, please Accept As Solution and give Kudos to help others who may have a similar problem.

pmahalle
All-Star
All-Star

Hi @SIRAJMOLLA ,

System user name generation works on MySQL query, so you can use replace function multiple time to replace each special character with required character like below:

replace(replace(replace(users.lastname,'å','a'),'Å','A'),'æ','a')

Like above you need to write replace function for each character to be replaced.


Pandharinath Mahalle(Paddy)
If this reply answered your question, please Accept As Solution to help other who may have a same problem. Give Kudos 🙂

rushikeshvartak
All-Star
All-Star

Use saviynt default function - FN_EIC_REPLACE

FN_EIC_REPLACE

Use this DB function to replace the accented letters and special characters with alternatives to transform them into acceptable characters that can be parsed by EIC. This DB function works in conjunction with the REPLACE_MAPPING dataset provided by Saviynt, which contains default alternatives for replacing these letters and characters. You can extend this dataset or create new alternatives in another dataset based on your requirements and use it with the DB function. This DB function can be used with the user import preprocessor and with advanced configuration of identity rules (System Username Generation, Email Generation, and Account Name). For more information, see Normalizing the Identity Data Using the User Import Preprocessor and Configuring Identity Lifecycle Setup. For more information about creating datasets, see Creating Datasets.

  • If you want to use the DB function with the default dataset, use the following syntax: FN_EIC_REPLACE(STRING_TO_BE_REPLACED,null)

  • If you want to use the DB function with another dataset, use the following syntax: FN_EIC_REPLACE(STRING_TO_BE_REPLACED,'REPLACE_MAP_CUSTOM')

where REPLACE_MAP_CUSTOM specifies the name of the dataset.

https://docs.saviyntcloud.com/bundle/EIC-Admin-v2022x/page/Content/Chapter02-Identity-Repository/Dat... 


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

Hi Rushikesh,

I will check your suggestion and let you know.

With Regards,

Siraj Molla

Hi Rushikesh,

Suppose if we are re using below logic as an example then how the format will look like-

CASE
WHEN LENGTH(users.lastname) = 1 THEN UPPER(CONCAT(SUBSTRING(replace(users.firstname,"'",""), 1, 1),SUBSTRING(replace(users.lastname,"'",""), 1, 1),'00',FN_EIC_SEQGEN('sam')))
WHEN LENGTH(users.lastname) = 2 THEN UPPER(CONCAT(SUBSTRING(replace(users.firstname,"'",""), 1, 1),SUBSTRING(replace(users.lastname,"'",""), 1, 2),'0',FN_EIC_SEQGEN('sam')))
ELSE UPPER(CONCAT(SUBSTRING(replace(users.firstname,"'",""), 1, 1),SUBSTRING(replace(users.lastname,"'",""), 1, 3),FN_EIC_SEQGEN('sam')))
END

Please let me know where I have to add that replace logic.

With Regards,

Siraj Molla