在 spotfire dxp 的 URL 中插入文档 属性

Inserting Document property in an URL for a spotfire dxp

我有一个 URL 可以更改某些属性,当在浏览器中执行 URL 时将提取相应的数据。 URL的大致内容是这样的:

https://server/App/Detect.do?dm=Rel&daysBack=60&toolId=ETX500&chamberId=PM5&senSorName=Lower_Middle_Temperature_Mean&stepId=POLY&module=&fdcApplication=&contextGroup=&sampleSize=25&recentLots=&dateLotWafer=true&_dateLotWafer=on&chartIndex=0&groupBy=UserTag&priorGroupBys=UserTag&priorGroupByKeys=_NA_&trendStyle=Mean&xAxis=DateLotWafer&title=Fdc%20Trend%20Analysis

加粗的部分是可以动态变化的部分。 我在 spotfire (dcube) 中有一个 table,其中包含 toolIdchamberIdsenSorNamestepId 的列表。我已将其设置为当用户单击一行时,它将这些属性捕获到 4 个文档属性。 我使用文本区域提供一个link,但是有没有办法控制link的URL,以便我可以在[=]的那4个地方插入文档属性26=]?

任何见解都会有所帮助。 谢谢

您可以使用 Python 脚本来更新文本区域中的 HTML。在脚本中使用您的文档属性,您可以构建您需要的 link。由于文档属性在标记上更新,您可以将其添加到文档属性中,因此当它们更改时 url 会更新。

from Spotfire.Dxp.Application.Visuals import HtmlTextArea
#Set vis as script parameter to a text area visual
vis = vis.As[HtmlTextArea]()

def UpdateUrl():    
    attr1 = Document.Properties['DocProp1']
    attr2 = Document.Properties['DocProp2']
    url = "http://www.google.com?ID={}&SaleID={}".format(attr1,attr2)   
    htmlText = '''<a href="{}" target="_blank">Click Here</a>'''.format(url)    
    vis.HtmlContent = htmlText  # can use vis.HtmlContent += to append instead of replace
 
UpdateUrl()