用于排序的动态查询项

时间:2014-02-26 11:16:20

标签: cognos cognos-8 cognos-10

我正在使用Cognos Framework Manager,我正在为动态排序创建数据项。我正在使用CASE WHEN创建数据项,这是我的示例代码:

CASE #prompt('SortOrder', 'string')#
WHEN 'Date' THEN <Date Column>
WHEN 'ID' THEN <String Column>
END

我收到此错误QE-DEF-0405 Incompatible data types in case statement。虽然我可以将日期列强制转换为字符串,但是对于'date'选项会不会导致排序错误?我应该以不同的方式投射日期列,投下整个案例,还是我在错误的树上吠?根据我的问题,在通过CASE创建包含多个列数据类型的动态列时是否应该有一般规则?

2 个答案:

答案 0 :(得分:2)

Framework Manager中的列应具有数据类型。只有一种数据类型。 因此,您需要将日期列转换为正确排序的字符串。 例如。 'yyyy-mm-dd'格式。

答案 1 :(得分:0)

您使用的是两种不同类型的数据格式,因此在提示功能中使用令牌代替字符串(#prompt(&#39; sortorder&#39;,&#39;令牌&#39;)#)