当前位置: 首页 > 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 - 多元数据异常检测 !
  • 建筑节能成发展焦点,楼宇自控应用范围持续扩大
  • 用户案例--慧眼科技
  • 长和获准出售巴拿马运河港口以外的港口?外交部:该报道没有依据
  • 工人日报关注跟着演出去旅游:票根经济新模式兴起,让过路客变过夜客
  • 江南华南较强降雨扰返程,北方大部需防风沙
  • 超越关税陷阱,不遗余力塑造产业的长期竞争力
  • 国际观察丨澳大利亚新一届政府面临系列挑战
  • 辽宁男篮被横扫这一晚,中国篮球的一个时代落幕了