💡
CASEWHEN式は戻り値の型に気を付ける
MotionBoard Viewで扱える関数はあまり多くないですが、その中で便利なのがこのCASEWHEN句。
条件の真偽によって、戻り値を返します。
CASEWHEN("dataitem1"<60, 'not passed', 'passed')
例えば日付項目がNULLだった場合、nullを返さないで、"未確定"という文字を返してほしいとき、
CASEWHEN("実査日" is null,'未確定',"日付項目")
とします。
しかし、これだとエラーになります。
'未確定'は文字型で戻ってくるのに対して、日付項目は日付型で戻ってしまうので、返ってくるもののデータ型が異なってしまうからです。
この場合、日付項目を文字型にして返ることが正しいので、
CASEWHEN("実査日" is null,'未確定',cast("日付項目" as char))
とします。
こうすると、返ってくるものが双方とも文字型となり、式が正常となります。
Discussion