1

我正在使用 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。尽管我可以将日期列转换为字符串,但这不会使“日期”选项的排序出错吗?我应该以不同的方式投射日期列,投射整个案例,还是我在错误的树上吠叫?CASE根据我的问题,通过多列数据类型创建动态列时是否应该有一般规则?

4

2 回答 2

2

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

于 2014-02-26T12:30:17.687 回答
0

您正在使用两种不同类型的数据格式,因此在提示函数中使用令牌而不是字符串 (#prompt('sortorder','token')#)

于 2018-04-19T08:47:21.337 回答