Tag: coldfusion 9

cfspreadsheet无法读取空行

给定一个包含N个逻辑行的电子表格 哪一行是完全空白的* cfspreadsheet action="read"将返回一个RecordCount为N – 1的查询。 *完全空白的行是每一个单元格实际上都是空白的行。 请参阅POI文档中的CELL_TYPE_BLANK 。 cfspreadsheet是否可以包含空行?

ColdFusion:cfspreadsheet本地化的date格式

我的问题基本上与这一个相同,但我不能在Excel文件中更改date格式: 如果我将单元格格式化为date英语(NZ),即datetypes“* 14/03/2001”,则它将显示在电子表格中,但是当我尝试上载时,会切换date和月份。 但如果我改变格式为自定义“dd / mm / yyyy”格式[它工作正常]。 所以问题是这样的:我可以改变<cfspreadsheet />处理date格式的方式吗? 或者甚至更好,直接从Excel导入获取Date对象。 编辑: 我使用POI发现了一个解决scheme: <cfset fileIS = createObject( "java", "java.io.FileInputStream" ).init( "#request.site.sImportPath#\#variables.file#" ) /> <cfset excelFS = createObject( "java", "org.apache.poi.poifs.filesystem.POIFSFileSystem" ).init( fileIS ) /> <cfset workBook = CreateObject( "java", "org.apache.poi.hssf.usermodel.HSSFWorkbook" ).init( excelFS ) /> <cfset sheet = workBook.getSheet( "mySheetName" ) /> <cfset myDateValue = sheet.getRow( 20 […]

用ColdFusion导出数十万条logging

使用ColdFusion 9.0.1,我需要将数十万条数据库logging导出到Excel XLSX或CSV(首选XLSX)。 这必须按需要完成。 到目前为止,我已经尝试过使用cfspreadsheet,但是在XLSX格式中输出多于几千行时,它会扼杀。 但是,出口到XLS工作正常(当然有一个约65,000行限制)。 我有什么select导出这么多的logging? 理论上用户可能需要输出多达一百万条logging。 我也使用SQL Server 2008 R2 – 有没有办法以某种方式将logging导出到文件,然后通过CF发送文件给用户? 我有什么select? 谢谢。

将Excel电子表格导入SQL数据库(Coldfusion 9)

我正在编写一个脚本来导入一个大型的excel spreadhseet到一个SQL Server 2008数据库。 除了一个小细节之外,一切工作正常。 如果工作表中的单元格有多个选项(如<select>下拉菜单),则只会抓取选定的选项。 我想抓住单元所有可能的选项,而不仅仅是正在使用的选项(请参阅我的SQL查询为什么) 我search谷歌和S / O的答案,但我还没有遇到这种特殊情况的解决scheme。 这里是我正在使用的电子表格函数的链接 。 我不能向你展示excel表格,但假设表格的遍历是正确的(我已经testing过了)。 这是我的代码: <cfspreadsheet action="read" src="spreadsheet.xlsx" name="sheet"> <cfoutput> #sheet.rowcount-3# <cfloop from="2" to="#sheet.rowcount-3#" index="row"> <cfquery datasource="Questions" result="rState"> INSERT INTO States ( State, StateAbbr ) VALUES ( <cfqueryparam cfsqltype="cf_sql_varchar" value="#SpreadsheetGetCellValue(sheet,row,1)#">, <cfqueryparam cfsqltype="cf_sql_varchar" value="#SpreadsheetGetCellValue(sheet,row,2)#"> ) </cfquery> #SpreadsheetGetCellValue(sheet,row,1)#<br /> #SpreadsheetGetCellValue(sheet,row,2)#<br /> <cfloop from="3" to="15" index="col"> <!— multi row […]

ColdFusion电子表格内存问题

我正在使用ColdFusion将相当数量的行(大约1000),大量列(大约300)导出到Excel。 这是一个多页Excel文件,其中至less有两个具有大量列的工作表。 使用cfspreadsheet会引发Java堆错误。 更新JVM设置值显示没有改进。 导出到Excel而不导致Java堆错误的最佳方式是什么? 编辑:我已经尝试了几种方法来解决程序内的问题。 我正在使用cfsavecontent中的xml工作簿来构build多个工作表,并使用cfcontent呈现结果。 在这种情况下,cfcontent可能会利用大量内存导致堆空间错误。 <cfsavecontent variables="REQUEST.xmlData"> <cfoutput> <xml version="1.0"?> <?mso-application progid="Excel.sheet"?> <Workbook> …other contents </Workbook> </cfoutput> </cfsavecontent> 对于第二个解决方法,我使用querynew来构build内容并使用<Cfspreadsheet action="write">将最终结果转储到excel中。 对于后面的表单,我正在使用<cfspreadsheet action="update"> 。 最终目标是使用<cflocation url="excelPath">来为excel服务,但是在这种情况下,cfspreadsheet更新永远丢失内存错误。 如果更新jvm不是一种select,您还有什么其他方法可以解决内存问题?