Issue: Scenario is that we want to create a workflow in the portal to populate the 'MailNickname' attribute from the EMail attribute.  For example, if the email address is Test1@contoso.com, the MailNickname should be Test1.

Solution: Since there is no 'Length' or 'Find' function in the built in function evaluator we have to accomplish it a bit differently.  Here we'll assume everyone in the portal has an @contoso.com or @fabrikam.com email address.  Note the length of @contoso.com is 12, and @fabrikam.com is 13 characters.

Destination: [//Target/MailNickname]



Value:

IIF(Eq(LowerCase(Domain),"contoso"),ReplaceString(EMail,Right(EMail,12,""),"")+IIF(Eq(LowerCase(Domain),"fabrikam"),ReplaceString(EMail,Right(EMail,13,""),"")

aliasworkflow.PNG

 

Other domains will need to be concatenated in the custom expression appropriately.  This will write the MailNickname without the need for powershell custom workflow activities or the FIM WAL.