Cognos Report Studio 10.2.2提示宏输入日期

时间:2019-02-27 15:45:28

标签: cognos-10

使用Cognos 10.2.2 Report Studio,我创建了一个摘要报告,其中显示了每天运行的客户总数和客户总数。然后,我第二次请求将报告默认显示为过去7天。

我创建了一个提示宏,以便在报表打开时默认显示最近7天,但是如果用户希望在特定日期范围内运行,则提供提示选择。

我使用了这个似乎有效的提示宏:

[Date Enrollment] between #prompt ('Start Date', 'date', '[Start Date Current Week]')# and #prompt ('End Date', 'date', '[End Date Current Week]')#  

但是,用户希望运行总计#客户显示从开始日期注册到最后日期注册的运行总计-而不是过去7天。

通过此宏,仅显示图表上显示的日期的运行总计。她确实希望每天的“总数#个客户”默认为过去7天(这就是我创建宏的原因),但是她可以更改开始日期和结束日期。

我已附上报告的图片。黄色栏代表#在特定日期注册的客户。蓝色栏目前仅提供图表上显示的日期的运行总计。要求是运行总计,默认情况下显示所有注册日期(当前数据可追溯到2018年5月),其中#客户注册显示按天显示的总注册。

enter image description here

1 个答案:

答案 0 :(得分:0)

您正在遇到此问题,因为您正在过滤向图表提供查询的查询,以排除除提示中提供的日期以外的所有记录。为了使运行中的总计适用于所有值,则在进行计算时必须显示所有值。过滤器可以防止这种情况。

有一个解决方案。您必须使用嵌套查询。这等效于在SQL中使用子查询或CTE。步骤如下:

  1. 接受现有查询并删除您上面描述的过滤器
  2. 进入您的查询列表
  3. 拖动新查询
  4. 将原始查询拖动到新查询的右侧,如果正确完成,您应该会看到从原始查询到新查询之间的箭头
  5. 打开新查询
  6. 从源(原始)查询中选择要报告的字段
  7. 添加您之前使用的过滤器
  8. 转到报告页面
  9. 选择图表
  10. 更改Query属性以指向新查询

作为解释,请考虑源查询的输出。如果没有过滤器,它现在就在数据库中每天输出客户和每天的运行总计。一旦这两个数字都是在日一级计算的,我们就可以将其过滤到用户在高级查询中关注的日期。