我正在开发一个网站在Visualforce,想为用户提供一个简单的表单,通过电子邮件给我反馈。将有3-4个领域,如姓名,用户的电子邮件,原因和反馈和“发送”按钮。单击“发送”按钮将自动将该消息发送到我的电子邮件地址。
我不想将表单数据存储在salesforce中,至少对于now...All来说,我在网上找到的关于visualforce/apex和电子邮件的东西也是关于将这些数据保存到salesforce中的。
我能不能只利用apex的电子邮件功能,发送电子邮件,而不将数据存储在salesforce中的任何地方?
谢谢,卡尔文
发布于 2012-08-29 18:50:08
在VisualForce页面上执行操作时,不需要在数据库中插入/更新/删除任何记录。您可以利用Outbound Email功能发送通知。对于这种情况,您可能希望熟悉一下SingleEmailMessage方法。
下面是一个简单的示例:
public PageReference actionSend() {
String[] recipients = new String[]{'myemailaddress@somedomain.com'};
Messaging.reserveSingleEmailCapacity(recipients.size());
Messaging.SingleEmailMessage msg = new Messaging.SingleEmailMessage();
msg.setToAddresses(recipients);
msg.setSubject('Test Email Subject');
msg.setHtmlBody('Test body including HTML markup');
msg.setPlainTextBody('Test body excluding HTML markup');
msg.setSaveAsActivity(false);
msg.setUseSignature(false);
Messaging.sendEmail(new Messaging.SingleEmailMessage[] {msg}, false);
return null;
}
如果您有兴趣从专用电子邮件地址(如noreply@somecompany.com)发送这些出站邮件,您可以通过设置->管理设置->电子邮件管理->组织范围的地址菜单进行设置。创建了组织范围的地址后,从URL中获取Id并在Messaging.SingleEmailMessage
实例上使用setOrgWideEmailAddressId(Id)
方法。
https://stackoverflow.com/questions/12184078
复制相似问题