问题标签 [cfspreadsheet]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
coldfusion - cfspreadsheet 参数验证错误
我正在尝试获取一个基本示例来使用cfspreadsheet
. 但这是我收到的错误:
SPREADSHEETSETCELLVALUE 函数的参数验证错误。
代码
对此的任何帮助将不胜感激。
coldfusion - CF 电子表格添加 % 以格式化列
我正在使用 CF10 并尝试在电子表格中添加 % 符号。
我在第 5 列条目上添加 % 符号时遇到问题。(当查询完成运行时,只有从第二行开始的条目(不是标题)而不是空白单元格。
我试过添加:
'#DecimalFormat(totalChecklistsByLocPct)# %'"
然后excel不知道正确的格式。
然后我尝试了:
<cfset spreadsheetFormatCell( objSpreadsheet, {dataformat: "0.00%"}, 2 )>
然后只是通过一个错误:
SPREADSHEETFORMATCELL 函数的参数验证错误。
任何有关如何将此 % 符号添加到第 5 列(查询停止后不是标题或空白单元格)的帮助将不胜感激。
编辑
也试过:
<cfset rowList = "'#(rnA eq 1)?assoc_name:''#','#(rnl eq 1)?trans_location:''#','#checklistsByAssocLoc#','#assocChecklistsByLoc#','#NumberFormat(totalChecklistsByAssocLocPct, '0.00')# %'">
Excel 仍然通过错误说它的格式为文本。
coldfusion - cfspreadsheet 使行中的第一项变为粗体
我在 ColdFusion10 中有一个使用 cfspreadsheet 的行列表。
我试图使这部分加粗。
我已经尝试过 cfif 语句,但似乎没有任何结果可以使我的名字加粗。
对此的任何帮助将不胜感激。
编辑
我的整个电子表格
coldfusion - 列格式 cfspreadsheet
我在 ColdFusion 10 中使用 cfspreadheet。我将第 5 列向右对齐。1 到 44 列右对齐,然后 44 到 73 列再次开始左对齐。尝试格式化电子表格时这是典型的情况吗?
<cfset SpreadsheetFormatColumn( objSpreadsheet, {alignment="right"}, 5 )>
所有电子表格代码:
如果我以十进制格式删除百分号“%”,我应该添加它确实完全对齐。但我试图让它与 % 符号一起使用。
coldfusion - cfspreadsheet 直接更新单元格
可以cfspreadsheet
(或使用冷融合的任何其他方法)仅更新现有 xlsx 电子表格中的几个单元格吗?我过去更新了整个工作表 - 使用一个对象 - 但有问题的工作表是如此庞大和混乱 - 我只想能够编辑一些单元格 - 而不必阅读和验证所有列。基本上是直接在电子表格上使用的能力,SpreadsheetSetCellValue
而不是仅在必须作为整个工作表读入和更新/写回的电子表格对象上工作。
multithreading - 如何在 Coldfusion/Lucee 中使用多线程编程读取大的 excel 文件?
我正在尝试使用 10 个线程读取一个大的 excel 文件,如下面的代码所示:
但是当我转储_Qry
变量时,它不会产生从文件中读取的预期查询。它转储 0。我怀疑这是线程范围或线程结果合并问题,我不知道如何解决。
感谢您的帮助:)
performance - CFSpreadSheet 函数占用大量数据集的内存
我们有一个 Coldfusion 应用程序,它正在运行一个大型查询(最多 100k 行),然后以 HTML 格式显示它。然后,用户界面提供了一个导出按钮,该按钮触发使用 cfspreadsheet 标记和电子表格函数将报告写入 .xlsx 格式的 Excel 电子表格,特别是用于构建行列值的电子表格SetCellValue、用于格式化的电子表格格式行和电子表格格式单元函数。然后使用以下命令将 ssObj 写入文件:
其中 ssObj 是 SS 对象。我们看到文件大小约为 5-10 Mb。
但是...创建此报告和写入文件的内存使用量增加了大约 1GB。复杂的问题是,java GC 在导出完成后没有立即释放内存。当我们有多个用户运行并导出这种类型的报告时,内存不断攀升并达到分配的堆大小并杀死服务器的性能,从而导致服务器停机。通常需要重新启动才能将其清除。
这是正常/预期的行为还是我们应该如何处理这个问题?是否可以在导出完成后按需轻松释放此操作的内存使用量,以便运行报表的其他人轻松访问为他们的报表释放的空间?这种类型的内存使用对于 5-10Mb 文件是否常见于 cfspreadsheet 函数并写出对象?
我们已尝试暂时删除昂贵的格式化功能,但创建和写入 .xlsx 文件的内存使用量仍然很大。我们还尝试使用电子表格添加行方法和 cfspreadsheet action="write" query="queryname" 标记传入查询对象,但这也占用了大量内存。
为什么这些函数如此占用内存?在没有内存不足问题的情况下生成 Excel SS 文件的最佳方法是什么?
我应该添加服务器在 Windows 上的 Apache/Tomcat 容器中运行,我们使用的是 CF2016。
coldfusion - 将用户电子表格列映射到数据库字段
我不知道从哪里开始这个项目。我知道如何阅读 excel 电子表格的内容,我知道如何识别标题行,我知道如何遍历内容。我相信我已经解决了 UX 部分,但我不确定如何处理数据。
我用谷歌搜索,只找到了 .Net 解决方案,但我正在寻找 ColdFusion/Lucee 解决方案。
我有一个工作表单,允许我将用户的电子表格列映射到我的数据库值(对于这篇文章来说,这很简单;用户没有直接访问数据库的权限)。
现在我有了数据,我不确定如何循环数据结果。我相信会有几个循环(一个外部和一个内部)。然后当然我还需要遍历文件内容,但我想如果我能把标题映射出来,我就能找出剩下的。
任何好的链接、教程或指南将不胜感激。
一些伪代码可能足以让我开始。
更新 这是在我的表单中完成映射后数据的样子。列分隔符是 ::: 并且在列内是 ||| 表示与所选列值关联的 ID。我已经包含了 id 和列值,因为我计划再次显示映射作为确认。拥有 ID 可以节省访问数据库的时间。
coldfusion - 使用 ColdFusion 10 合并单元格后如何在 cfspreadsheet 中进行顶部对齐
在使用电子表格功能合并单元格之后,我正在使单元格顶部对齐。我在 google 和CFML Reference Adobe ColdFusion 10上发现的只有
left
(默认) , right
, center
, justify
, general
, fill
, and center_selection
. 合并单元格后是否有其他方法或想法可以使其“顶部对齐”?这是我的代码:
coldfusion - 如何修复在cfspreadsheet中存储为文本的数字
我在cfspreadsheet
(Coldfusion 10)中将excel单元格格式制作为数字,但是当它转换为excel时,它会在单元格处显示警告
数字存储为文本。
我能知道如何解决这个问题吗?因为我需要数字格式。这是我的代码:
从评论更新:
示例查询值是50
数据类型是number
。我的查询是这样的。
我认为这是因为数据类型是数字并与 % 连接,这就是它存储为文本的原因。