您的位置:首页 > 其它

SAP中用ABAP读取采购申请抬头文本和行项目文本的程序

2013-07-10 23:37 218 查看
在CX项目中,需要读取采购申请单抬头文本和行项目文本,下面是在程序种的应用:

* 读取抬头文本备注DATA: TEXT1(50).

DATA: BEGIN OF ITB_S18 OCCURS 0.

INCLUDE STRUCTURE thead.

DATA: END OF ITB_S18.

DATA: BEGIN OF FLINES OCCURS 0.

INCLUDE STRUCTURE TLINE.

DATA: END OF FLINES.

DATA: EBELNKP(15).

SELECT * FROM STXL

INTO CORRESPONDING FIELDS OF TABLE ITB_S18

WHERE TDOBJECT = 'EBANH'

AND TDNAME = ITAB-BANFN.

CLEAR TEXT1.

LOOP AT ITB_S18.

CLEAR TEXT1.

PERFORM FRM_READ_TEXT USING 'B01' ITB_S18-TDNAME 'EBANH'

CHANGING TEXT1 .

ENDLOOP.

ITAB-HTEXT = TEXT1.

* 读取行项目文本备注

CLEAR EBELNKP.

CONCATENATE ITAB-BANFN ITAB-BNFPO INTO EBELNKP.

SELECT * FROM STXL

INTO CORRESPONDING FIELDS OF TABLE ITB_S18

WHERE TDOBJECT = 'EBAN'

AND TDNAME = EBELNKP.

CLEAR TEXT1.

LOOP AT ITB_S18.

CLEAR TEXT1.

PERFORM FRM_READ_TEXT USING 'B01' ITB_S18-TDNAME 'EBAN'

CHANGING TEXT1 .

ENDLOOP.

ITAB-ITEXT = TEXT1.

FORM FRM_READ_TEXT USING FID FNAME FOBJECT CHANGING TEXT1 .

CALL FUNCTION 'READ_TEXT'

EXPORTING

CLIENT = SY-MANDT

ID = FID

LANGUAGE = SY-LANGU

NAME = FNAME

OBJECT = FOBJECT

* ARCHIVE_HANDLE = 0

* LOCAL_CAT = ' '

* IMPORTING

* HEADER =

TABLES

LINES = FLINES

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.

LOOP AT FLINES.

CONCATENATE TEXT1 FLINES-TDLINE INTO TEXT1 .

ENDLOOP.

ENDFORM.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: