2020-08-19 02:01发布
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 在启动Loop并实现业务... 显示全部
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
在启动Loop并实现业务逻辑之前,我想用相同的字符聚合内部表中的行。
我尝试使用"循环收集"将行从Itab1移到Itab2,这可以很好地工作,但是会花费太多时间。
我的要求是在我的逻辑在主循环中启动之前准备好内部表,以便容易汇总所有值。 我们有功能模块吗?
请提供任何可能的解决方案。
谢谢
嗨,大家好,
每个人,非常感谢您为帮助我做到这一点所做的努力。
我想对正在发生的事情以及在哪里进行编码提供更多的信息(我将自己定为ABAP的新手)。
我正在将此数据加载到2个不同对象之间的BW(Datawarehouse)中,因此没有在DB级别进行聚合的问题,因此它完全在BW专家例程中的内部表之间。 要求是将BW-APD转换为BW4HANA转换。
下面是我要修复的Dev中的示例代码。
不。 记录数:445,656。
使用现有代码,需要22秒才能完成,而使用下面的代码,则需要4-5分钟(我想尽可能地靠近)。 因此,在此过程中,我发现最大的不同是在ITab中汇总具有相同特征的行。 (BW-APD接收聚合数据时速度更快,而在BW4HANA中,我必须对其进行聚合)
新代码: * SOURCE_PACKAGE是源对象和内部表 * RESULT_PACKAGE是我尝试加载此数据的目标 * ITAB是我尝试汇总的第二个Inetrnal表 码: 类型:开始于Y_SOURCE_FIELDS, GL_ACCOUNT TYPE/BI0/OIGL_ACCOUNT, FISCPER TYPE/BI0/OIFISCPER, FIELDNM003类型/BI0/OIFM_AMOUNT1," ECC FIELDNM001类型/BI0/OIFM_AMOUNT1," BW FIELDNM005类型/BI0/OIFM_AMOUNT1," BAL END OF Y_SOURCE_FIELDS。 类型:开始于Y_TARGET_FIELDS, /BIC/ZRE_REC TYPE/BIC/OIZRE_REC, GL_ACCOUNT TYPE/BI0/OIGL_ACCOUNT, FISCPER TYPE/BI0/OIFISCPER, /BIC/ZSRC_AMT TYPE/BI0/OIFM_AMOUNT1, /BIC/ZTRGT_AMT TYPE/BI0/OIFM_AMOUNT1, CHRT_ACCTS类型/BI0/OICHRT_ACCTS, FISCVARNT TYPE/BI0/OIFISCVARNT, 余额类型/BI0/OIFM_AMOUNT1, END OF Y_TARGET_FIELDS。 数据:LS_SOURCE类型Y_SOURCE_FIELDS, LS_TARGET类型Y_TARGET_FIELDS, Y_SOURCE_FIELDS初始大小为0的ITAB类型标准表, WA TYPE Y_SOURCE_FIELDS。 BREAK-POINT。 * DELETE SOURCE_PACKAGE WHERE FIELDNM005 = 0。 在SOURCE_PACKAGE ASSIGNING 处循环播放。 将对应移动到LS_SOURCE。 将LS_SOURCE收集到ITAB中。 结局。 删除ITAB WHERE FIELDNM005 = 0。 向ITAB进发。 将WA移动到LS_SOURCE。 LS_TARGET-GL_ACCOUNT = LS_SOURCE-GL_ACCOUNT。 LS_TARGET-FISCPER = LS_SOURCE-FISCPER。 LS_TARGET-/BIC/ZSRC_AMT = LS_SOURCE-FIELDNM003。 LS_TARGET-/BIC/ZTRGT_AMT = LS_SOURCE-FIELDNM001。 LS_TARGET-BALANCE = LS_SOURCE-FIELDNM005。 LS_TARGET-CHRT_ACCTS ='0010'。 LS_TARGET-FISCVARNT ='V6'。 I_COUNT = I_COUNT + 1。 * LS_TARGET-/BIC/ZRE_REC = I_COUNT。 将LS_TARGET移动到RESULT_FIELDS。 将RESULT_FIELDS附加到RESULT_PACKAGE。 结局。 结局。
希望这很清楚。
感谢您的帮助:-)!
最多设置5个标签!
嗨,大家好,
每个人,非常感谢您为帮助我做到这一点所做的努力。
我想对正在发生的事情以及在哪里进行编码提供更多的信息(我将自己定为ABAP的新手)。
我正在将此数据加载到2个不同对象之间的BW(Datawarehouse)中,因此没有在DB级别进行聚合的问题,因此它完全在BW专家例程中的内部表之间。 要求是将BW-APD转换为BW4HANA转换。
下面是我要修复的Dev中的示例代码。
不。 记录数:445,656。
使用现有代码,需要22秒才能完成,而使用下面的代码,则需要4-5分钟(我想尽可能地靠近)。 因此,在此过程中,我发现最大的不同是在ITab中汇总具有相同特征的行。 (BW-APD接收聚合数据时速度更快,而在BW4HANA中,我必须对其进行聚合)
希望这很清楚。
感谢您的帮助:-)!
一周热门 更多>