2016-09-13 37 views
1

我想弄清楚如何讓用戶從屬性控制中選擇多個值,並將這些值傳遞給過濾器。Spotfire應用從屬性控件的多選值使用腳本

該過濾需要有條件的兩個不同的相關表,所以我必須使用與屬性控件綁定的列表框,並使用腳本處理過濾。

我有一個當前的工作版本,只允許一個選擇,但我需要能夠選擇多個。與所有選項過濾

兩個表中選擇 enter image description here

兩個表中選擇 enter image description here

我使用1個選擇同時篩選腳本程序1過濾是:

from Spotfire.Dxp.Application import Filters from 
Spotfire.Dxp.Application.Filters import CheckBoxFilter 

Filter1=Document.FilteringSchemes[0].Item[myDataTable].Item[myDataTable.Columns.Item["Program_Name"]].As[CheckBoxFilter]() 
Filter2=Document.FilteringSchemes[0].Item[myDataTable2].Item[myDataTable2.Columns.Item["Program_Name"]].As[CheckBoxFilter]() 

program=Document.Properties["SelectedProgram"] 

Filter1.IncludeEmpty = False for value in Filter1.Values: 
Filter1.Uncheck(value) 

Filter2.IncludeEmpty = False for value in Filter2.Values: 
Filter2.Uncheck(value) 

if program == "All": Filter1.Check(program) Filter2.IncludeEmpty = 
False for value in Filter2.Values:  Filter2.Check(value) if program 
<> "All": Filter1.Check(program) Filter2.Check(program) 

回答

0

問題是程序中有多個值。添加另一個for循環來解析每個選定的值

for programvalue in program: 
    if programvalue == "All": 
    Filter1.Check(programvalue) 
    Filter2.IncludeEmpty = False 
    for value in Filter2.Values:   
     Filter2.Check(value) 
    if programvalue <> "All": 
    Filter1.Check(programvalue) 
    Filter2.Check(programvalue) 
相關問題