javascript - BIRT - getPersistentGlobalVariable 只给出最后一行
问题描述
我有这样的表:
|---------------------|------------------|
| Heading1 | Heading2 |
|---------------------|------------------|
| 1 | A |
|---------------------|------------------|
| 2 | B |
|---------------------|------------------|
我正在设置:
var results = dataSetRow["Heading1"];
report.Context.setPersistentGlobalVariable("results2",results);
var test=report.Context.getPersistentGlobalVariable("results2");
当我在另一个数据集中使用它时,测试只包含最后一行的值为2 。如何将所有列值设置为persistentGlobalVariable或通过 BIRT 脚本一一访问?我需要以某种方式将这些值传递给另一个 DataSet。
解决方案
您必须使用集合来存储各个值。每次脚本评估时,先前分配的值将被覆盖,您将只保留最后一个。例如,您可以创建一个数组并将其作为全局变量保存在报表上下文中
推荐阅读
- javascript - Discord bot guildMember.roles.cache.has(roleID1 || roleID2)
- gitlab - GitLab CI/CD yml - 如果创建了新分支,如何添加到管道作业中。并排除进一步推动?
- python - 将 int64 的“单词”转换为 Python 中的列表
- kubernetes - Kubernetes 快照
- rdf - 在 RDF 中对高度冗余的主题进行建模
- c++ - 尝试包含 mlpack 时,VSCode '无法打开源文件“boost/serialization/serialization.hpp”(“mlpack/core.hpp”的依赖项)'
- python - 如何创建n维稀疏张量?(火炬)
- sum - alpine js如何总计x-for项目
- node.js - 如何将 cookie 传递给响应 expressjs?
- python - 如何用 python-cffi 包装 C 函数以便 pythons 关键字参数起作用?