点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好
我们最近将系统从EHP4升级到EHP7。 我们有如下一段代码,该代码在EHP4中可以正常工作,但在EHP7中的行为却有所不同。 ITAB1在所有行的字段COL10,COL11和COL12中都有值。 在EHP4中,SUM语句将COL10,COL11和COL12中的值相加(根据" AT END OF"文档),并填充到ITAB2中。 但是在EHP7中,ITAB2中的COL10列已填充为0。 像在EHP4中一样,在COL11和COL12列中填充总和值。
我附上了表ZZTAB1的屏幕快照,从中键入了ITAB1和ITAB2。 GP1和GP2被命名为包括。
EHP4和EHP7的AT END OF语句之间是否有区别? 请告知。
按GP1 GP2排序itab1。 在itab1处循环进入wa1。 在GP2末尾。 和。 将wa1附加到itab2。 Endat。 结束循环。
(50.3 kB)
不知道这是否与它有任何关系,但是从EhP4到EhP7还应该意味着肯定要迁移到UniCode系统...检查SAP注释?
除了其他人指出的以外,这似乎是COLLECT命令的一种情况,而不是AT END ... SUM ...
也请发布工作代码,伪代码替换不适用于以下情况: 就像您所说的那样,存在一个奇特的问题。
使用别名(GP1,GP2)非常少见,也许是AT END出现了一个错误。
您应该在SAP支持部门开票。 您需要提供一个SAP示例来重现(带有示例数据或访问系统的最少代码)。
如果这只是程序中的错误,如果您希望我们进行调查,请提供可重现的示例 代码和一些示例数据。 例如:
PS:您的代码看起来很奇怪,因为您仅按GP1和GP2进行排序。 您应该按MANDT,OBJNR,GP1和GP2进行排序,因为" AT END OF component "在" component"左侧的所有组件处进行分组中断。 如果至少没有按MANDT和OBJNR进行排序,则会得到错误的结果。
然后使用哈希表进行收集。 高效。
如果在GP1上首先进行排序,什么时候GP2会结束?
Hello Jelena Perfiljeva,Matthew Billingham
我们已将SUM更改为COLLECT。 现在可以使用了。 谢谢。
一周热门 更多>