查询管理器SAP

2020-08-27 03:03发布

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

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


亲爱的,我们需要创建一个报告,该报告表明80%的最畅销产品,即基于帕累托原理。 我要做的是从INV1表中选择产品代码和每行价格,由此得出产品的总销售量,并按降序排列。 我想获得百分比时,我还无法获得结果,因为我必须从产品的总金额中扣除总销售额的百分比,并将价值增加到80%。 尝试OVER PARTITION,但是在处理百分比时我遇到了问题。 附加了部分代码。

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

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


亲爱的,我们需要创建一个报告,该报告表明80%的最畅销产品,即基于帕累托原理。 我要做的是从INV1表中选择产品代码和每行价格,由此得出产品的总销售量,并按降序排列。 我想获得百分比时,我还无法获得结果,因为我必须从产品的总金额中扣除总销售额的百分比,并将价值增加到80%。 尝试OVER PARTITION,但是在处理百分比时我遇到了问题。 附加了部分代码。

付费偷看设置
发送
3条回答
悠然的二货
1楼-- · 2020-08-27 03:28

省略OVER PARTITION,我得到了结果,但是我仍然需要增加80%

 SELECT T1。" ItemCode",SUM(T1。" LineTotal")AS" Total",SUM(T1。" LineTotal"),SUM(T1。" LineTotal")* 100/(SELECT SUM(T0。"  LineTotal")FROM INV1 T0其中T0。" ItemCode"不为NULL)AS"%"
 从OINV T0内连接INV1 T1到T0。" DocEntry" = T1。" DocEntry"
 在T0。" DocDate"> ='20160101'
 按T1分组。" ItemCode"
 按"总计" DESC排序
 
Alawn_Xu
2楼-- · 2020-08-27 03:13

Cristian,您好,

请在您的问题中张贴代码。 您可以使用 code 按钮将其格式化为代码。

关于

Johan

黑丝骑士
3楼-- · 2020-08-27 03:28

Hi Cristian,

在行级别上使用子查询时,需要将其直接链接到该行。 在示例查询中,您只是返回所有内容。 请尝试以下操作:

选择X。[ItemCode]
       ,X。[总计]
       ,X。[占总时间的百分比]
 来自(SELECT T1。[ItemCode]
             ,SUM(T1。[LineTotal])AS [总计]
             ,((SUM(T1。[LineTotal])/ISNULL(NULLIF((选择Sum(r。[LineTotal])
                                                     从INV1 r
                                                     其中r。[ItemCode] = T1。[ItemCode])* 100,0),1))))AS [占总时间的百分比]
       从OINV T0
            内联接INV1 T1在T0上。[DocEntry] = T1。[DocEntry]
       T0。[DocDate]> ='2016/01/01'
       T1的GROUP BY。[[ItemCode])X
 X. [占总时间的百分比] <= 80
 按3 desc排序
 

此致

Johan

一周热门 更多>