Элемент динамического запроса, используемый для сортировки
Я использую 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 ответа
Столбец в Framework Manager должен иметь тип данных. Только один тип данных. Поэтому вам нужно привести ваш столбец даты к правильно сортируемой строке. Например, формат "гггг-мм-дд".
Вы используете два разных типа формата данных, поэтому в строке приглашения используйте токен вместо строки (#prompt('sortorder','token')#)