读取长文本,使用读取底表

news2025/1/17 20:28:09

文章目录

  • 代码
  • 有原始数据内表作为主表连接STXL的示例
    • 获取物料分类
    • 获取物料分类的文本的宏
    • 读取分类

在这里插入图片描述
https://blog.csdn.net/DeveloperMrMeng/article/details/118354649

在这里插入图片描述

代码

"第三种:读取底表获取文本
DATA: LT_TLINE TYPE STANDARD TABLE OF TLINE.
DATA: LS_TLINE TYPE TLINE.
"定义只有两列的结构和内表
TYPES: BEGIN OF TY_STXL_RAW,
         CLUSTR TYPE STXL-CLUSTR,
         CLUSTD TYPE STXL-CLUSTD,
       END OF TY_STXL_RAW.

DATA: LT_STXL_RAW TYPE STANDARD TABLE OF TY_STXL_RAW,
      LS_STXL_RAW TYPE TY_STXL_RAW.

DATA: LV_STR TYPE STRING.

SELECT
  TDOBJECT,
  TDNAME,
  TDID,
  CLUSTR,
  CLUSTD
  FROM STXL AS A
  WHERE TDID = '0004'       "文本标识
  AND TDNAME = '1000100000100744000000300000003701'   "名称
  AND TDOBJECT = 'KNMT'     "文本对象
  AND TDSPRAS = '1'         "语言
  INTO TABLE @DATA(LT_STXL).

LOOP AT LT_STXL INTO DATA(LS_STXL).
  LS_STXL_RAW-CLUSTR = LS_STXL-CLUSTR.
  LS_STXL_RAW-CLUSTD = LS_STXL-CLUSTD.
  APPEND LS_STXL_RAW TO LT_STXL_RAW.
  CLEAR LT_TLINE[].
  IMPORT TLINE = LT_TLINE FROM INTERNAL TABLE LT_STXL_RAW.
  "IMPORT ITAB = LT_TLINE FROM INTERNAL TABLE LT_STXL_RAW.
ENDLOOP.

IF NOT LT_TLINE IS INITIAL.
  CLEAR LS_TLINE.
  LS_TLINE-TDFORMAT = ''.
  MODIFY LT_TLINE FROM LS_TLINE TRANSPORTING TDFORMAT WHERE TDFORMAT NE ''.

  "把内表转成字符串
  CALL FUNCTION 'SOTR_SERV_TABLE_TO_STRING'
    EXPORTING
      FLAG_NO_LINE_BREAKS = 'X'
*     LINE_LENGTH         =
      LANGU               = SY-LANGU
    IMPORTING
      TEXT                = LV_STR
    TABLES
      TEXT_TAB            = LT_TLINE.
ENDIF.

WRITE:'读取底表获取文本:',LV_STR.

有原始数据内表作为主表连接STXL的示例

获取物料分类

