0

以下の文のどこが間違っているのか、誰にも言えませんか。

現在、私はcognos 10.1.1で作業しています

case     
  when extract(month,_last_of_month (current_date))=1 then ('January')
  when extract(month,_last_of_month (current_date))=2 then ('January','February')  
end

修正できませんでした。

エラーコードはqe-def-0459 ccleexception parsing errorです

4

2 に答える 2

1

1 つの値のみを返す必要があります。

case
   when extract(month,_last_of_month(current_date)) = 1 then 'January'
   when extract(month,_last_of_month(current_date)) = 2 then 'January, February'
end
于 2013-01-17T14:51:42.607 に答える
1

また、Cognos のすべての Case ステートメントには、else 条件も必要であると考えています。目の前にコグノスがなく、使用している関数の構文を思い出せませんが、良さそうです。

また、cognos の一部のバージョンでは、expr = 1 の代わりにテキストを返すため、eval 式を戻り値の型と同じ意味に変換する必要があったことを覚えています。Cast(expre, varchar) = Cast(1, varchar) にする必要があります。 --- これが 10 に当てはまるかどうかは定かではありませんが、8.3 と 8.4 のように最近では問題が発生したことは間違いありません。

于 2013-01-17T15:46:56.847 に答える