点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好,
我有一个要求。
在内部表格itab中,我有以下字段
文档编号。 日期金额
1800000170 20190701 100000.00
1800000219 20190802 55000.00
1400000232 20190829 315.00
1800000170 20190829 5000.00-
1800000170 20190903 10000.00-
0900000332 20190918 492.24
我想对其进行排序以获得所需的结果
文件编号 日期金额
1800000170 20190701 100000.00
1800000170 20190903 10000.00-
1800000170 20190829 5000.00-
1800000219 20190802 55000.00
1400000232 20190829 315.00
0900000332 20190918 492.24
其中起始日期为(20190701)的文件编号应放在首位,并且相同文件编号也应放在首位。
请为此提供准确的解决方案。
谢谢
嗨,
如果您按文档使用SORT Itab,则它应该同时包含所有文档编号。
如果您也要对该组中的日期进行SORT日期。 您可以根据需要使用SORT itab文档DESCENDING日期ASCENDING或根据需要更改排序方向。
希望这会有所帮助。
注意事项
GK
你好库纳尔·古萨哈尼,
要对内部表的两个字段进行排序,您需要为每个字段显式指定顺序,如下所示,下面的示例代码。 使用以下概念并相应地应用。
按文件编号升序排序SOTA ITAB
降序金额。
在我看不到任何订单的情况下
致谢
"请提供准确的解决方案"-SCN的目的不是为他们做事。 从问题文本尚不清楚技术挑战到底是什么。 这就是为什么其他一些答案实际上试图解释SORT命令语法的原因。
在这种情况下,没有单一的排序顺序,您需要操纵记录以这种方式将它们放在一起。 显然,起初记录是按日期排序的,但是您似乎想将具有相同编号的记录分组,而不考虑它们的日期。
因为有两个单独的任务(按日期排序,然后分组 按数字),我认为您需要使用第二个临时表来安排记录。 如何进行精确处理取决于数据量,如何呈现等。尽管编程似乎不是一件非常具有挑战性的事情,所以我对此问题有些困惑。 不需要高级知识,只需想到一种算法即可。 在纸上写下第一个想到的解决方案,然后看看是否可以改进。
1。按日期排序itabA。
2.itabB = itabA。
3.SORT itabB BY文档编号日期。
4。从itabB比较文件中删除相邻的重复文件。
5。按日期排序itabB。
6。
在itabB上循环播放
。在itabA的文档编号= itabB文档编号
itabC = itabA。
附加itabC。
ENDLOOP。
ENDLOOP。
7。结果= itabC
前成员
使用以下代码,它将有助于按您说的进行排序
一周热门 更多>