*--------Begin-------- Add By Liuhongyu 2024.11.06 -------------
* ----------------〔业务顾问:ldm  请求号:S4DK907145〕
    "--> 获取物料分类
    DATA: LT_TEXT_ZWLFL TYPE STANDARD TABLE OF ZSDSTEXT,
          LS_TEXT_ZWLFL TYPE ZSDSTEXT.
    DATA: LT_TLINE TYPE STANDARD TABLE OF TLINE.
    DATA: LS_TLINE TYPE TLINE.
    "定义只有两列的结构和内表
    TYPES: BEGIN OF TY_STXL_RAW,
             CLUSTR TYPE STXL-CLUSTR,
             CLUSTD TYPE STXL-CLUSTD,
           END OF TY_STXL_RAW.

    DATA: LT_STXL_RAW TYPE STANDARD TABLE OF TY_STXL_RAW,
          LS_STXL_RAW TYPE TY_STXL_RAW.
    DATA: LV_STR TYPE STRING.
    "拼接TDNAME
    SELECT
      VKORG, "销售组织
      VTWEG, "分销渠道
      KUNNR, "客户编码
      MATNR, "物料
      CONCAT( VKORG, CONCAT( VTWEG, CONCAT( KUNNR,MATNR ) ) ) AS TDNAME "文本名称
    FROM @LT_DATA AS A
    INTO TABLE @DATA(LT_TDNAME).

    "获取文本的内容
    SELECT
      B~TDOBJECT, "对象
      A~TDNAME,   "名称
      B~TDID,     "ID
      B~CLUSTR,   "
      B~CLUSTD   "
      FROM @LT_TDNAME AS A
      LEFT JOIN STXL AS B ON A~TDNAME = B~TDNAME
      INTO TABLE @DATA(LT_ZWLFL_STXL).

    LOOP AT LT_ZWLFL_STXL INTO DATA(LS_ZWLFL_STXL).
      MOVE-CORRESPONDING LS_ZWLFL_STXL TO LS_STXL_RAW.
      APPEND LS_STXL_RAW TO LT_STXL_RAW.
      CLEAR LT_TLINE[].
      IMPORT TLINE = LT_TLINE FROM INTERNAL TABLE LT_STXL_RAW.
      IF NOT LT_TLINE IS INITIAL.
        CLEAR LS_TLINE.
        LS_TLINE-TDFORMAT = ''.
        MODIFY LT_TLINE FROM LS_TLINE TRANSPORTING TDFORMAT WHERE TDFORMAT NE ''.

        "把内表转成字符串
        CALL FUNCTION 'SOTR_SERV_TABLE_TO_STRING'
          EXPORTING
            FLAG_NO_LINE_BREAKS = 'X'
*           LINE_LENGTH         =
            LANGU               = SY-LANGU
          IMPORTING
            TEXT                = LV_STR
          TABLES
            TEXT_TAB            = LT_TLINE.
        "去除前置空格(左侧的)
        SHIFT LV_STR LEFT DELETING LEADING SPACE.
        MOVE-CORRESPONDING LS_ZWLFL_STXL TO LS_TEXT_ZWLFL.
        LS_TEXT_ZWLFL-LTEXT = LV_STR.
        APPEND LS_TEXT_ZWLFL TO LT_TEXT_ZWLFL.
      ENDIF.
    ENDLOOP.
    SORT LT_TEXT_ZWLFL BY TDNAME TDID.
* -------- End -------------------------------------------------------

获取物料分类的文本的宏

* --获取物料分类的文本的宏
  DEFINE READ_TEXT_ZWLFL.
    "获取长文本
    READ TABLE LT_TEXT_ZWLFL INTO LS_TEXT WITH KEY TDNAME = &1 TDID = &2 BINARY SEARCH.
    IF SY-SUBRC EQ 0.
      &3 = LS_TEXT-LTEXT.
    ENDIF.
  END-OF-DEFINITION.

读取分类

    "--> 读取物料分类 ADD BY LHY 20241106
    READ_TEXT_ZWLFL: IV_NAME '0004'<FS_OUT>-ZWLFL. "ADD BY LHY 20241106

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2278145.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Ubuntu升级Linux内核教程

本文作者CVE-柠檬i: CVE-柠檬i-CSDN博客 本文使用的方法是dpkg安装&#xff0c;目前版本为5.4.0-204&#xff0c;要升级成5.8.5版本 下载 下载网站&#xff1a;https://kernel.ubuntu.com/mainline/ 在该网站下载deb包&#xff0c;选择自己想要升级的版本&#xff0c;这里是5…

JWT在线解密/解码 - 加菲工具

JWT在线解密/解码 首先进入加菲工具 选择 “JWT 在线解密/解码” https://www.orcc.online 或者直接进入JWT 在线解密/解码 https://www.orcc.online/tools/jwt 进入功能页面 使用 输入对应的jwt内容&#xff0c;点击解码按钮即可

