为什么我要从VBRK获取这么长时间? 请帮我解决这种情况

2020-09-19 06:30发布

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

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


谁能帮我这么久如何从VBRK获取数据加入VBRP? 我的客户希望运行此程序大约3个月或更长时间,并且运行时间很长。 然后,我在SE30中运行了该程序,并注意到此代码(程序中使用该代码的时间为3次)很长一段时间。 我可以优化此代码吗? 请帮助我找出我的错误

选择
  VBRP〜VBELN
  VBRP〜POSNR
  VBRP〜FKIMG
  VBRP〜NETWR
  VBRP〜AUBEL
  VBRP〜AUPOS
  VBRP〜MWSBP
  表GT_VBRP的对应字段
  从VBRK
  内联VBRP
  在VBRP〜VBELN = VBRK〜VBELN
  对于LT_VBAP中的所有条目
  在哪里VBRP〜AUBEL = LT_VBAP-VBELN
  AND VBRP〜AUPOS = LT_VBAP-POSNR
  和VBRK〜FKART <>'ZF1'
  和VBRK〜FKART <>'ZF2'
  与非(VBRK〜FKSTO ='X'
  或VBRK〜SFAKN <>'')。

此外,我尝试使用下面的代码来选择数据的另一种方式,但是它仍然比那种更长。 有谁可以帮助我吗? 非常感谢。

选择
  VBRP〜VBELN
  VBRP〜POSNR
  VBRP〜FKIMG
  VBRP〜NETWR
  VBRP〜AUBEL
  VBRP〜AUPOS
  VBRP〜MWSBP
  表GT_VBRP的对应字段
  从vrpma
  加入vbrp
  开启vbrp〜vbeln = vrpma〜vbeln
  AND vbrp〜posnr = vrpma〜posnr
  加入vbrk
  开启vbrk〜vbeln = vbrp〜vbeln
  对于LT_VBAP中的所有条目
  在哪里VBRP〜AUBEL = LT_VBAP-VBELN
  AND VBRP〜AUPOS = LT_VBAP-POSNR
  和VBRK〜FKART <>'ZF1'
  和VBRK〜FKART <>'ZF2'
  与非(VBRK〜FKSTO ='X'
  或VBRK〜SFAKN <>'')。

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

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


谁能帮我这么久如何从VBRK获取数据加入VBRP? 我的客户希望运行此程序大约3个月或更长时间,并且运行时间很长。 然后,我在SE30中运行了该程序,并注意到此代码(程序中使用该代码的时间为3次)很长一段时间。 我可以优化此代码吗? 请帮助我找出我的错误

选择
  VBRP〜VBELN
  VBRP〜POSNR
  VBRP〜FKIMG
  VBRP〜NETWR
  VBRP〜AUBEL
  VBRP〜AUPOS
  VBRP〜MWSBP
  表GT_VBRP的对应字段
  从VBRK
  内联VBRP
  在VBRP〜VBELN = VBRK〜VBELN
  对于LT_VBAP中的所有条目
  在哪里VBRP〜AUBEL = LT_VBAP-VBELN
  AND VBRP〜AUPOS = LT_VBAP-POSNR
  和VBRK〜FKART <>'ZF1'
  和VBRK〜FKART <>'ZF2'
  与非(VBRK〜FKSTO ='X'
  或VBRK〜SFAKN <>'')。

此外,我尝试使用下面的代码来选择数据的另一种方式,但是它仍然比那种更长。 有谁可以帮助我吗? 非常感谢。

选择
  VBRP〜VBELN
  VBRP〜POSNR
  VBRP〜FKIMG
  VBRP〜NETWR
  VBRP〜AUBEL
  VBRP〜AUPOS
  VBRP〜MWSBP
  表GT_VBRP的对应字段
  从vrpma
  加入vbrp
  开启vbrp〜vbeln = vrpma〜vbeln
  AND vbrp〜posnr = vrpma〜posnr
  加入vbrk
  开启vbrk〜vbeln = vbrp〜vbeln
  对于LT_VBAP中的所有条目
  在哪里VBRP〜AUBEL = LT_VBAP-VBELN
  AND VBRP〜AUPOS = LT_VBAP-POSNR
  和VBRK〜FKART <>'ZF1'
  和VBRK〜FKART <>'ZF2'
  与非(VBRK〜FKSTO ='X'
  或VBRK〜SFAKN <>'')。
付费偷看设置
发送
7条回答
Nir深蓝
1楼 · 2020-09-19 06:34.采纳回答

也许您可以解释什么是业务需求,以及您试图实现的目标,我可能会建议您。 有时候,尽管那里有标准的交易代码,但我们不必要地去定制报告。

最重要的是,您是否尝试过SQVI中的表联接?

何必丶何苦呢
2楼-- · 2020-09-19 06:53

感谢您的评论。 我找到了带有您的注释^^的解决方案。

CPLASF-自律
3楼-- · 2020-09-19 06:40

,并确保您的内部表不为空

对于LT_VBAP中的所有条目
土豆飞人
4楼-- · 2020-09-19 06:46

我试图加入VRPMA,因为我在互联网上看到该帖子,它说如果我这样做的话,它的性能很好,但是我去SE30进行了评估 为此,即使选择VRPMA表也可能会更糟。

我是小鹏鹏啊
5楼-- · 2020-09-19 06:45

您好

您正在选择销售订单凭证(AUBEL)和物料(AUPOS)上的发票行。 这些字段上没有索引。
您可以首先从单据流表VBFA中选择发票编号。 或在发票表VBRK,VBRP的联接中包括文件流表VBFA。 可以在作为关键字段的销售订单关键字段VBELV POSNV上访问凭证流表VBFA。

关于Jack
Aaron 3364
6楼-- · 2020-09-19 06:40

感谢您的回答。

CJones
7楼-- · 2020-09-19 06:33

嗨,

根据输出中的要求,仅在VBRK和VBRP中声明字段,以在程序中声明新的自定义类型。

此外,由于条目不受DATE范围(ERDAT)的限制,因此上面的查询也进行了全表加载。 因此,请尝试根据系统日期或选择屏幕参数使用日期范围(例如ERDAT)来限制记录。

另请参见链接 https: //wiki.scn.sap.com/wiki/display/ABAP/ABAP+Performance+and+Tuning 以获得提示

希望,它会有所帮助。

<<已删除文本>>

此致

Aditya

G。Lakshmipathi编辑

不要要求SCN不鼓励的观点

一周热门 更多>