ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 读取SAP长内文数据: READ_TEXT

读取SAP长内文数据: READ_TEXT

原创 Linux操作系统 作者:xiaoman 时间:2009-09-18 16:25:03 0 删除 编辑
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 读取内文:

相关表:

STXH  文本头

STXL  文本行

 TTXID 文本ID表

 TTXOB 文本对象表

 T002   语言Keys 表

 

函数READ_TEXT:

有四个参数是一定要传入的:

ID                             要读取的文本对象ID

LANGUAGE         要读取的文本的语言

NAME              文本名字

OBJECT             文本对象

 

函数会返回一个表包含了内文行:LINES

 

 

以下程序可以读取任意对象的内文:

DATA:
      
lines   TYPE STANDARD TABLE OF tline WITH HEADER LINE.

PARAMETERS:
      
id     TYPE C LENGTH 4,
      name   
TYPE C LENGTH 70,
      lang   
TYPE C LENGTH 1,
      object 
TYPE C LENGTH 10.

START-
OF-SELECTION.

CALL FUNCTION 'READ_TEXT'
  
EXPORTING
    
ID           = id
    
LANGUAGE     = lang  " sy-lang
    NAME         = name
    OBJECT       = object
  
TABLES
    
LINES        = lines
  
EXCEPTIONS
    
ID           = 1
    
LANGUAGE     = 2
    NAME         = 
3
    NOT_FOUND    = 
4
    OBJECT       = 
5
  
OTHERS         = 6.

IF sy-subrc EQ 0.
  
LOOP AT lines.
    
WRITE:/ lines-tdline .
  
ENDLOOP.
ELSE.
  
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.

 

查找对内文对象的属性(ID, OBJECT), 在长内文数据输入界面都可以找通过按钮或菜单找到相关的内文信息:

显示物料内文:


选择更改:



Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 执行Goto->Header:




Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 ID, LANG, OBJECT全部都在...,

注意语言并不是函数所要的语言ID,通过以下方式可以查到每种语言所对应的ID号:

事务码SE16N查看表T002的数据:


Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 1:在读取内文时需要用到Language key的值为这里的值‘E’,可以双击其它语言记录查看真正的语言ID



Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4

 

运行前面的ABAP程序读取这个物料内文:



系统输出:

Motherboard M-375



所有的内文对象,ID都可以输入内文的画面被找出,仔细检查每一个功能按钮。。。,如查找VL03N行项目的内文:


点击(1)即可看到


1.jpg

2.jpg

3.jpg

4.jpg

5.jpg

6.jpg

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29917/viewspace-615015/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-09-10

  • 博文量
    9
  • 访问量
    46520