Tibco现场大火;在使用IronPython的条件下刷新表

我编写了以下脚本,以便在特定条件下刷新表。

我已经创建了一个名为“ lob”的文档属性。

某些表将根据lob的值进行刷新,而其他表将根据lob的值进行刷新。

请注意,有些表格可能根本没有刷新。这就是请求我的脚本从每个表中删除数据然后刷新的原因。

此外,我已经在“ piareadyToDisplay”名称下创建了一个文档属性。刷新表时,此属性等于“否”。表格的刷新完成后,document属性等于“是”。

似乎表格正在根据我的需要刷新,但是文档属性“ piareadyToDisplay”无法正常工作。

您在我的脚本中发现任何错误吗?

预先感谢您的答复。

**Script**

Document.Properties["piareadyToDisplay"] = "No"

import clr

from Spotfire.Dxp.Data import RowSelection,IndexSet

MyTable = Document.Data.Tables["In Force"]

MyTable.RemoveRows(RowSelection(IndexSet(MyTable.RowCount,True)))

MyTable = Document.Data.Tables["ACP_IF"]

MyTable.RemoveRows(RowSelection(IndexSet(MyTable.RowCount,True)))

MyTable = Document.Data.Tables["NAYO_IF"]

MyTable.RemoveRows(RowSelection(IndexSet(MyTable.RowCount,True)))

MyTable = Document.Data.Tables["In Force"]

MyTable.RemoveRows(RowSelection(IndexSet(MyTable.RowCount,True)))

MyTable = Document.Data.Tables["pol_start_dt"]

MyTable.RemoveRows(RowSelection(IndexSet(MyTable.RowCount,True)))

MyTable = Document.Data.Tables["Policy_Info_Fire_append_non_fire"]

MyTable.RemoveRows(RowSelection(IndexSet(MyTable.RowCount,True)))

MyTable = Document.Data.Tables["policy_info_covers_mani"]

MyTable.RemoveRows(RowSelection(IndexSet(MyTable.RowCount,True)))

MyTable = Document.Data.Tables["Intermediaries"]

MyTable.RemoveRows(RowSelection(IndexSet(MyTable.RowCount,True)))

MyTable = Document.Data.Tables["Policy_Info_HH _with_Descriptions"]

MyTable.RemoveRows(RowSelection(IndexSet(MyTable.RowCount,True)))

MyTable = Document.Data.Tables["Policy_info_Companies_with_descriptions"]

MyTable.RemoveRows(RowSelection(IndexSet(MyTable.RowCount,True)))

MyTable = Document.Data.Tables["policy_multiple_Usages"]

MyTable.RemoveRows(RowSelection(IndexSet(MyTable.RowCount,True)))

import clr

from System.Collections.Generic import List,Dictionary

from Spotfire.Dxp.Data import DataTable

from Spotfire.Dxp.Framework.Applicationmodel import NotificationService



--- Empty list to hold DataTables

Tbls = List[DataTable]()

str1 = Document.Properties["lob"] ;

str2 = "5049242";

if (str2 in str1)==True:

Tbls.Add(ACP)

str3 = "5049234";

if (str3 in str1)==True:

Tbls.Add(NAYO_IF)

str4 = "Πυρός";

if (str4 in str1)==True:

Tbls.Add(house)

Tbls.Add(companies)

Tbls.Add(use)



Tbls.Add(polstart)

Tbls.Add(interm)

Tbls.Add(covers)


--- Notification service

notify = Application.GetService[NotificationService]();

--- Execute something after tables are loaded

def afterLoad(exception,Document=Document,notify=notify):

if not exception:

  Document.Properties["piareadyToDisplay"] = "Yes"



else:

  notify.AddErrorNotification("Error refreshing table(s)","Error details",str(exception))

--- Refresh table(s)

Document.Data.Tables.RefreshAsync(Tbls,afterLoad)
dezhaochao 回答:Tibco现场大火;在使用IronPython的条件下刷新表

已解决

为了显示文档属性“ PIAreadyToDisplay”的值:

  1. 我插入了文本区域,并插入了标签-属性控件。
  2. 为此,我在“数据”字段中选择了一个表,然后 在“值”字段中选择了我的文档属性。当表 (步骤2的)未刷新,文档属性的值未刷新 改变了。

在第2步中,我选择了一个将始终刷新的表。

本文链接:https://www.f2er.com/3129392.html

大家都在问