如何查看特定版本的Spring源码

写在前面&#xff1a;大家好&#xff01;我是晴空๓。如果博客中有不足或者的错误的地方欢迎在评论区或者私信我指正&#xff0c;感谢大家的不吝赐教。我的唯一博客更新地址是&#xff1a;https://ac-fun.blog.csdn.net/。非常感谢大家的支持。一起加油&#xff0c;冲鸭&#x…

安全规约、脱敏规范、敏感逻辑的保护方案、防止 SQL 注入

文章目录 I 强制性安全规约对于文件上传功能,需要对于文件大小、类型进行严格检查和控制。平台资源的防重放机制URL 外部重定向传入的目标地址必须执行白名单过滤。表单、AJAX 提交必须执行 CSRF 安全验证。禁止向 HTML 页面输出未经安全过滤或未正确转义的用户数据。用户请求…

unity2022以上导出到AndroidStudio后更新步骤

1、unity里面Export出unityLibrary 2、导出apk&#xff0c;里面才包含libil2cpp(新版unity无法直接导出libil2cpp 3、注释AS项目app下的build.gradle里面包含unityLibrary的代码 4、注释AS项目settings.gradle包含unityLibrary的代码 5、删除AS项目里面的unityLibrary文件夹 6、…

LabVIEW串口通信调试与数据接收问题

在使用LabVIEW进行串口通信时&#xff0c;常常会遇到无法接收数据的情况。这可能与串口设置、连接、设备响应等多方面因素相关。本文将详细讨论如何使用LabVIEW进行串口通信&#xff0c;并提供常见问题的排查与解决方法&#xff0c;帮助用户更高效地进行数据接收调试。通过调整…

Java并发编程——线程池(基础,使用,拒绝策略,命名,提交方式,状态)

我是一个计算机专业研0的学生卡蒙Camel&#x1f42b;&#x1f42b;&#x1f42b;&#xff08;刚保研&#xff09; 记录每天学习过程&#xff08;主要学习Java、python、人工智能&#xff09;&#xff0c;总结知识点&#xff08;内容来自&#xff1a;自我总结网上借鉴&#xff0…

【HarmonyOS NEXT】鸿蒙跳转华为应用市场目标APP下载页

【HarmonyOS NEXT】鸿蒙跳转华为应用市场目标APP下载页 一、问题背景&#xff1a; 如今&#xff0c;大家都离不开各种手机应用。随着鸿蒙系统用户越来越多&#xff0c;大家都希望能在鸿蒙设备上快速找到想用的 APP。华为应用市场里有海量的 APP&#xff0c;但之前从鸿蒙设备进…

智能物流升级利器——SAIL-RK3576核心板AI边缘计算网关设计方案(一)

近年来&#xff0c;随着物流行业智能化和自动化水平不断提升&#xff0c;数据的实时处理与智能决策成为推动物流运输、仓储管理和配送优化的重要手段。传统的集中式云平台虽然具备强大计算能力&#xff0c;但高延迟和带宽限制往往制约了物流现场的即时响应。为此&#xff0c;我…

nacos环境搭建以及SpringCloudAlibaba脚手架启动环境映射开发程序

1&#xff1a;下载nacos 地址&#xff1a;https://github.com/alibaba/nacos/tags 2:选择server的zip包下载 3:启动mysql服务&#xff0c;新建数据库&#xff1a;nacos_yh 4&#xff1a;解压下载的nacos_server 进入conf目录 5&#xff1a;mysql运行sql脚本变得到下面的表 6&a…

Java中线程的学习

目录​​​​​​​ 程序,进程,线程 创建线程 继承Thread类 实现Runnable接口 Thread类中方法 线程优先级 线程状态 多线程的概念 线程同步 在Java代码中实现同步 以下代码使用继承Thread方式实现 以下代码使用实现Runnable方式实现 Lock&#xff08;锁&#xf…

