Coldfusion电子表格宽度限制

时间:2018-08-08 18:36:41

标签: coldfusion

我们在Windows Server 2008 R2上使用Coldfusion 9.0.2。我有一个MS Excel电子表格,其中有192行40列。当我使用<cfspreadsheet>读取.xls文件时,似乎读取了所有行和列。这是我正在使用的标签

<cfspreadsheet action="read" src="#outdir#\#infile#" 
    query="theData2" sheetname ="xyz" headerrow="1" />

xsheet的列A - AU中填充了数据。当我转储#theData2#时,它将显示所有行和列。然后,我执行<cfloop query="theData2">并为每一行打印出一个字段。

看起来AM之后的任何列均显示错误"Variable col_name is undefined"。如果将<cfloop>更改为<cfouput query="theData2">,也会发生相同的情况。这似乎是一个限制。有人也遇到过这个限制吗?任何解决此问题的想法都将受到赞赏。

1 个答案:

答案 0 :(得分:-3)

您可以使用行属性从电子表格中获取有限的记录。像下面的代码

<cfspreadsheet action="read" src="sampleSheet.xlsx" 
    query="theData2"  headerrow="1" rows="5-10">
<cfdump var="#theData2#" />

在这里,我的sampleSheet有15条记录。行= 5-10将返回记录从5到10。像我的Sql中的限制和偏移量。我们可以通过3,4。它只会从工作表中返回第三和第四记录。希望它会帮助您获得极限记录。

并且您已经使用headerrow =“ 1”。因此,您的查询标题应具有列名作为工作表的第一条记录。然后,您应该像示例一样循环查询

<cfloop query="theData2">
    #queryNname.columnName#<br/>
</cfloop>

但是,如果您未使用header = 1,则可以将查询值设为

<cfloop query="theData2">
    #theData2.col_1# #theData2.col_2# #theData2.col_3#  etc.....
</cfloop>

我希望它将解决您的问题。谢谢。