Wrong data type identified in calculations

When creating new calculations with the FX transformation, in many cases DSP seems to get ‘lost’ in identifying the data type derived from the calculation.
For example the expression

CASE WHEN EMAIL IS NULL THEN true ELSE false END

is correctly identified as a BOOLEAN type.

But with a small modification

CASE WHEN IFNULL(EMAIL, '') = '' THEN true ELSE false END

It gets messed up and says it returns a STRING, which is incorrect.

What do you do in these cases?
Do you force the conversion with something like

TO_BOOLEAN(CASE WHEN IFNULL(EMAIL, '') = '' THEN true ELSE false END) 

?

I’m not sure about the processing impact of having lots of conversion functions (or LEFTs, etc) that are not necessary, but if we don’t put them when validating DSP returns the wrong type of data, maybe the HANA optimizer discards them?

Regards,

Scroll to Top