点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
尊敬的专家,
下午好,想寻求建议:
循环一个内部表i_material并命名为BAPI_MATERIAL_STOCK_REQ_LIST。
然后,将MRP项追加到另一个内部表gt_mrp_items中。
i_material的LOOP之后,具有这3种类型的MRP元素(AR; SB; BB)的记录将被过滤到各个内部表,例如gt_mrp_ar; gt_mrp_sb和gt_mrp_bb用于不同的逻辑。
在i_material INTO DATA(lwa_material)中循环。 *调用此bapi以获得材料的详细信息 通话功能'BAPI_MATERIAL_STOCK_REQ_LIST' 出口 植物= l_植物 get_item_details = abap_true get_ind_lines = abap_true material_long = lwa_material-matnr selection_rule = gc_rule 输入 返回= lwa_return 桌子 mrp_items = lt_mrp_items。 如果lwa_return-type = gc_s。 将lt_mrp_items的行追加到gt_mrp_items。 **(一个)** DATA(lt_mrp_ar)=过滤器#(gt_mrp_items使用键mrp_element_ind WHERE mrp_element_ind ='AR')。 将lt_mrp_ar附加到gt_mrp_ar 万一。 结局。 **(B)** DATA(gt_mrp_ar)=过滤器#(gt_mrp_items使用键mrp_element_ind,其中mrp_element_ind ='AR')。
我的问题是,我应该在循环后还是循环内过滤#
(A)或(B)哪个效率更高?
请忠告。
非常感谢。
关。
你好。
我认为最好在循环之外进行过滤。 这不是因为FILTER语句,而是因为在循环内执行代码时,您需要再加上1个辅助变量(LT_MRP_AR)和APPEND,这比直接过滤它要慢。
请以后在发布代码时使用编辑器中的代码按钮。 这次我为您做了。
还-gc_s作为'S'的常量吗? 真? 您知道常量的想法是固定值并使代码更易于理解。 gc_success呢?
亲爱的马修,
对不起,请稍后答复。 并感谢您的帮助->发布代码。
将来将尝试使变量更"有意义"。
非常感谢。
最好的问候
关。
亲爱的奎恩,
感谢您提供信息。
非常感谢。
最好的问候
关。
一周热门 更多>