ABAP 中长文本处理(此例利用长文本特性开发简历模板)CL_GUI_TEXTEDIT
SAP中长文本的需求及处理方法
相关类 CL_GUI_TEXTEDIT
主要方法 CL_GUI_TEXTEDIT->GET_TEXT_AS_R3TABLE
CL_GUI_TEXTEDIT->SET_TEXT_AS_R3TABLE
CL_GUI_TEXTEDIT->SET_TEXT_AS_STREAM
CL_GUI_TEXTEDIT->GET_TEXT_AS_STREAM
CALL FUNCTION 'CONVERT_STREAM_TO_ITF_TEXT'
'SAVE_TEXT' " 保存长文本信息
'READ_TEXT' " 读取长文本信息
'CONVERT_ITF_TO_STREAM_TEXT'
一、SAP中所有的长文本都存在两张表中:
STXH 长文本的抬头信息
STXL 长文本的明细信息
但是长文本在使用前,需要先在视图V_TTXIDI和视图V_TTXOBI中进行配置。
1. SE16维护视图V_TTXOBI
2. SE16维护视图V_TTXIDI
3.插入数据后可以去查看表 STXH 长文本的抬头信息
4. 插入数据后可以去查看表 STXL 长文本的明细信息
二,配置完后进行具体读写等
1.变量声明
DATA GO_PARENT TYPE REF TO CL_GUI_CUSTOM_CONTAINER .
DATA GO_TEXTEDIT TYPE REF TO CL_GUI_TEXTEDIT .DATA: LINES TYPE STANDARD TABLE OF TLINE,IT_LINE TYPE TABLE OF LINE,IT_LINE1 TYPE TABLE OF LINE,IT_LINE2 TYPE TABLE OF LINE,HEADER LIKE THEAD. "定义内表对长文本保存
CONSTANTS: C_LINE_LENGTH TYPE I VALUE 256 .
"自定义方式
TYPES: BEGIN OF GTY_TEXT,LINE(C_LINE_LENGTH) TYPE C,END OF GTY_TEXT.
DATA GT_TEXT_SAVE TYPE STANDARD TABLE OF GTY_TEXT ."定义内表对长文本保存
2.实例化对象,此类的构造方法和CL_GUI_ALV_GRID 一样也需要放置一个容器 , 初始化长文本
FORM CREATE_TEXTEDIT TABLES PPT_LINE LIKE IT_LINEUSING PO_PARENT TYPE REF TO CL_GUI_CUSTOM_CONTAINERP_CON TYPE CHAR10CHANGING PO_TEXTEDIT TYPE REF TO CL_GUI_TEXTEDIT.DATA PT_LINE TYPE TABLE OF LINE.PT_LINE[] = PPT_LINE[].IF PO_PARENT IS INITIAL.CREATE OBJECT PO_PARENTEXPORTINGCONTAINER_NAME = P_CON.CREATE OBJECT PO_TEXTEDITEXPORTINGWORDWRAP_MODE = CL_GUI_TEXTEDIT=>WORDWRAP_AT_FIXED_POSITIONWORDWRAP_TO_LINEBREAK_MODE = CL_GUI_TEXTEDIT=>TRUEPARENT = PO_PARENT.CALL METHOD PO_TEXTEDIT->SET_STATUSBAR_MODEEXPORTINGSTATUSBAR_MODE = 0EXCEPTIONSERROR_CNTL_CALL_METHOD = 1INVALID_PARAMETER = 2OTHERS = 3.CALL METHOD PO_TEXTEDIT->SET_TOOLBAR_MODEEXPORTINGTOOLBAR_MODE = 0EXCEPTIONSERROR_CNTL_CALL_METHOD = 1INVALID_PARAMETER = 2OTHERS = 3.IF SY-SUBRC <> 0.
* Implement suitable error handling hereENDIF.ENDIF.
3. 长文本的保存:
FORM SAVE_COMPANYDATAS USING PS_COMPANY_CNO LIKE GS_COMPANY-COMNOP_CONNAME TYPE CHAR20PO_TEXTEDIT TYPE REF TO CL_GUI_TEXTEDIT .DATA P_TDNAME LIKE HEADER-TDNAME .P_TDNAME = PS_COMPANY_CNO && '_' && P_CONNAME .
* REFRESH IT_LINE.REFRESH IT_LINE .CALL METHOD PO_TEXTEDIT->GET_TEXT_AS_STREAMIMPORTINGTEXT = IT_LINE.
*--长文本保存HEADER-TDOBJECT = 'ZSTU_COMP'. "objectHEADER-TDNAME = P_TDNAME.HEADER-TDID = 'LTXT'.HEADER-TDSPRAS = SY-LANGU.CALL FUNCTION 'CONVERT_STREAM_TO_ITF_TEXT'EXPORTINGLANGUAGE = SY-LANGUTABLESTEXT_STREAM = IT_LINEITF_TEXT = LINES.CALL FUNCTION 'SAVE_TEXT'EXPORTINGHEADER = HEADERSAVEMODE_DIRECT = 'X'TABLESLINES = LINESEXCEPTIONSID = 1LANGUAGE = 2NAME = 3OBJECT = 4OTHERS = 5.CLEAR HEADER.REFRESH: LINES ,IT_LINE.ENDFORM.
4.长文本展示
FORM SHOW_LTXTDATAS USING VALUE(P_TDOBJECT)PS_COMPANY_CNO LIKE GS_COMPANY-CNOVALUE(P_CONNAME)CHANGING PO_TEXTEDIT TYPE REF TO CL_GUI_TEXTEDITPT_LINE LIKE IT_LINE.DATA P_TDNAME LIKE HEADER-TDNAME .P_TDNAME = PS_COMPANY_CNO && '_' && P_CONNAME .HEADER-TDOBJECT = P_TDOBJECT. "objectHEADER-TDNAME = P_TDNAME.HEADER-TDID = 'LTXT'.HEADER-TDSPRAS = SY-LANGU.CALL FUNCTION 'READ_TEXT'EXPORTINGID = HEADER-TDIDLANGUAGE = SY-LANGUNAME = HEADER-TDNAMEOBJECT = HEADER-TDOBJECTTABLESLINES = LINESEXCEPTIONSID = 1LANGUAGE = 2NAME = 3NOT_FOUND = 4OBJECT = 5REFERENCE_CHECK = 6WRONG_ACCESS_TO_ARCHIVE = 7OTHERS = 8.CALL FUNCTION 'CONVERT_ITF_TO_STREAM_TEXT'EXPORTINGLANGUAGE = SY-LANGUTABLESITF_TEXT = LINESTEXT_STREAM = PT_LINE.CALL METHOD PO_TEXTEDIT->SET_STATUSBAR_MODEEXPORTINGSTATUSBAR_MODE = 0.CALL METHOD PO_TEXTEDIT->SET_TOOLBAR_MODEEXPORTINGTOOLBAR_MODE = 0.CALL METHOD PO_TEXTEDIT->SET_TEXT_AS_STREAMEXPORTINGTEXT = PT_LINE.IF GV_DISPLAY EQ GC_X.CALL METHOD PO_TEXTEDIT->SET_READONLY_MODEEXPORTINGREADONLY_MODE = '1'.ELSE.CALL METHOD PO_TEXTEDIT->SET_READONLY_MODEEXPORTINGREADONLY_MODE = '0'.ENDIF.IF R_AR NE GC_X.CALL METHOD GO_TEXTEDIT->SET_READONLY_MODEEXPORTINGREADONLY_MODE = '1'.ENDIF.ENDFORM.
5. GET_TEXT_AS_R3TABLE
CALL METHOD GO_TEXTEDIT->GET_TEXT_AS_R3TABLEIMPORTINGTABLE = GT_TEXTSAVE .CALL METHOD CL_GUI_CFW=>FLUSH .
6.释放.
IF GO_TEXTEDIT IS NOT INITIAL.CALL METHOD GO_TEXTEDIT->FREE .FREE GO_TEXTEDIT.
ENDIF.
CALL METHOD CL_GUI_CFW=>FLUSH .
ABAP 中长文本处理(此例利用长文本特性开发简历模板)CL_GUI_TEXTEDIT相关推荐
- Microsoft Tech Summit 2018 课程简述:利用 Windows 新特性开发出更好的手绘视频应用...
概述 Microsoft Tech Summit 2018 微软技术暨生态大会将于10月24日至27日在上海世博中心举行,这也会是国内举办的最后一届 Tech Summit,2019 年开始会以 Mi ...
- php获取访问量文本形式,php利用用文本统计访问量的方法图文详解
这篇文章主要介绍了php使用文本统计访问量的方法,涉及php文本文件读写与数值运算的相关技巧,需要的朋友可以参考下 方法1: $fp = fopen("counter.txt", ...
- 【转载】ABAP自定义长文本的处理
SAP中所有的长文本都存在如下两张表中: STXH 长文本的抬头信息 STXL 长文本的明细信息 长文本在使用前,需要先进行配置,如果不配置是不可能往表STXH和STXL中写入文本值的. 配置在视图V ...
- ABAP 显示长文本
业务背景:目前项目上 采购订单打印输出EXCEL的需求:允许客户进行长文本编辑.更改后保存到采购订单抬头,并且打印输出到EXCEL,且下次进入到相同的采购订单打印时,能取出相应的长文本进行excel ...
- 长文本口语语义理解技术系列①:段落分割实践
作者:张庆林.陈谦.刘嘉庆.王雯.邓憧 数智化浪潮下,越来越多的企业开始将现代信息网络作为数据资源的主要载体,并通过网络通信技术进行数据传输:网络作为主要的信息交流和分享的方式,海量不同源的网络信息, ...
- 【数据竞赛】长文本竞赛上分的三种策略。
作者:杰少 长文本处理上分策略 简 介 在诸多文本相关的问题中,我们不可避免的会遇到很多长短不一的文本,有的文本很短就是一句话,但有的文本则很长,有上好几千的文字甚至上万多文字, 如果我们设置截取的文 ...
- 【MySQL】mysql文本类型, 长文本
text类型 tinytext : 可存储256字节文本数据,适合超短文本 text : 可存储64kb文本数据,适合短文本 mediumtext : 可存储16MB文本数据, 适合长文本 longt ...
- ABAP取销售订单长文本
取销售订单行项目长文本 这里举例子 销售订单号:100000073 行项目:10 事务代码 VA05 输入凭证号进入 : 双击行项目进入: 双击长文本 进入后 点击菜单栏的转到 表头: 附上例子代码: ...
- ABAP 类方法获取长文本内容
区别于READ_TEXT函数获取长文本在于,这是把长文本直接拼接成一个字符串输出,READ_TEXT是装进一个内表输出.用于不同场景, DATA:lv_str TYPE STRING. " ...
最新文章
- find中的-print0和xargs中-0的奥妙
- h3c交换机限制端口访问_H3C交换机端口限速和流量监管典型配置指导
- RelativeLayout经常使用属性介绍
- 秒懂机器学习---朴素贝叶斯
- Android百分比布局初探
- 1.10 卷积神经网络示例-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
- 2021.NET Conf China上的GraphQL
- Office365开发系列——开发一个全功能的Word Add-In
- Linux中批量创建空白文件,在Linux中批量创建和修改文件或目录
- PHP笔记-双色球例子
- 字符三角形(信息学奥赛一本通-T1004)
- java ajax 联动菜单_java结合jQuery.ajax实现左右菜单联动刷新列表内容
- Oracle 常用符号CHR
- Ubuntu MySQL 授权语句错误 ERROR 1064 (42000)
- NB-IOT基础模型搭建思路
- 10个容易被接受的辞职理由
- EXCEL单元格内怎么换行?Alt+Enter
- adb命令重置_Android ADB 常用命令
- 这台笔记本最适合程序员编程!!
- 学成在线 第4天 讲义-页面静态化 页面预览