SAP读取长文本

PERFORM FRM_READ_TXT USING 'F01' LV_NAME 'EKPO' SY-LANGU CHANGING TAB-ZBZGG.

FORM FRM_READ_TXT USING FU_ID     TYPE THEAD-TDID
                         FU_NAME   TYPE THEAD-TDNAME
                         FU_OBJECT TYPE THEAD-TDOBJECT
                         FU_LANGU TYPE SY-LANGU
                   CHANGING FU_TEXT.

  DATA: LT_TEXT  TYPE TABLE OF TLINE,
        LT_LINES TYPE TABLE OF TLINE,
        LW_TEXT  LIKE LINE OF LT_TEXT.
  CALL FUNCTION 'READ_TEXT'
    EXPORTING
      CLIENT                  = SY-MANDT
      ID                      = FU_ID
      LANGUAGE                = FU_LANGU
      NAME                    = FU_NAME
      OBJECT                  = FU_OBJECT
      ARCHIVE_HANDLE          = 0
      LOCAL_CAT               = ' '
    TABLES
      LINES                   = LT_TEXT
    EXCEPTIONS
      ID                      = 1
      LANGUAGE                = 2
      NAME                    = 3
      NOT_FOUND               = 4
      OBJECT                  = 5
      REFERENCE_CHECK         = 6
      WRONG_ACCESS_TO_ARCHIVE = 7
      OTHERS                  = 8.
  "将特殊字符正常输出
  CALL FUNCTION 'CONVERT_ITF_TO_STREAM_TEXT'
    EXPORTING
      LANGUAGE    = FU_LANGU
*     LF          = ' '
*     IMPORTING
*     STREAM_LINES       =
    TABLES
      ITF_TEXT    = LT_TEXT
      TEXT_STREAM = LT_LINES.
  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 LT_LINES INTO LW_TEXT.
    CONCATENATE FU_TEXT LW_TEXT INTO FU_TEXT.
    CLEAR: LW_TEXT.
  ENDLOOP.
ENDFORM.

 

posted @ 2020-12-23 09:55  kang09  阅读(262)  评论(0)    收藏  举报