大家好我想将自定义对象中的所有数据导出为CSV,并使用APEX将其作为电子邮件附件发送。 这可能吗?
答案 0 :(得分:0)
您没有说是否要将文件附加到电子邮件或其他内容,因此我将描述将数据导出到CSV文件的最简单方法。
答案 1 :(得分:0)
您可以尝试这样<apex:page controller="*your controller name*" **contentType="application/vnd.ms-excel#contacts.xls**" readOnly="True">
在这里你可以添加其他代码,例如,如果你想下载联系人的csv文件,那么
<apex:pageBlock title='Contacts'>
<apex:pageBlockTable value='{!account.Contacts}' var='contact'>
<apex:column value='{!contact.Name}'/>
<apex:column value='{!contact.MailingCity}'/>
<apex:column value='{!contact.Phone}'/>
</apex:pageBlockTable>
</apex:pageBlock>
希望这样可以帮助你!
答案 2 :(得分:0)
如果您要做的只是将查询的csv附加到记录:
Attachment a = new Attachment(ParentId = 'Parent_Record_Id_Here', Name='Test Attachment.csv');
Blob body = Blob.valueOf(getCsvFromSOQL());
a.Body = body;
insert a;
String getCsvFromSOQL(){
//do query and build csv string
csvString = '';
//List<Something__c> things = [SELECT Id, Name FROM Something__c];
// build your csv
csvString = 'Name,Value\nFirst,1\nSecond,2\nThird,3';
return csvString;
}
如果您想将其作为电子邮件发送,可以在代码中执行此操作或查看visualforce电子邮件模板