SD-如何讀取文字訂單的抬頭文字

JackWu發表於2018-07-16

在最近一次修改訂單跟蹤表,使用者提出需要讀取抬頭文字。由於使用者輸入文字時存在多種語言,如果根據使用者的語言或者在條件介面設定語言條件來提取文字,發現都會漏取文字。後來經過思索,用先從STXH表中獲取抬頭文字的語言,再使用該語言傳入read_text函式讀取文字,這樣就確保文字讀取,不會出現遺漏。程式碼摘抄如下:

  CLEAR lV_text.
  select single TDSPRAS into (w_LANG ) from STXH
    where TDOBJECT = 'VBBK' and TDNAME = CS_TAB-vbeln and TDID = 'YOD1'.
  if sy-subrc = 0.
    w_tdid = 'YOD1'.
    w_tdspras = w_LANG .
    w_tdname = CS_TAB-vbeln.
    w_tdobject = 'VBBK'.
    REFRESH w_lines.
    CALL FUNCTION 'READ_TEXT'
      EXPORTING
        CLIENT                        = SY-MANDT
        ID                            = w_tdid
        LANGUAGE                      = w_tdspras
        NAME                          = w_tdname
        OBJECT                        = w_tdobject
      TABLES
        LINES                         = w_lines
      EXCEPTIONS
        ID                            = 1
        LANGUAGE                      = 2
        NAME                          = 3
        NOT_FOUND                     = 4
        OBJECT                        = 5
        REFERENCE_CHECK               = 6
        WRONG_ACCESS_TO_ARCHIVE       = 7
      OTHERS                        = 8
            .

相關文章