data:zebeln type thead-tdname.
data:it_line like table of tline with header line.
clear:zebeln.
concatenate ekko-ebeln ekpo-ebelp into zebeln.
clear:it_line,it_line[].
call function 'READ_TEXT'
exporting
client = sy-mandt
id = 'F01'
language = sy-langu
name = zebeln
object = 'EKPO'
* ARCHIVE_HANDLE = 0
* LOCAL_CAT = ' '
* IMPORTING
* HEADER =
* OLD_LINE_COUNTER =
tables
lines = it_line
* 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.
* Implement suitable error handling here
zcgddwb = '0'.
rollback work.
else.
read table it_line index 1.
if sy-subrc = 0.
zcgddwb = it_line-tdline.
endif.
endif.
以上程序如果在执行function的时候,提前没有判断该条是否有text,则就会执行不下去, 因此,先判断该条记录是否有text .
READ_TEXT 保存在两个表里,一个抬头 透明表:STXH , 另一个行项目: 透明表 :STXL
,我是 用透明表判断就行了.
select single *
from stxl
where tdobject = 'EKPO'
* and mandt = sy-mandt
and tdid = 'F01'
and tdspras = sy-langu
and tdname = zebeln
.
if sy-subrc = 0 .
call function 'READ_TEXT'
exporting
client = sy-mandt
id = 'F01'
language = sy-langu
name = zebeln "'530000018800010'
object = 'EKPO'
* ARCHIVE_HANDLE = 0
* LOCAL_CAT = ' '
* IMPORTING
* HEADER =
* OLD_LINE_COUNTER =
tables
lines = it_line
* EXCEPTIONS
* ID = 1
* LANGUAGE = 2
* NAME = 3
* NOT_FOUND = 4
* OBJECT = 5
* REFERENCE_CHECK = 6
* WRONG_ACCESS_TO_ARCHIVE = 7
* OTHERS = 8
.
loop at it_line.
it_alv-zcgddwb = it_line-tdline .
endloop.
endif.