I am trying to create a user in a test class and this user needs to be a Chatter Free License. Usertype is the field to set the license but this one is not writable.
Any pointers on creating a user with a specific license type?
Salesforce Stack Exchange is a question and answer site for Salesforce administrators, implementation experts, developers and anybody in-between. It only takes a minute to sign up.Sign up to join this community
The license isn't actually connected to the user, but depends on the profile you assign your user. If you create a user with the Chatter Free User profile, the usertype will be set to Chatter free.
5.0 APEX_CODE,DEBUG Execute Anonymous: Profile p = [SELECT id, Name FROM Profile where name = 'Chatter Free User' ].get(0); Execute Anonymous: Execute Anonymous: User u = new User(firstname= 'Samuel', Execute Anonymous: lastname='De Rycke', Execute Anonymous: Alias='Samuel', Execute Anonymous: email = 'firstname.lastname@example.org', Execute Anonymous: username= 'email@example.com', Execute Anonymous: profileId= p.id, Execute Anonymous: emailencodingkey='UTF-8', Execute Anonymous: languagelocalekey='en_US', Execute Anonymous: localesidkey='en_US', Execute Anonymous: timezonesidkey='America/Los_Angeles'); Execute Anonymous: insert u; Execute Anonymous: Execute Anonymous: u = [select usertype from user where id =:u.id]; Execute Anonymous: Execute Anonymous: system.debug('--------------------------->User.UserType:'+u.usertype); 13:15:05.040 (40786000)|EXECUTION_STARTED 13:15:05.040 (40800000)|CODE_UNIT_STARTED|[EXTERNAL]|execute_anonymous_apex 13:15:05.769 (769888000)|USER_DEBUG||DEBUG|--------------------------->User.UserType:CsnOnly 13:15:05.820 (820554000)|CODE_UNIT_FINISHED|execute_anonymous_apex 13:15:05.820 (820567000)|EXECUTION_FINISHED
The CsnOnly type will display as the Chatter Free User License in salesforce.com.