如何用Python脚本基于Spotfire文档属性修改OSIsoft PI检索起始时间?
在Spotfire中通过Python脚本修改OSIsoft PI AF数据源的起始时间
前提准备
- 已创建名为
StartTime的文档属性,属性类型设置为DateTime(需保证输入为合法日期时间值)。 - 目标PI AF数据源已在Spotfire中配置完成(即你提到的曾设置
*-24H起始时间的数据源)。
Python脚本实现
from Spotfire.Dxp.Data import * from Spotfire.Dxp.Data.Import import * from System import DateTime # 替换为你实际使用的PI AF数据源名称 data_source_name = "你的PI AF数据源名称" data_source = Document.Data.DataSources[data_source_name] # 确认数据源类型为PI AF if isinstance(data_source, PIAFDataSource): # 获取数据源查询配置 query_config = data_source.QueryConfiguration # 从文档属性读取自定义起始时间 custom_start_time = Document.Properties["StartTime"] # 替换数据源的起始时间参数 query_config.StartDate = custom_start_time # 保存配置并刷新数据源 data_source.QueryConfiguration = query_config data_source.Refresh()
关键说明
- 必须将脚本中的
"你的PI AF数据源名称"替换为数据面板里显示的实际数据源名称。 - 脚本会直接覆盖数据源原有的起始时间参数,无需手动修改数据检索提示窗口的设置。
- 若需同步修改结束时间,可添加
query_config.EndDate = 自定义结束时间的逻辑,处理方式与起始时间一致。
内容的提问来源于stack exchange,提问作者Yahya.A
相关产品推荐
相关产品推荐

