在cognos中,我们可以避免在查询中的数据项中使用其参数时询问值的可选提示吗?

时间:2013-01-21 15:10:15

标签: cognos cognos-8 cognos-bi

实际上,我在Cognos 10.1 report studio工作。在我的报告中,我有两个提示,一个是可选的,另一个提示是必需的。我已经在数据项中使用了两个提示参数来处理某些情况。因此,可选提示也已转为必需。我们该怎么做才能避免这种情况?

2 个答案:

答案 0 :(得分:4)

我们可以使用#prompt()#。通常,#prompt()#用于故意强制参数保持某个值。我们应该使用#prompt()#。

而不是直接使用参数

例如,

假设,?参数1?在数据项中使用它并保存一个整数值,将其替换为#prompt()#,如#prompt('Parameter1','integer')#。

假设条件类似于

if(?Parameter1? is not null)
{  
   statement; 
}

它应该是,

if(#prompt('Parameter1','integer')# is not null) 
{
   statement; 
}

如果我们使用#prompt()#,我们可以使用数据项中的参数,而不会影响提示的用法。

答案 1 :(得分:1)

在数据项中使用的常规提示计算/逻辑始终是必需的,因为查询中的数据项必须呈现,并且不像表示项中那样是可选的,因此必须解决计算。就像其他的海报中提到的那样,提示宏##在我看来真实地服务于2个现实世界的目的,并且可以论证其他一些我们不会谈论的内容。

  1. 糟糕的人在提交查询之前搜索/替换替换(在这些情况下很方便)。
  2. 默认一个参数,如果丢失,8.4中的一个参数几乎不可能做到特别是在数据项中。
  3. 在MDX查询中,提示宏非常棒,因为在没有本机Cognos提示问题的情况下,查询中的#1硬搜索和替换有时会出现问题。