SSIS派生列使用UPPER将转换设置为BOOL(LTRIM(RTRIM

时间:2015-11-04 19:17:32

标签: ssis

我有一个需要设置为1或0的Flag。所以我使用Derived列转换将其转换为bool 因为只有当我对Y和N都使用OR运算符时,它才能生成代码。 以下代码适用于IF标志为Y和N条件

(DT_BOOL)(Flag == "Y" ? 1 : 0) || (DT_BOOL)(Flag == "N" ? 0 : 1)
** working only when FLAG = (Capital)Y OR N *****************

但是如果我的Flag很小'n'它不起作用它仍然设置为TRUE 我想让它UPPER并同时修剪它。我很难弄明白。 这是我的代码,但它不起作用

(DT_BOOL)(UPPER(RTRIM(LTRIM
    (Flag == "Y" ? 1 : 0)
)))
   ||(DT_BOOL)(UPPER(RTRIM(LTRIM(Flag == "N" ? 0 :1)
))) ***** this code is not working *****************

感谢您的时间。

PLEASE look at Tranformation Pic

1 个答案:

答案 0 :(得分:0)

试试这个......

(DT_BOOL)(UPPER(RTRIM(LTRIM(Flag))) == "N" ? 0 :1)