3

我正在尝试将查询导出到 Excel 文档。

这是我正在使用的代码:

<cfscript> 
    //Use an absolute path for the files. ---> 
    theDir=GetDirectoryFromPath(GetCurrentTemplatePath()); 
    theFile=theDir & "invoicesDue.xls"; 
    //Create an empty ColdFusion spreadsheet object. ---> 
    theSheet = SpreadsheetNew("invoicesData"); 
    //Populate the object with a query. ---> 
    SpreadsheetAddRows(theSheet,invoicesDue);  
</cfscript>

<!--- Write the sheet to a file ---> 
<cfspreadsheet action="write" filename="#theFile#" name="theSheet" sheetname="invoicesDue" overwrite=true>

我得到的错误是:

'' is an invalid date or time string. 

121: SpreadsheetAddRows(theSheet,invoicesDue); 

问题是,我已经放弃了我的查询,并且在任何地方都看不到引号,并且所有日期/时间单元格都填充了日期时间,例如“2011-03-31 00:00:00.0”或空的细绳。

我想知道是否有其他人以前遇到过这个错误,因为我看不到它的原因。

4

2 回答 2

2

cfspreadsheet 不喜欢日期字段的空值。最后我使用了:

CAST(emptyDate as varchar) 

这似乎是一个修复。

于 2013-01-17T16:12:44.550 回答
0

作为替代方案,我使用 Ben Nadel 的queryToCSV() 函数并绕过cfspreadsheet. 当我只需要一个单页 csv / xls 文件时,它就像一个魅力。

于 2013-01-17T16:28:16.017 回答