我想通过导入 csv 文件创建与帐户相关的联系人和用户。创建用户后,生成的用户名和密码应发送到相应用户的电子邮件地址。
我打算使用 Vf 页面来接受 csv 文件和联系人和用户API 来添加联系人和用户。但我不确定通过 API 向用户发送电子邮件通知。
那么任何人都可以为我提供最好的解决方案吗?
我想通过导入 csv 文件创建与帐户相关的联系人和用户。创建用户后,生成的用户名和密码应发送到相应用户的电子邮件地址。
我打算使用 Vf 页面来接受 csv 文件和联系人和用户API 来添加联系人和用户。但我不确定通过 API 向用户发送电子邮件通知。
那么任何人都可以为我提供最好的解决方案吗?
您需要使用Database.insert()
风味而不是直接insert users;
查看DML 选项帮助主题,尤其是“emailHeader”属性
这样的事情应该可以解决问题:
List<User> users = new List<User>(); // fill in with data from your CSV
Database.DMLOptions dlo = new Database.DMLOptions();
dlo.EmailHeader.triggerUserEmail = true;
database.insert(users, dlo);
请注意,您不能插入非活动用户。您可以在插入后立即停用它们,但它们无法登录,因此您可能希望禁止发送电子邮件,而不是强制执行它。在开始之前,请确保您拥有足够数量的许可证!
最后但并非最不重要的一点 - 您可以通过为他们设置相同的密码来作弊System.setPassword('user id', 'new password')
:) 虽然不建议将此功能公开给您的最终用户,但一次只能处理 1 个用户并浪费 1 个 DML 语句......