Spotfire IronPython 跳过来自某些 table 的过滤器

Spotfire IronPython Skip filters from certain table

我正在使用 Spotfire 7.10。

我有一个脚本,用于更新包含活动过滤器的文档 属性。为此,我循环匹配 "status:m" 搜索的过滤器,如下所示:

filterPanel.InteractiveSearchPattern = "status:m"
for filter in filterPanel.FiltersMatchingSearchPattern:
    filteroutput = filter.FilterReference.ToString()
    content += filteroutput + "\n"

我想跳过来自表 1 的过滤器,而应该显示表 2 中的过滤器。

知道如何跳过它们吗? table 都有名称重叠的字段,例如"Color",所以我不能按名称去,但需要参考原始数据 table。

非常感谢任何提示。

您可以使用 ParentGroup 来确定过滤器属于哪个table,然后跳过您不需要的那些

import Spotfire.Dxp.Application.PanelCollection

import Spotfire.Dxp.Application.PanelTypeIdentifiers
from Spotfire.Dxp.Application import Panel
from Spotfire.Dxp.Application.Layout import PanelState as ps
for panel in Document.ActivePageReference.Panels:
 if panel.TypeId.DisplayName == "Filters":
  panel.InteractiveSearchPattern = "status:m"
  for filter in panel.FiltersMatchingSearchPattern:
   filteroutput = filter.FilterReference.ToString()
   print "Table-" + str(filter.Context.ParentGroup.Name) + "---Filter - " +str(filteroutput)