点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我在CE_PROJECTION中有以下语句,OR条件不起作用。
只要FUNCCUR为YEN,它就起作用,当FUNCCUR为NTD时,它不乘以100。有人可以让我知道我是否可以像下面的用法那样在CE_CALC中使用OR条件,否则请更正我。
CE_CALC('IF((" FUNCCUR" =``YEN''或" FUNCCUR" =``NTD''),(" GLTSL07" * 100.00)," GLTSL07")',十进制(17,2) ),如" GLTSL07_2",
我可以用大小写相同,但是只是想学习上面代码中的错误。
谢谢
Gokul
看起来像是引号错误。
使用双引号("")时,是指列名,而不是值。 要指定值,请使用单引号('')。 要在单引号内指定单引号,请通过在一行中多次提供单引号来使用转义机制:
OR可以在CE_CALC函数中以这种方式使用。 您是否已检查FUNCCUR是否确实具有值" NTD",并且该值不包含例如 尾随空格使if条件失败?
致谢,
弗洛里安
PS:正如您已经提到的,您应该不使用CE函数来解决您的要求,因为它们已经被淘汰了一段时间。
Lars, >
非常感谢您的答复。
我在YEN和NTD之前删除了单引号,现在我遇到了错误。
SAP DBTech JDBC:[257]:sql语法错误:" YEN"附近的语法不正确:第180行第26行(在pos 15391处)
CE_CALC('IF(("" RTCUR" ='YEN'或" FUNCCUR" ='NTD'),(" GLTSL07" * 100.00)," GLTSL07")',十进制(17,2))AS" GLTSL07_2 ",
如果我加引号不给出错误。
也只想添加以下代码
" FUNCCUR"-这是双引号,代表字段名称
" YEN"-用两个单引号表示值-如果我将其更改为1个单引号,则会出错。
CE_CALC('IF((" FUNCCUR" =``YEN''或" FUNCCUR" =``NTD''),(" GLTSL07" * 100.00)," GLTSL07")',十进制(17,2) ),如" GLTSL07_2",
上面的代码的问题是,或运算符后的任何条件都不起作用,这意味着当我通过YEN货币传递记录时,它乘以100,但是当我通过NTD传递记录时,它不与100乘。 OR条件不起作用。 如果我切换YEN和NTD,则备用条件可以正常工作。 如果语法正确,可以请您更正。
谢谢
Gokul
一周热门 更多>