HTTP/HTTPS ⑤-CA证书 || 中间人攻击 || SSL/TLS

这里是Themberfue ✨上节课我们聊到了对称加密和非对称加密&#xff0c;实际上&#xff0c;单纯地非对称加密并不能保证数据不被窃取&#xff0c;我们还需要一个更加重要的东西——证书 中间人攻击 通过非对称加密生成私钥priKey和公钥pubKey用来加密对称加密生成的密钥&…

leetcode:205. 同构字符串(python3解法)

难度&#xff1a;简单 给定两个字符串 s 和 t &#xff0c;判断它们是否是同构的。 如果 s 中的字符可以按某种映射关系替换得到 t &#xff0c;那么这两个字符串是同构的。 每个出现的字符都应当映射到另一个字符&#xff0c;同时不改变字符的顺序。不同字符不能映射到同一个字…

从epoll事件的视角探讨TCP:三次握手、四次挥手、应用层与传输层之间的联系

目录 一、应用层与TCP之间的联系 二、 当通信双方中的一方如客户端主动断开连接时&#xff0c;仅是在客户端的视角下连接已经断开&#xff0c;在服务端的眼中&#xff0c;连接依然存在&#xff0c;为什么&#xff1f;——触发EPOLLRDHUP事件&#xff1a;对端关闭连接或停止写…

EMS专题 | 守护数据安全:数据中心和服务器机房环境温湿度监测

您需要服务器机房温度监测解决方案吗&#xff1f; 服务器机房是企业中用于存储、管理和维护服务器及其相关组件的设施。服务器机房通常位于数据中心内&#xff0c;是一个专门设计的物理环境&#xff0c;旨在确保服务器的稳定运行和数据的安全性。服务器机房主要起到存储和管理数…

运输层安全协议SSL

安全套接字层 SSL (Secure Socket Layer) SSL 作用在端系统应用层的 HTTP 和运输层之间&#xff0c;在 TCP 之上建立起一个安全通道&#xff0c;为通过 TCP 传输的应用层数据提供安全保障。 应用层使用 SSL 最多的就是 HTTP&#xff0c;但 SSL 并非仅用于 HTTP&#xff0c;而是…

网络安全面试题汇总(个人经验)

1.谈一下SQL主从备份原理&#xff1f; 答&#xff1a;主将数据变更写入自己的二进制log,从主动去主那里去拉二进制log并写入自己的二进制log,从而自己数据库依据二进制log内容做相应变更。主写从读 2.linux系统中的计划任务crontab配置文件中的五个星星分别代表什么&#xff…

51单片机 DS18B20温度储传感器

DS18B20温度传感器 64-BITROM&#xff1a;作为器件地址&#xff0c;用于总线通信的寻址&#xff0c;是唯一的&#xff0c;不可更改 SCRATCHPAD&#xff08;暂存器&#xff09;&#xff1a;用于总线的数据交互 EEPROM&#xff1a;用于保存温度触发阈值和配置参数 暂存器 单总线…

如何保证光谱相机的稳定性和可靠性

光学系统设计与制造 高质量光学元件&#xff1a;采用高精度研磨和镀膜的透镜、棱镜、光栅等光学元件。优质的透镜可以减少像差和色差&#xff0c;确保光线准确聚焦&#xff1b;高质量的镀膜能够提高光学元件的透光率&#xff0c;降低反射损失&#xff0c;并且增强对不同波段光…

【芯片封测学习专栏 -- 2D | 2.5D | 3D 封装的区别和联系】

请阅读【嵌入式开发学习必备专栏 Cache | MMU | AMBA BUS | CoreSight | Trace32 | CoreLink | ARM GCC | CSH】 文章目录 Overview线键合&#xff08;wire-bonding&#xff09;封装FOWLP2D封装2.5D 封装硅通孔(TSV)硅中介层无TSV的2.5D 3D封装 Overview 我们先要了解一下&…