当前位置: 首页 > news >正文

SAP接口超时:对 FOR ALL ENTRIES IN 的优化

SAP接口超时 在这里插入图片描述
经分析要10多分钟以上才出结果,且是这个语句耗时较长:

 SELECTaufnrmatnrbdmnglgortmeinschargFROM resbINTO CORRESPONDING FIELDS OF TABLE lt_lylcddxhFOR ALL ENTRIES IN lt_lylcddWHERE aufnr IN r_aufnr

发现RESB有420万条记录,而该工厂只有2.8万条记录。要求先将入参的werks参数用上,实现减少执行时间的效果

 SELECTaufnrmatnrbdmnglgortmeinschargFROM resbINTO CORRESPONDING FIELDS OF TABLE lt_lylcddxhFOR ALL ENTRIES IN lt_lylcddWHERE aufnr IN r_aufnrAND werks = in_werks

此时测试发现不再报超时错误,但仍然要花2分钟才出结果。
在这里插入图片描述
检查该表没有订单作为索引,优化建议有两个:
方案一:resb 表增加aufnr作为索引。
方案二:建议把数据直接取到内表,在内表中处理。
采用了方案二:

SELECTaufnrmatnrbdmnglgortmeinschargFROM resbINTO CORRESPONDING FIELDS OF TABLE lt_lylcddxh* FOR ALL ENTRIES IN lt_lylcdd "注释WHERE aufnr IN r_aufnrAND werks = in_werks

优化后,同样条件,执行后三秒出结果。

FOR ALL ENTRIES IN 是用内表与物理表结合查表,如果数据较多,查询条件没有索引,一般会很慢。比较好的方案是把数据取到内表中,在内表中再处理。

相关文章:

  • 数字化转型的“暗礁“与突围:失败案例深度复盘
  • 常用浪涌保护器件的原理、特性与应用对比
  • 巧记英语四级单词 Unit5-上【晓艳老师版】
  • onloyoffice 服务器保存文件的时间 和 当前时间 相差八小时 如何改
  • 如何将 Apache Hudi 接入 Ambari?完整部署与验证指南
  • linux 部署express项目,并使用pm2守护进程
  • 鸿蒙-试一下属性字符串:除了Span之外,如何在同一个Text组件中展示不同样式的文字
  • Python教程(一)——Python速览
  • AIGC实战之如何构建出更好的大模型RAG系统
  • 电脑技巧:路由器内部元器件介绍
  • 日语学习-日语知识点小记-构建基础-JLPT-N4阶段(11): てあります。
  • 算法题(134):地毯
  • Java 24 深度解析:云原生时代的性能更新与安全重构
  • WHAT - 已阅读书单
  • WHAT - 《成为技术领导者》思考题(第一章)
  • CV大模型、NLP大模型与语音处理技术全景解析-AI学习Day5
  • 【Hive入门】Hive分区与分区表完全指南:从原理到企业级实践
  • LSTM+KNN - 多元数据异常检测 !
  • 建筑节能成发展焦点,楼宇自控应用范围持续扩大
  • 用户案例--慧眼科技
  • 敲定!今年将制定金融法、金融稳定法
  • 最高法知识产权法庭:6年来新收涉外案件年均增长23.2%
  • 人民日报任仲平:为什么中国意味着确定性、未来性、机遇性
  • 解放军仪仗司礼大队参加越南纪念南方解放50周年庆典活动
  • 美施压拉美国家选边站队,外交部:搞阵营对抗注定失败
  • 集合多家“最美书店”,松江成立书店联盟“书香满云间”