关于长文本写入问题
来源:互联网 发布:php 数组找重复的数据 编辑:程序博客网 时间:2024/04/28 21:38
需求:在创建/修改订单点击保存的时候,将某些信息写入长文本中。
遇到的问题:抬头长文本无法写入/显示,工序、组件长文本无法写入/显示
解决方法:必须要在抬头表中将LTEXT字段置1(中文)
工序则需要将工序表中TXTSP = SY-LANGU
SAVE_TEXT后要COMMIT_TEXT
举例:在CO02中点击保存时将信息写入抬头长文本和第一条工序长文本
DATA IT_DATA TYPE STANDARD TABLE OF TLINE.
DATA IT_DATA1 TYPE STANDARD TABLE OF TLINE.
DATA W_DATA TYPE TLINE.
DATA ID LIKE THEAD-TDID.
DATA LANGUAGE LIKE THEAD-TDSPRAS.
DATA NAME LIKE THEAD-TDNAME.
DATA OBJECT LIKE THEAD-TDOBJECT.
DATA ID1 LIKE THEAD-TDID.
DATA LANGUAGE1 LIKE THEAD-TDSPRAS.
DATA NAME1 LIKE THEAD-TDNAME.
DATA OBJECT1 LIKE THEAD-TDOBJECT.
DATA WA_STXL TYPE STXL.
DATA HEADER LIKE THEAD.
DATA HEADER1 LIKE THEAD.
"必须要设置的字段,AFVC是工序表
MOVE-CORRESPONDING HEADER_IMP TO HEADER_EXP.
UPDATE AFVC SET TXTSP = SY-LANGU WHERE AUFPL = HEADER_IMP-AUFPL AND APLZL = '00000001'.
HEADER_EXP-LTEXT = SY-LANGU.
ID = 'KOPF'.
LANGUAGE = SY-LANGU.
CONCATENATE SY-MANDT HEADER_IMP-AUFNR INTO NAME.
"NAME = '910001000012761'.
OBJECT = 'AUFK'.
HEADER-TDOBJECT = OBJECT.
HEADER-TDNAME = NAME .
HEADER-TDID = ID.
HEADER-TDSPRAS = SY-LANGU.
CLEAR IT_DATA.
W_DATA-TDFORMAT = '*'.
W_DATA-TDLINE = '行1:测试数据1'.
APPEND W_DATA TO IT_DATA.
W_DATA-TDFORMAT = '*'.
W_DATA-TDLINE = '行2:测试数据2'.
APPEND W_DATA TO IT_DATA.
SELECT SINGLE * FROM STXL INTO WA_STXL
WHERE TDOBJECT = OBJECT
AND TDNAME = NAME
AND TDID = ID
AND TDSPRAS = '1'.
IF WA_STXL IS INITIAL.
CALL FUNCTION 'CREATE_TEXT'
EXPORTING
FID = ID
FLANGUAGE = LANGUAGE
FNAME = NAME
FOBJECT = OBJECT
TABLES
FLINES = IT_DATA
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.
ELSE.
CALL FUNCTION 'SAVE_TEXT'
EXPORTING
HEADER = HEADER
TABLES
LINES = IT_DATA.
ENDIF.
CLEAR WA_STXL.
ID1 = 'AVOT'.
LANGUAGE1 = SY-LANGU.
"工序的名称是CLIENT + 工序的任务清单号(AUFPL) + 计数器(1)
CONCATENATE SY-MANDT HEADER_IMP-AUFPL '00000001' INTO NAME1.
OBJECT1 = 'AUFK'.
HEADER1-TDOBJECT = OBJECT1.
HEADER1-TDNAME = NAME1.
HEADER1-TDID = ID1.
HEADER1-TDSPRAS = SY-LANGU.
SELECT SINGLE * FROM STXL INTO WA_STXL
WHERE TDOBJECT = OBJECT1
AND TDNAME = NAME1
AND TDID = ID1
AND TDSPRAS = '1'.
IF WA_STXL IS INITIAL.
CALL FUNCTION 'CREATE_TEXT'
EXPORTING
FID = ID1
FLANGUAGE = LANGUAGE1
FNAME = NAME1
FOBJECT = OBJECT1
.
ELSE.
CALL FUNCTION 'SAVE_TEXT'
EXPORTING
HEADER = HEADER1
TABLES
LINES = IT_DATA.
CALL FUNCTION 'COMMIT_TEXT'
EXPORTING
OBJECT = 'AUFK'
NAME = NAME1
ID = ID1
LANGUAGE = '*'
.
ENDIF.
- 关于长文本写入问题
- 关于长按listview子项复制子项中的文本值的问题
- 长文本增强开发注意的问题
- QTP无权限写入文本的问题
- FileWriter 写入文本不换行的问题
- 关于字长的问题
- 关于OracleLob写入的问题
- 关于SSD写入放大问题
- 关于文本编辑器问题!
- 写入文本
- iOS - 关于长按label复制文本的实现
- css表格单元格中的长文本的显示问题()
- css表格单元格中的长文本的显示问题
- Xamarin.IOS UiTextView 长文本不显示问题。
- 关于文本换行缩进问题
- 关于Markdown,吞文本问题
- Qt关于按键长按的问题
- 关于动态写入表格问题的扩展
- 命令行参数
- Activiti工作流引擎使用
- 5.easyui+ztree案例:选项卡布局
- squid 详解
- 机器学习十大算法的每个算法的核心思想、工作原理、适用情况及优缺点
- 关于长文本写入问题
- Android高级应用开发(深入篇) stage3(上)- 高级商用界面开发 学习笔记
- 一个未搞懂的++问题
- MIME类型参考
- JAVA 参数传递
- eclipse中字母大小写转换快捷键
- opengl学习笔记(二)
- orcale 数据库查询同义词,视图,触发器,索引对应的基表
- SIP协议详解(中文)-2