转载:ABAP:Function 之 Read_Text函数的使用方法

在SAP系统中,有时候会有大段文本内容需要保存,例如:销售发货VL03N,在单据的概览中,有一个[文本]项,在此处可以填写单据的大段文本描述,那么该内容保存在哪里呢?

第一反应是找对应表的字段,那么你可能要失望了。在SAP系统中,可以供我们使用的数据库字段最大长度是255个文本字符(注:此处可能不正确),对于很长的文本肯定是不能直接保存到某个表的字段中的(注:至于具体保存在何处,还需要请教)。因此我们要使用系统函数Read_Text来进行读取,以下是该函数的调用方法:


DATA: il_tline LIKE tline OCCURS 0 WITH HEADER LINE.

       vl_tdname LIKE thead-tdname.

CALL FUNCTION 'READ_TEXT'

       EXPORTING

         client                       = sy-mandt

         id                          = 'Z001'

         language                   = '1'

         name                       = vl_tdname

         object                       = 'VBBK'

*      ARCHIVE_HANDLE               = 0

*      LOCAL_CAT                    = ' '

*    IMPORTING

*      HEADER                       =

       TABLES

         lines                        = il_tline

      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

*            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

     ENDIF.


在上面的示例代码中,红色字体部分是需要输入以及输出的参数,调用这个函数的关键就是在于如何找到各输入参数应该填写的内容,下面就以销售发货/外向交货VL03N为例,介绍读取[计划员备注]文本是如何查找对应参数的。

1、输入TCODE:VL03N,显示一个凭证

2、在概览][文本]处,进入修改状态,输入相应的段落文字,双击文本内容。

3、进入文本内容行编辑器界面,点击菜单[转到]-->[表头]

4、见下图,上面的四行就是需要输入的参数,其中:


文本名 :’011000218’,为凭证号,对应name参数

语  言:ZH,但是此处参数类型为C(1),不能直接使用SY-LANGU变量,根据系统配置不同,在我的系统中使用1,对应language参数,

标  识:Z001,该标识由SAP系统配置而来,对应ID参数

文本对象:VBBK,对应object参数

相对于Read_Text函数,有一个Save_Text正好是用来往系统中写文本字段,具体用户和Read_Text基本相似.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值