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

SAP ABAB长文本高效取值优化

常规思路使用FUNCTION:READ_TEXT获取长文本内容,

优化思路通过SQL批量取出长文本内容,然后转换成常规的文本文字显示

直接上代码,这里用交货单表头文本为例子:

*&---------------------------------------------------------------------* *& Report YTEST_ZW26 *&---------------------------------------------------------------------* *& *&---------------------------------------------------------------------* REPORT ytest_zw26. DATA:BEGIN OF gs_vbeln, vbeln TYPE likp-vbeln, END OF gs_vbeln, gt_vbeln LIKE TABLE OF gs_vbeln. START-OF-SELECTION. SELECT vbeln UP TO 1000 ROWS FROM likp INTO TABLE @gt_vbeln. PERFORM function. PERFORM sql. *&---------------------------------------------------------------------* *& Form FUNCTION *&---------------------------------------------------------------------* *& text *&---------------------------------------------------------------------* *& --> p1 text *& <-- p2 text *&---------------------------------------------------------------------* FORM function . DATA:client LIKE sy-mandt, id LIKE thead-tdid, language LIKE thead-tdspras, name LIKE thead-tdname, object LIKE thead-tdobject, lines LIKE TABLE OF tline. LOOP AT gt_vbeln INTO gs_vbeln. name = gs_vbeln-vbeln. CALL FUNCTION 'READ_TEXT' EXPORTING client = sy-mandt id = 'ZM13' language = sy-langu name = name object = 'VBBK' TABLES lines = lines EXCEPTIONS id = 1 language = 2 name = 3 not_found = 4 object = 5 reference_check = 6 wrong_access_to_archive = 7 OTHERS = 8. IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno INTO DATA(l_mtext) WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF. ENDLOOP. ENDFORM. *&---------------------------------------------------------------------* *& Form SQL *&---------------------------------------------------------------------* *& text *&---------------------------------------------------------------------* *& --> p1 text *& <-- p2 text *&---------------------------------------------------------------------* FORM sql . TYPES: BEGIN OF ty_stxl_raw, clustr TYPE stxl-clustr, clustd TYPE stxl-clustd, END OF ty_stxl_raw. DATA: it_stxl_raw TYPE STANDARD TABLE OF ty_stxl_raw, wa_stxl_raw TYPE ty_stxl_raw, it_tline TYPE STANDARD TABLE OF tline, BEGIN OF ls_dn_text, vbeln TYPE vbeln, text TYPE string, END OF ls_dn_text, lt_dn_text LIKE TABLE OF ls_dn_text. "取表头文本 SELECT tdname, clustr, clustd FROM stxl INNER JOIN @gt_vbeln AS dn ON dn~vbeln = stxl~tdname WHERE relid = 'TX' AND tdobject = 'VBBK' AND tdid = 'ZM13' AND tdspras = @sy-langu INTO TABLE @DATA(lt_stxl). SORT lt_stxl BY tdname. LOOP AT lt_stxl INTO DATA(ls_stxl). CLEAR: wa_stxl_raw,it_stxl_raw[],it_tline[]. wa_stxl_raw-clustr = ls_stxl-clustr. wa_stxl_raw-clustd = ls_stxl-clustd. APPEND wa_stxl_raw TO it_stxl_raw. * 因為儲存在STXL的資料都是壓縮過的 所以要經過解壓縮 才能正常顯示 IMPORT tline = it_tline FROM INTERNAL TABLE it_stxl_raw. CLEAR ls_dn_text. LOOP AT it_tline INTO DATA(ls_tline). ls_dn_text-text = ls_dn_text-text && ` ` && ls_tline-tdline. ENDLOOP. ls_dn_text-vbeln = ls_stxl-tdname. APPEND ls_dn_text TO lt_dn_text. ENDLOOP. SORT lt_dn_text BY vbeln. ENDFORM.

ST12性能分析,取1000笔的情况下,结果整整相差100倍,数据量越大这个差距会更大

http://www.jsqmd.com/news/983124/

相关文章:

  • Optuna:一个专注超参数优化的 Python 框架
  • 年轻时靠拼命存钱、克制消费,到三十岁真的会和别人拉开差距吗
  • 2026实测:英文论文降AI率全攻略,这套实操教程真的能避坑!
  • 告别Slack依赖!用Authelia OIDC为Outline知识库打造纯本地登录(附完整配置与排错)
  • 066、NPU的EfficientNet加速:复合缩放与硬件适配
  • WinUI 3项目创建踩坑实录:从VS2019补丁到VS2022模板的完整避坑指南
  • 英文Turnitin AI率怎么降?2026全新实操版全攻略,附保姆级教程
  • 【2026最新】英文降AIGC率保姆级作业:全攻略+使用教程直接抄
  • Java构建生产级Agentic AI系统:稳定性与工程化实践
  • 汽车密钥管理:从“一把钥匙开所有门“到“一车一密“的进化之路
  • Kiro 上手实测:亚马逊这个‘先写需求再写代码‘的 AI IDE,到底好不好用
  • Fortran性能起飞!在Windows上利用VS2019和Intel oneAPI MKL加速矩阵运算
  • ohmyzsh 安装与使用
  • LangGraph四步翻译法状态图编排深度解析
  • 如何用VR-Reversal在5分钟内将3D视频转换为2D格式:免费开源解决方案
  • 终极视频去重指南:如何用Vidupe一键清理重复视频文件
  • 论Serverless无服务架构
  • 高管艺术暴露指数(无时间维度截面数据)
  • OpenAI、三星、MKBHD 竞相投资,这家初创将发布 AI 音频硬件;游戏硬件 Board 融资两千万美元:主打实体棋子与屏幕内容实时交互丨日报
  • CH55xduino终极指南:快速上手低成本USB微控制器开发
  • Mac微信防撤回终极指南:3分钟永久保留重要消息
  • i.MX RT1050引脚配置全解析:从BGA封装到硬件设计实战
  • 5分钟快速上手:免费开源视频修复神器untrunc终极指南
  • 别再只会rosbag record -a了!ROS数据录制与回放的5个高效场景与避坑指南
  • FS6271 0.25元,OVP阈值16V防止反馈电阻开路损坏
  • 技术视角:VideoDownloadHelper - Chrome浏览器视频下载扩展的架构设计与实现原理
  • 并发编程与线程安全:从锁机制到无锁编程的面试全解
  • 计算机小程序毕设实战-基于spring boot的校园二手交易平台系统小程序【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • XUnity Auto Translator:让外语游戏无障碍畅玩的终极翻译解决方案
  • i.MX 7ULP BGA封装引脚与电源设计实战指南