按SUBSTRING分组-错误不是GROUP BY表达式

2020-09-05 01:36发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好大师,

我有一个要求,我需要根据部门来获取特定总帐的本地货币汇总。

考虑以下查询-

选择BSEG〜BUKRS,
          BSEG〜GJAHR,
           BKPF〜MONAT,
          BSEG〜HKONT,
          大小写子字符串(setleaf〜SETNAME,1,3)
            当" MBG"然后" MBG"
            当" ETB"然后" ETB"
            当'EMP'然后'EMP'
            ELSE setleaf〜SETNAME
          END AS Division_type,
          BKPF〜WAERS,


         SUM(BSEG〜DMBTR)作为TOTO_LOCAL
     来自(BSEG AS BSEG
            内部联接BKPF AS BKPF
            在BKPF〜BELNR = BSEG〜BELNR上
            和BKPF〜BUKRS = BSEG〜BUKRS
            和BKPF〜GJAHR = BSEG〜GJAHR
            内部连接setleaf作为setleaf
            在setleaf〜VALFROM = bseg〜prctr
          )
          
     由bseg〜bukrs分组
              bseg〜gjahr,
              bkpf〜monat,
              BSEG〜HKONT,
             (case子串(setleaf〜SETNAME,1,3)
          当" MBG"然后" MBG"
          当" ETB"然后" ETB"
          当'EMP'然后'EMP'
          ELSE setleaf〜SETNAME
         结束   ) ,
        BKPF〜WAERS
     由bseg〜bukrs订购,
              bseg〜gjahr,
              bkpf〜monat,
              BSEG〜HKONT,
              分区类型,
              BKPF〜WAERS
 

在执行语法检查时,出现以下错误-

在算术表达式中只能使用基本算术类型。 " MBG"的类型无效。

有人可以建议解决此错误。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好大师,

我有一个要求,我需要根据部门来获取特定总帐的本地货币汇总。

考虑以下查询-

选择BSEG〜BUKRS,
          BSEG〜GJAHR,
           BKPF〜MONAT,
          BSEG〜HKONT,
          大小写子字符串(setleaf〜SETNAME,1,3)
            当" MBG"然后" MBG"
            当" ETB"然后" ETB"
            当'EMP'然后'EMP'
            ELSE setleaf〜SETNAME
          END AS Division_type,
          BKPF〜WAERS,


         SUM(BSEG〜DMBTR)作为TOTO_LOCAL
     来自(BSEG AS BSEG
            内部联接BKPF AS BKPF
            在BKPF〜BELNR = BSEG〜BELNR上
            和BKPF〜BUKRS = BSEG〜BUKRS
            和BKPF〜GJAHR = BSEG〜GJAHR
            内部连接setleaf作为setleaf
            在setleaf〜VALFROM = bseg〜prctr
          )
          
     由bseg〜bukrs分组
              bseg〜gjahr,
              bkpf〜monat,
              BSEG〜HKONT,
             (case子串(setleaf〜SETNAME,1,3)
          当" MBG"然后" MBG"
          当" ETB"然后" ETB"
          当'EMP'然后'EMP'
          ELSE setleaf〜SETNAME
         结束   ) ,
        BKPF〜WAERS
     由bseg〜bukrs订购,
              bseg〜gjahr,
              bkpf〜monat,
              BSEG〜HKONT,
              分区类型,
              BKPF〜WAERS
 

在执行语法检查时,出现以下错误-

在算术表达式中只能使用基本算术类型。 " MBG"的类型无效。

有人可以建议解决此错误。

付费偷看设置
发送
3条回答
梦想连接
1楼-- · 2020-09-05 01:55

该错误可能是在GROUP BY子句的CASE中。 您可以尝试删除CASE周围的括号吗? 不知道GROUP BY是否完全支持CASE,您可以尝试从SELECT和GROUP BY中删除整个CASE吗? 您使用哪种ABAP版本?

bbpeas
2楼-- · 2020-09-05 02:06

您的查询"不带""分组依据"有效吗?

BTW:您正在使用什么版本的ABAP?

梦想连接
3楼-- · 2020-09-05 01:52

我认为您可以直接按setleaf〜setname分组,结果应该相同。

一周热门 更多>