ABAP 常用的系统变量說明

系统内部有一个专门存放系统变量的结构SYST,其中最常用的系统变量有:
SY-SUBRC: 系统执行某指令后,表示执行成功与否的变量,’0’ 表示成功
SY-UNAME: 当前使用者登入SAP的USERNAME;
SY-DATUM: 当前系统日期;
SY-UZEIT: 当前系统时间;
SY-TCODE: 当前执行程序的Transaction code
SY-REPID: ABAP 程式名,目前的主程式
SY-CPROG: ABAP 程式名
SY-SYSID: R/3 系統,R/3 系統名稱
SY-UCOMM:  畫面,PAI 驅動的功能代碼,一般用來參照定義變量
SY-INDEX : 当前LOOP循环过的次数   READ TABLE it_po INDEX 1  此時變量值1
SY-TABIX: 当前处理的是internal table 的第几笔
下面說下sy-index 和 sy-tabix的區別
sy-index和sy-tabix都是系统字段,用来记录循环的次数。
sy-index 在DO....ENDDO循环里有效,而sy-tabix在loop at ......endloop里有效。
運行下面的例子能更好的理解:
DATA: BEGIN OF line,
    col1 TYPE i,
    col2 TYPE i,
    END OF line.
DATA itab LIKE TABLE OF line WITH HEADER LINE.
DO 30 TIMES.
  line-col1 = sy-index.
  line-col2 = sy-index * sy-index.
  APPEND line TO itab.
ENDDO.
LOOP AT itab .
  DO 2 TIMES.
    WRITE: / 'sy-tabix:',sy-tabix,itab-col1,
     'sy-index:',sy-index,itab-col2.
  ENDDO.
ENDLOOP.
sy-dbcnt:Sy-dbcnt代表有多少条记录被处理了
例如:當我們查詢記錄放入內表,判斷內表中是否有數據就可以用 if sy-dbcnt = 0  MESSAGE s000.
      STOP. ENDIF.
sy-tfill:返回当前内表(Internal Table)内的记录数。
但是要小心,那些字段随各自的内表(Internal Table)改变。
例:如果你循环(Loop at)(读取)itab,sy-tfill返回itab的记录数。
如 果你在循环(Loop at)(读取)内表(Internal Table)itab的内部嵌套循环(Loop at)(读取)内表(Internal Table)jtab,
sy-tfill返回的不再是itab的记录数,而是jtab的!
所以如果你需要使用itab的记录数,请先把sy-tfill的 值传递给其它变量。
无论如何,sy-tfill永远保存当前的记录数。
例如記錄內表記錄條數:DESCRIBE TABLE itab LINES sy-tfill.
SY-TMAXL: Internal table的总笔数
SY-SROWS: 屏幕总行数;
SY-SCOLS: 屏幕总列数;
SY-MANDT: 当前系统编号(CLIENT NUMBER)
SY-VLINE: 画竖线
SY-ULINE: 画横线


sy-pagno   当前页号
sy-lsind      列表索引页
sy-listi        上一个列表的索引
sy-linsz      当前报表宽度
sy-lilli          绝对列表中选定的行号
sy-linct       当前报表长度
sy-curow    屏幕上的行
space         空字符
sy-cucol     光标列
sy-cpage    列表的当前显示页
sy-staro     真实行号
sy-lisel       选择行的内容,长度为255
sy-linno      当前行


SY-MANDT: 當前系統編號(CLIENT NUMBER)
SY-SLSET:    选择屏幕的变式名称 
SY-MSGID:   消息, 消息类  
SY-MSGTY:   消息,消息类型 
SY-MSGNO:   消息, 消息编号 
SY-MSGV1:   消息,消息变量1 
SY-DYNGR:   Screen group of the current screen  ABAP 程式,目前畫面上的畫面群組
SY-DYNNR:     ABAP 程式,目前的畫面號碼
SY-BATCH:      Program running in background
SY-HOST:        R/3 系統,應用伺服器名稱

来源: http://blog.sina.com.cn/s/blog_5fa4766c0100y4gg.html
更多信息,参考: https://help.sap.com/abapdocu_70/en/ABENSYSTEM_FIELDS.htm

你可能感兴趣的:(ABAP 常用的系统变量說明)