Visualforce电子邮件链接电子邮件模板

时间:2012-08-21 06:36:03

标签: salesforce apex-code visualforce force.com

我有一个Visualforce apex中的电子邮件列表:pageBlockTable,并希望使电子邮件可以使用特定的电子邮件模板,并使用我点击的电子邮件填充To:字段,有没有办法做到这一点? / p>

2 个答案:

答案 0 :(得分:1)

回答我的理解:逻辑 - 您需要将可见度页面中的参数传递给控制器​​/扩展程序,以便它知道要使用哪个模板(如果有多个模板)。这可以通过无线电按钮来实现。

根据发送电子邮件部分,只需通过getter和setter将包含电子邮件的列的值传递给apex类。将这些电子邮件存储在一个数组中,使用sendEmail方法将电子邮件发送到电子邮件数组。

示例代码:

// VF页面: //所以,如果你在pageBlockTable中有你的电子邮件,代码必须是这样的:                                                                     
    

//Apex Class:
public class Test{
    List <Email__c> listEmail = [Select Email__c from Email__c];
    String[] toAddresses = new String[] {};
    public list<Email__c> getList() {        
        return listEmail;
    }

    public Test(){
        for(integer i =0; i < listEmail.size(); i++){
            toAddresses.add(listEmail[i].Email__c);
        } 
    }

    public void  SendEmail(){
        Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
        //pass the address list
        mail.setToAddresses(toAddresses);
        //set the templateID
         mail.setTemplateID('');
        //set other fields (like SenderName, ReplyTo, Signature) -     http://www.salesforce.com/us/developer/docs/apexcode/Content/apex_classes_email_outbound_base.htm 
        //send the email
        mail.sendEmail();
    }
} 

请告诉我这是否适合您!

干杯

答案 1 :(得分:0)

您需要能够预先编辑电子邮件吗?如果不是,您可以使用命令链接调用发送SingleEmailMessage

的方法

http://www.salesforce.com/us/developer/docs/apexcode/Content/apex_classes_email_outbound_single.htm

并从那里设置模板......