1. 程式人生 > >【轉載】SAP ABAP中讀取專案文字 READ_TEXT 的方法

【轉載】SAP ABAP中讀取專案文字 READ_TEXT 的方法

在SAP系統裡面很多地方都用到了長文字,這些長文字的值以其他字元的形式存在表STXL和STXH裡面,不能直接去這兩個表裡面去取值,而是要通過函式READ_TEXT去取,很多新手不瞭解的地方可能就是怎麼取到READ_TEXT函式裡面的那些引數值,我這邊介紹兩種方法,通過這兩種方法都可以找到那幾個引數:
一、第一種利用跟蹤查詢,不是用ST05跟蹤,而是去表裡面跟蹤查詢,比如你剛剛建立了一個銷售訂單的長文字,這時候你可以去表STXH輸入日期和剛剛的時間,然後檢視在這個表裡剛剛產生的這些資料,依據此項就可以找到對應的引數了,這個方法非常實用
二、第二種前臺檢視,進入長文字編輯介面以後(記得是雙擊長文字編輯器進入),點選選單轉到—->表頭,裡面出現的就是對應的那些引數值,如下圖:

 
 

如果是要用ABAP程式碼建立文字用函式CREATE_TEXT,修改文字用SAVE_TEXT
貼上用過的幾個程式碼:
建立擡頭文字
call function ‘CREATE_TEXT’
    exporting
      fid       = ‘0001′
      flanguage = ‘1′
      fname     = s_deliv_numb
      fobject   = ‘VBBK’
    tables
      flines    = it_texts.
  refresh it_texts.
建立行專案文字
call function ‘CREATE_TEXT’
      exporting

        fid       = wa_thead-tdid
        flanguage = ‘1′
        fname     = wa_thead-tdname
        fobject   = ‘VBBP’
      tables
        flines    = it_texts.
讀取擡頭文字
      call function ‘READ_TEXT’
        exporting
*         CLIENT                        = SY-MANDT
          id                            = ‘0001′

          language                      = ‘1′
          name                          = name
          object                        = ‘VBBK’
        tables
          lines                         = lines[]
                .
引數的值如果是擡頭文字可以到表STXH檢視,如果是專案文字可以到STXL檢視
讀取行專案文字
call function ‘READ_TEXT’
        exporting
*         CLIENT                        = SY-MANDT
          id                            = ‘0001′
          language                      = ‘1′
          name                          = name
          object                        = ‘VBBP’
        tables
          lines                         = lines[]
CALL FUNCTION ‘SAVE_TEXT’
          EXPORTING
           CLIENT                = SY-MANDT
            HEADER                = HEADER
            SAVEMODE_DIRECT      = ‘X’
          TABLES
            LINES                 = LINES