You need to sign in to do that
Don't have an account?
Excel XML messaging attachment - some nodes being commented out?
Hello.
I have a Visualforce component called "Rpt_MonthlyExpenseSummary_Excel" that outputs an Open Office XML file that opens properly in Excel with all formatting, formulas, named ranges and other items intact intact. When I embed this component on a simple page and access it via a browser, it prompts me to download the file, and everything functions properly. Here's a snippet of the VF page where I am including the component, and the XML contained in the downloaded file it generates:
I also attaching this same Excel file to an email template using <messaging.emailTemplate>:
I cannot figure out why everything functions properly as a page, but when attached to an email, that portions of the XML file are being arbitrarily commented out. Any ideas?
Much thanks in advance.
-Greg
I have a Visualforce component called "Rpt_MonthlyExpenseSummary_Excel" that outputs an Open Office XML file that opens properly in Excel with all formatting, formulas, named ranges and other items intact intact. When I embed this component on a simple page and access it via a browser, it prompts me to download the file, and everything functions properly. Here's a snippet of the VF page where I am including the component, and the XML contained in the downloaded file it generates:
<apex:page controller="CtrlRptMonthlyExpenseSummary" standardStylesheets="false" contenttype="application/vnd.ms-excel#TestExport_{!TODAY()}.xml"> <c:Rpt_MonthlyExpenseSummary_Excel /> </apex:page>Output:
<?xml version="1.0"?><?mso-application progid="Excel.Sheet"?><Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:x="urn:schemas-microsoft-com:office:excel"> <Styles> <Style ss:ID="Default" ss:Name="Normal"> <Alignment ss:Vertical="Bottom"></Alignment> <Borders></Borders> <Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="12" x:Family="Swiss"></Font> <Interior></Interior> <NumberFormat></NumberFormat> <Protection></Protection> </Style> <Style ss:ID="sCurrency"> <NumberFormat ss:Format="$#,##0"></NumberFormat> <Borders> <Border ss:LineStyle="Continuous" ss:Position="Bottom" ss:Weight="1"></Border> <Border ss:LineStyle="Continuous" ss:Position="Left" ss:Weight="1"></Border> <Border ss:LineStyle="Continuous" ss:Position="Right" ss:Weight="1"></Border> <Border ss:LineStyle="Continuous" ss:Position="Top" ss:Weight="1"></Border> </Borders> </Style>
I also attaching this same Excel file to an email template using <messaging.emailTemplate>:
<messaging:emailTemplate subject="Report: Monthly Expense Summary" recipientType="User"> <messaging:htmlEmailBody > Omitted stuff here </messaging:htmlEmailBody> <messaging:attachment filename="Report: Monthly Expense Summary - {!MONTH(TODAY())}-{!YEAR(TODAY())}.xls" > <c:Rpt_MonthlyExpenseSummary_Excel /> </messaging:attachment> </messaging:emailTemplate>The tempate functions correctly as well, and the attachment is included. The issue, though, is that portions of the XML file, namely the formatting and styles that I have defined, are being commented out with <!-- and //--> tags. Here's a relevant snippet of the attachment XML file:
<?xml version="1.0"?><?mso-application progid="Excel.Sheet"?><Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:x="urn:schemas-microsoft-com:office:excel"> <Styles> <Style ss:ID="Default" ss:Name="Normal"> <!-- <Alignment ss:Vertical="Bottom"></Alignment> <Borders></Borders> <Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="12" x:Family="Swiss"></Font> <Interior></Interior> <NumberFormat></NumberFormat> <Protection></Protection> //--> </Style> <Style ss:ID="sCurrency"> <!-- <NumberFormat ss:Format="$#,##0"></NumberFormat> <Borders> <Border ss:LineStyle="Continuous" ss:Position="Bottom" ss:Weight="1"></Border> <Border ss:LineStyle="Continuous" ss:Position="Left" ss:Weight="1"></Border> <Border ss:LineStyle="Continuous" ss:Position="Right" ss:Weight="1"></Border> <Border ss:LineStyle="Continuous" ss:Position="Top" ss:Weight="1"></Border> </Borders> //--> </Style>
I cannot figure out why everything functions properly as a page, but when attached to an email, that portions of the XML file are being arbitrarily commented out. Any ideas?
Much thanks in advance.
-Greg