Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion GroupsGeneralPHPASPPerlColdFusionFlashHTML, CSS, ScriptsBrowsers

Webmaster Forum / ColdFusion / Advanced Techniques / April 2006



Tip: Looking for answers? Try searching our database.

html to excel with cfcontent problem

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
JeffHorne2 - 27 Apr 2006 20:40 GMT
I am attempting to allow a user to save the contents of a table created with a
cfquery into an Excel spreadsheet.  Using <cfcontent>  I am able to create the
spreadsheet fine, but the formatting is not right.  Some of it is and some of
it is not.  The bold on the header line doesn't happen, which I can live with,
but the landscape orientation does not and that is a bigger problem.  I view it
fine in Excel 2003 but when I print preview or print it is portrait.  I have
converted this code from ASP.  It has the XML inside, so I kept it..  

We are still on CF5.  Not sure if there's a way to resolve this issue.

Thanks for any help on this.

Jeff

<cfsetting enablecfoutputonly="Yes">

<cfset filename = "Facets_Fix_Report_#fileDate#.xls">

<cfcontent type="application/vnd.ms-excel">

<cfheader name="Content-Disposition" value="attachment;
filename=#trim(filename)#">

<cfoutput>
<HTML xmlns:x="urn:schemas-microsoft-com:office:excel">
<HEAD>
<style>
<!--
td
{
border-width: thin;
border-top-style:solid;
border-bottom-style:solid;
border-left-style:solid;
border-right-style:solid;
}
@page
{
mso-header-data:"&C&\0022Arial\,Bold\0022&12#trim(strHeader)#";
mso-footer-data:"&L \00A9 #DateFormat(Now(),'YYYY')#\, The TriZetto Group
&CPage &P of &N &RExported on\: &D &T";
mso-page-orientation:landscape;
margin:1in .5in .6in .5in;
}
br
{
mso-data-placement:same-cell;
mso-width-source:auto;
}
newclass
{
mso-width-source:auto;
}
-->
</style>
<!-- ><xml>
 <x:ExcelWorkbook>
  <x:ExcelWorksheets>
   <x:ExcelWorksheet>
   <x:Name>Change Packages</x:Name>
    <x:WorksheetOptions>
     <x:Print>
      <x:ValidPrinterInfo/>
      <x:VerticalResolution>600</x:VerticalResolution>
     </x:Print>
     <x:Selected/>
     <x:Panes>
      <x:Pane>
       <x:Number>3</x:Number>
       <x:ActiveCol>5</x:ActiveCol>
       <x:RangeSelection>$A$1:$F$2</x:RangeSelection>
      </x:Pane>
     </x:Panes>
     <x:ProtectContents>False</x:ProtectContents>
     <x:ProtectObjects>False</x:ProtectObjects>
     <x:ProtectScenarios>False</x:ProtectScenarios>
    </x:WorksheetOptions>
   </x:ExcelWorksheet>
  </x:ExcelWorksheets>
  <x:WindowHeight>10005</x:WindowHeight>
  <x:WindowWidth>10005</x:WindowWidth>
  <x:WindowTopX>120</x:WindowTopX>
  <x:WindowTopY>135</x:WindowTopY>
  <x:ProtectStructure>False</x:ProtectStructure>
  <x:ProtectWindows>False</x:ProtectWindows>
 </x:ExcelWorkbook>
 <x:ExcelName>
  <x:Name>Print_Titles</x:Name>
  <x:SheetIndex>1</x:SheetIndex>
  <x:Formula>=Recovered_Sheet1!$1:$2</x:Formula>
 </x:ExcelName>
</xml><! -->
</HEAD>
BKBK - 28 Apr 2006 09:19 GMT
What happens when you begin with

<cfset filename = "Facets_Fix_Report_#fileDate#.xls">
<cfheader name="Content-Disposition" value="inline; filename=#trim(filename)#">
<cfcontent type="application/vnd.ms-excel">
<html xmlns:o="urn:schemas-microsoft-com:office:office"
      xmlns:x="urn:schemas-microsoft-com:office:excel">
      xmlns="http://www.w3.org/TR/REC-html40">
<HEAD>
...
etc.
JeffHorne2 - 28 Apr 2006 15:46 GMT
Well, I don't know XML, but when I placed <x:Name>#filename#</x:Name> using the
variable instead of a static text string, it worked and the Bold and Landscape
orientation worked.  

Thanks,

Jeff:D
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.