Oracle OBIEE Analytics 12c 日期验证

问题描述

OBIEE12c 中,我有多个报告,其中用户输入的是 2 个日期,即起始日期和截止日期。

对于所有这些报告,要求是点击'应用'按钮,一个普通的js应该被调用

  1. 我必须检索被调用的报告名称,以便仅对这些报告应用这些日期验证。
  2. 我必须检索用户选择的起始日期
  3. 我必须检索用户选择的截止日期
  4. 必须添加比较 From Date

我用单行解释的最终要求是 show an alert (after date comparison) to the user for couple of reports on click of Apply in OBIEE 12c

如果还有其他方法可以实现,请突出显示

我们已经在 OBIEE10g 中实现了上述要求,但是迁移/升级到 12c 后同样不起作用(10g 到 11g 和 11g 到 12c 两步过程

解决方法

我会使用标准的 BI 功能而不是调用 javascript。

如果要求确保报告的运行时间不超过 90 天,我将只使用标准仪表板提示开始和结束日期,然后在我的分析中添加一个带有表达式的过滤器

case when TimestampDiff(SQL_TSI_DAY,"Table"."Start Date","Table"."End Date" > 90 then 0 else 1 end

并使其等于 1。这将确保报告不返回数据。

然后我会使用相同的过滤器创建一个分析,而不仅仅是返回一行。然后可以将此分析用作部分的条件。您可以将一些静态文本放在一个部分中,该部分仅在条件不返回任何行时才显示,告诉用户他们的选择需要少于 90 天。您可以根据包含它的部分的逆条件选择是否显示分析。