I'm working on a project for German customer and I'm using Salesforce DX to work with scratch-orgs. There's a nice script to configure everything and it was working fine till Summer'18.
Since Summer'18 I'm (and entire team is) getting most of the time following error:
Dieser Benutzer ist Portaladministrator und muss ein Profil mit der Berechtigung zur Bearbeitung von Self-Service-Benutzern besitzen.: __MISSING_LABEL_FOR_common.udd.impl.UddInfoImpl@43dfee08.
which in English would be:
This user is a portal administrator and must have a profile with the "Edit Self-Service Users" permission
Here is beginning of our script:
1. sfdx force:org:create -f ./config/project-scratch-def.json -a name -s
2. sfdx force:data:record:update -s User -w "LastName=User" -v "LanguageLocaleKey=en_US CountryCode=DE" // used to change the User's language so that we can work in English
We get this error on step 2 when trying to change the User's language.
Most of the times means that after few attempts finally we get scratch org that doesn't fail at this step.
The same error appears when we try to update the User via UI.
We don't have any Customer Portal, nor the Community that's why it's so strange.
Here is our project-scratch-def.json
:
{
"orgName": "SomeName",
"edition": "Enterprise",
"orgPreferences" : {
"enabled": ["S1DesktopEnabled", "ChatterEnabled", "EnhancedEmailEnabled"]
},
"features": ["LightningSalesConsole", "StateAndCountryPicklist"],
"language": "de" // needed because without it we can't push objects and fields
}
I checked it with other Dev Hub and get the same error on User's update
EDIT 19/09/2019
On another project got the same error when trying to mark scratch org as Marketing User
with command:
sfdx force:data:record:update -s User -w "Email='some@email.com'" -v "UserPermissionsMarketingUser=true"
The error being:
ERROR running force:data:record:update: This user is a portal
administrator and must have a profile with the "Manage Customer Users"
permission.: __MISSING_LABEL_FOR_common.udd.impl.UddInfoImpl@5f151d7d
Our workaround is again to keep trying until we get a proper scratch org.
Best Answer
As mentioned by Dave Carroll in the question's comments, this appears to be a bug. A patch should be coming soon.
In the mean time, the workaround is to use "Developer" as the scratch org edition.