使用总和时出错

2020-08-30 05:56发布

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

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


大家好

当条件等于" 1380"时,我试图对WERTN字段求和,并将总和值输入到DHU1字段。请您帮我纠正以下错误。

abap11.jpg (153.3 kB)

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

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


大家好

当条件等于" 1380"时,我试图对WERTN字段求和,并将总和值输入到DHU1字段。请您帮我纠正以下错误。

abap11.jpg (153.3 kB)
付费偷看设置
发送
6条回答
骆驼绵羊
1楼-- · 2020-08-30 06:26

祖拜尔苏丹

您可以在单个查询中执行此操作, 您不需要编写循环。

例如下面的代码

 SELECT werks,datum,uzeit,extnb,deprt,dpext,SUM(amunt)AS amunt
   表的对应字段@gt_compr
   来自yrt_h_sales
   @so_werks在哪里
   AND基准输入@so_datum
   

只需参考上面的代码并修改您的代码即可。

注意事项

南山jay
2楼-- · 2020-08-30 06:41

zubair苏丹

在这种情况下,您需要使用控制中断语句概念。

请参阅以下链接以了解有关控制中断语句的更多信息。

控制中断语句

使用这些语句的拇指规则,

在应用规则的必填字段之前的所有字段都必须相等,只有这样您的代码才会生效。

如果您仅关注成本中心,则将成本中心移至内部表中的第一个字段。

致谢!!!

渐行渐远_HoldOn
3楼-- · 2020-08-30 06:26

在LOOP中没有像SUM这样的方法。 使用控制中断,就像我在评论。 我只是不明白为什么您只写出特定的成本中心,而是全部选择。

三十六小时_GS
4楼-- · 2020-08-30 06:50

祖拜尔苏丹

你想要的是 ALV小计有什么用,您不必总结使用ALV,然后编写,ALV可以为您完成:

 cl_salv_table => factory(
   输入
     r_salv_table = salv
   改变
     t_table = it_keph)。
 salv-> get_sorts()-> add_sort(
                              出口
                                columnname ='KOSTL'
                                顺序= if_salv_c_sort => sort_up
                                小计= if_salv_c_bool_sap => true
                             )。
 salv-> get_aggregations()-> add_aggregation(
                               出口
                                columnname ='WERTN'
                                聚合= if_salv_c_aggregation => total)。
 salv-> get_aggregations()-> set_aggregation_before_items()。
 salv-> display()。
 

如果您仍要坚持使用WRITE类语句,请使用AT END KOSTL(请将其移至结构的顶部,而不是最后一个组件)进行汇总和编写,然后在该语句上按F1帮助 SAP示例。

奄奄一息的小鱼
5楼-- · 2020-08-30 06:47

您好,

您的代码和逻辑看起来不太好。 您能否精确地说出您要达到的目标? 您是否只想写出具有特定成本中心的行并得到它们的总和,还是想将所有行写成特定成本中心的当前总和到字段DHU1中?

此致

伊戈尔

Baoming ROSE
6楼-- · 2020-08-30 06:25

有多种实现目标的方法,具体取决于您的需求。

  1. Satish Kumar Balasubramanian
  2. 的建议
  3. 通过循环语句,将总和保存在具有成本中心总计的本地内部表中,并在最后一行或每一行之后获取最终结果。

此致

伊戈尔

一周热门 更多>