Hello,
There is no possibility to achieve what you need using Property Patterns. As a workaround, you can use the PowerShell script below executed by a Business Rule triggering Before Creating a User.
$propertiesToCheck = @("givenName", "sn", "name", "displayName") # TODO: modify me
function FixString ($string)
{
return $string.SubString(0, 1).ToUpper() + $string.SubString(1).ToLower()
}
foreach ($propertyName in $propertiesToCheck)
{
# Get value
$value = $Context.GetModifiedPropertyValue($propertyName)
if ([System.String]::IsNullOrEmpty($value))
{
continue
}
# Converting first character of a value to uppercase
if ($value -match " ")
{
$valueParts = $value.Split(" ") | %%{FixString $_}
$value = [System.String]::Join(" ", $valueParts)
}
else
{
$value = FixString $value
}
# Update property
$Context.SetModifiedPropertyValue($propertyName, $value)
}