【问题标题】:Spotfire updating data on demand tableSpotfire 按需更新数据表
【发布时间】:2026-01-21 00:30:02
【问题描述】:

我需要在 spotfire 上更新按需数据表。有没有办法通过脚本做到这一点?我查看了多个页面以使用刷新功能,但它似乎无法通过脚本或通过数据表属性手动执行。以下是我查看的链接:

Spotfire: Create button to start loading data ,instead of using load data on demand

https://datashoptalk.com/trigger-on-demand-queries-ironpython/

https://community.tibco.com/wiki/how-refresh-or-reload-data-using-ironpython-script-tibco-spotfire.

这是我使用的代码,以防我遗漏了什么。

from Spotfire.Dxp.Data import DataManager,DataTable
from Spotfire.Dxp.Application.Scripting import ScriptDefinition
from System.Collections.Generic import Dictionary,List
from System.Collections import ArrayList
from Spotfire.Dxp.Framework.ApplicationModel import NotificationService
import clr

table=List[DataTable]()
table.Add(Document.Data.Tables["test"])
Document.Data.Tables.Refresh(table)

我使用的 spotfire 版本是 7.11。主要问题是对主数据表的选择完全不影响按需表的数据。谢谢

【问题讨论】:

    标签: python spotfire


    【解决方案1】:

    脚本看起来不错,应该可以按预期工作。但是,当您使用脚本重新加载按需表时,只需确保在按需设置中未选中“自动加载”和“允许缓存”复选框。

    问候, 安库什

    【讨论】:

    • 有没有办法为已经存在的表更改这些设置。除非我创建一个新的数据表,否则我似乎找不到它
    • 是的,有一种方法——转到编辑 -> 数据表属性 ->,在常规中,你可以在右侧看到一个选项数据类型 -> 设置,即按需设置,您可以在底部找到“自动加载”和“允许缓存” .
    • 抱歉,我花了这么长时间才回复。我想我使用的版本与您不同,因为我找不到这些设置。我提出了我的解决方案,这是一种很老套的方法。
    【解决方案2】:

    所以,我不确定这是否会在未来的版本中更新,但我收到了公司的回复,说我的将无法做到这一点。我解决它的方法是创建一个标记,该标记仅用于从原始表更新按需表的数据。然后我创建了一个脚本来更新这些标记以匹配我正常使用的标记。这样,您仍然可以在表格上标记内容,然后有一个按钮可以单独更新按需表格中的数据。重要的是,每个按需数据表都有自己的标记,这些标记将通过脚本进行更新。

    【讨论】: