Salesforce基础-Visulforce Page生成Excel文件并保存为附件

 利用Visulforce Page生成Excel文件并保存为附件

在现实的工作场景中,用户可能需要按月统计Opportunity的已关闭或已赢得的金额。然而,报表只能显示当前数据的结果,为了保存这一结果以便于以后对比查看每个月的数据变化,我们可以使用VF生成Excel文件。

生成Excel文件示例代码:

<apex:page sidebar="false" showHeader="false" wizard="false" contentType="application/vnd.ms-excel;charset=UTF-8#.xls" name="VFtoExcel" cache="true" applyHtmlTag="false" readOnly="true">
    <html>
    <head>
        <meta http-equiv="Content-Type" content="test/html;charset = utf-8" />
        <style>
        table {
            font-size: 14px;
            vertical-align: middle;
        }
        table td {
            height: 32px;
        }
        </style>
    </head>

    <body>
        <table cellspacing="0" cellpadding="0" border="1" align="center" style="table-layout: fixed;">
            <tr>
                <td style="width: 250px;">
                    Status
                </td>
                <td style="width: 100px;">
                    Jan
                </td>
                <td style="width: 100px;">
                    Feb
                </td>
                <td style="width: 100px;">
                    Mar
                </td>
                <td style="width: 100px;">
                    Apr
                </td>
                <td style="width: 100px;">
                    May
                </td>
                <td style="width: 100px;">
                    Jun
                </td>
                <td style="width: 100px;">
                    Jul
                </td>
                <td style="width: 100px;">
                    Aug
                </td>
                <td style="width: 100px;">
                    Sep
                </td>
                <td style="width: 100px;">
                    Oct
                </td>
                <td style="width: 100px;">
                    Nov
                </td>
                <td style="width: 100px;">
                    Dec
                </td>
            </tr>
            <tr style="text-align: left;">
                <td >
                    <apex:outputText value="Active" />
                </td>
                <td >
                    <apex:outputText value="100" />
                </td>
                <td >
                    <apex:outputText value="200" />
                </td>
                <td >
                    <apex:outputText value="300" />
                </td>
                <td >
                    <apex:outputText value="400" />
                </td>
                <td >
                    <apex:outputText value="500" />
                </td>
                <td >
                    <apex:outputText value="600" />
                </td>
                <td >
                    <apex:outputText value="700" />
                </td>
                <td >
                    <apex:outputText value="800" />
                </td>
                <td >
                    <apex:outputText value="900" />
                </td>
                <td >
                    <apex:outputText value="1000" />
                </td>
                <td >
                    <apex:outputText value="1100" />
                </td>
                <td >
                    <apex:outputText value="1200" />
                </td>
            </tr>
        </table>
    </body>

    </html>
</apex:page>

将Excel文件保存为附件

PageReference PDf =  Page.VFtoExcel;
PDf.setRedirect(true);
Attachment attach = new Attachment();
Blob b = PDf.getContent();
attach.Body = b;
attach.Name = 'OppAmout.xlsx';
attach.IsPrivate = false;
attach.ParentId = 'sf record id';
insert attach;
System.debug(LoggingLevel.INFO, '*** attach.Id: ' + attach.Id);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值