Salesforce 自动创建用户社区

Salesforce 自动创建用户社区,salesforce,apex-code,Salesforce,Apex Code,是否可以在Salesforce中自动化创建社区用户的过程?我想在联系人上设置一个触发器,然后使用communities许可证创建用户记录。这可能吗 谢谢。是的,应该是这样的 Contact con = [select id,email,firstName,lastname,accountId from Contact where Id =:contactId]; Database.DMLOptions dmo = new Database.DMLOptions(); dmo.

是否可以在Salesforce中自动化创建社区用户的过程?我想在联系人上设置一个触发器,然后使用communities许可证创建用户记录。这可能吗


谢谢。

是的,应该是这样的

Contact con = [select id,email,firstName,lastname,accountId from Contact where Id =:contactId];         

Database.DMLOptions dmo = new Database.DMLOptions();
dmo.EmailHeader.triggerUserEmail = false;       
dmo.EmailHeader.triggerOtherEmail = false;
dmo.EmailHeader.triggerAutoResponseEmail = false;       
dmo.optAllOrNone = false;

// create portal user
string nick = con.email!=null?con.email.substring(0, con.email.indexOf('@')):'';
nick += Datetime.now().getTime();
User newUser = new User(
                    alias = createAlias(con.firstName, con.lastName), 
                    email = con.email, 
                    emailencodingkey = 'UTF-8', 
                    firstname = con.firstName, 
                    lastname = con.lastname, 
                    languagelocalekey = 'en_US', 
                    localesidkey = 'en_US', 
                    contactId = con.Id,
                    timezonesidkey = 'Asia/Dubai', 
                    username = con.email,
                    CommunityNickname = nick,
                    ProfileId = .......,
                    IsActive = true);

newUser.setOptions(dmo);
insert newUser;