有人可以帮我创建一些允许我选择相对时间段的东西(最后7天,14天,30天的输入框)以及使用SPOTFIRE中的日期过滤器选择特定日期范围的功能吗?
我有想法,但看起来我需要编写一个python脚本。没有经验。感谢任何帮助。
我可能想做的是:
编写一个在输入框更新时更新的脚本。首先检查脚本以查看值是0还是null(取决于您选择的位置)。如果是,它将删除可视化的数据限制表达式。如果输入框中包含有效值,则需要(a)重置日期过滤器以选择所有值,并(b)将可视化的数据限制表达式设置为[Date] > Max(DateAdd(‘dd’, -${p.NumberOfDays}, [Date]))
答案 0 :(得分:0)
小心问XY Problems,但在您的情况下,您可以在Limit Data Using Expression框中使用此表达式,以便可视化对象产生影响。
[Date] >= DateAdd('dd', ${p.NumberOfDays} * -1, [Date])
AND
[Date] < DateTimeNow()
注意,如果[Date]
是DateTime类型,则需要将其强制转换为日期以消除缺少的部分日期。
[Date] >= DateAdd('dd', ${p.NumberOfDays} * -1, Cast([Date] as Date))
AND
Cast([Date] as Date) <= Cast(DateTimeNow() as Date)
答案 1 :(得分:0)
我使用了这里详述的技术: https://community.tibco.com/questions/calculated-date-filters
我在文本区域创建了一个下拉列表控件,命名属性为NextNDays并设置了Expressions =
接下来的30天:
显示名称=“下30天”
Expression =“If(DateDiff('day',DateTimeNow(),[MY_DATE_FIELD])&lt; 31和[MY_DATE_FIELD]&gt; DateTimeNow(),True)”
接下来的60天:
显示名称=“下一个60天”
Expression =“If(DateDiff('day',DateTimeNow(),[MY_DATE_FIELD])&lt; 61和[MY_DATE_FIELD]&gt; DateTimeNow(),True)”