技术开发 频道

ABAP实例:读取采购申请文本信息的方法

【IT168 技术文章】

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).

  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.

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.

0
相关文章