VA01,VL01N中如何获得header/item text中的值

2025-04-11 01:04:16

1、无论采用哪种方法获得text的值,我们都应该首先知道text name, lanaguage, text ID, text object。关于如何获取这些信息,可以参考本人的另外一篇经验“如何查找SO item text的Text ID/Object”。

VA01,VL01N中如何获得header/item text中的值

2、如果Sales Order/Outbound Delivery已经生成,也就是order number, Delivery number已经生成并保存在了数据库中。那么就使用FM READ_TEXT或SELECT_TEXT。READ_TEXT跟SELECT_TEXT这两个FM的不同之处在于,SELECT_TEXT只能判断text中是否有值,不能像READ_TEXT一样获得具体的值。READ_TEXT的使用如图所示,需要用到Text Name, Text ID, Text Object, Language.

VA01,VL01N中如何获得header/item text中的值

3、如果是在VA01, VL01N中想获得text的值,因为这个时候Sales Order/Outbound Delivery还没有实际生成,也就是还没有保存到数据库中,只是存在于内存中,这种情况下,text的值就只能在ABAP meomory中取了,可以使用的FM为GET_TEXT_MEMORY

VA01,VL01N中如何获得header/item text中的值

4、FM GET_TEXT_MEMORY的用法,如图所示,在调用该FM的时候会获得ABAP memory中的信息,保存到内表lt_txt_memory中。

VA01,VL01N中如何获得header/item text中的值

5、内表lt_txt_memory中的数据如图所示,可以看到在这个内表中保存了outbound delivery item text和 head髫潋啜缅er text的信息。其中字段TDNAME的值,如果为 XXXXXXXXXX000010这种格式的代表是item text, 而XXXXXXXXXX这种格式的代表为header text。 字段IDID代表 Text ID, TDSPRAS代表 Lanaguage, TDOBJECT代表text object。

VA01,VL01N中如何获得header/item text中的值

6、接下来如果我们想获得具体的某个text的值,那么首先需要从内表lt_txt_memory中的ID字段中找到memory ID,然后通过IMPORT.. TO.. from memory ID ...语句获得具体的值。代码如图所示。

VA01,VL01N中如何获得header/item text中的值
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