我正在Webi 4.1中创建一个仪表板。当我运行提示时,我选择报告的开始和结束日期。但是,我有一个折线图,显示每月的音量趋势,我希望它排除结束日期,而是在此之前显示月份。
示例:我选择2016年6月1日作为开始日期,选择2017年6月14日(今天的当前日期)作为结束日期。但是对于折线图,我希望它显示2016年6月1日 - 2017年5月31日。
答案 0 :(得分:0)
BO中的日期函数并不像应该的那样成熟。
您可以检索在提示中输入的值,但它将是一个字符串。首先,我们需要将其转换为日期类型。我们将此变量称为[End Date]
。
=ToDate(UserResponse("Enter value for End Date:");"M/d/yyyy hh:mm:ss a")
这假设提示文本为“输入结束日期的值:”,并且您的本地日期格式为“M / d / yyyy hh:mm:ss a”)。根据需要进行调整。
一旦你有了这个,这是一个相对简单的计算,从日期减去当月的日期:
=LastDayOfMonth(RelativeDate([End Date];-DayNumberOfMonth([End Date])))
最后,您可以过滤图表以显示小于此的日期。
编辑以添加过滤逻辑
要在过滤器中使用上述内容,您需要另一个变量来确定是否应显示行。假设图表的显示日期来自名为[Date]
的对象,您可以执行以下操作:
=If [Date] < LastDayOfMonth(RelativeDate([End Date];-DayNumberOfMonth([End Date]))) Then 'Y' Else 'N'
将此项创建为名为[DisplayDate]
的变量,然后只需使用[DisplayDate] = 'Y'