You mean to say I need to store that username value in some different customproperty.But as we are generating System Username through Global config-->Identity Lifecycle is it generate because if I populate the username after user creation.
For non-employees, have you observed if the username is getting populated or not while you are seeing failure with the systemusername generation?
I have not tested it myself but I think you can populate username into some customproperty field using the 'ModifyUserDataJSON' as you import users (You can probably try to populate systemusername as well using the ModifyUserDataJSON and see how it behaves). But firstly, you need to make sure that username is getting generated without issues for these users
For Non-Employee username is getting generated but in System Username it's taking lastname as per logic but username is not concatenated instead of username it is showing some reference number.
As you mentioned we need to use modify user json for populate the username in some customproperty but the thing is that for Non-Employee user creation we are using saviynt user registration form not importing non-employee user than how can I use Modify User Json.
It looks like the username was calculated as savgen- hence the system user name generation rule created as such, Was the username calculated correctly? if you check the logs when you create a user you will know the username calculated was SAVGEN9050227555023256040 and then it appended lastname may be as per the rule.
Can you check if the username is created correctly?