ABAP常用系統變量 (SY-)及SY-SUBRC


abap系統變量在syst結構里面可以找到

 

SY-SUBRC: 系統執行某指令后,表示執行成功與否的變量,0表示成功

SY-DBLNT: 被處理過的記錄的筆數

SY-UNAME: 當前使用者登入SAP的USERNAME

SY-DATUM: 當前系統日期

SY-UZEIT: 當前系統時間

SY-TCODE: 當前執行程序的Transaction code

SY-REPID: 當前程序名稱

SY-INDEX : 當前LOOP循環過的次數

SY-TABIX: 當前處理的是internal table 的第幾筆

SY-TMAXL: Internal table的總筆數

SY-SROWS: 屏幕總行數

SY-SCOLS: 屏幕總列數

SY-MANDT: 當前系統編號(CLIENT NUMBER)

SY-VLINE: 畫豎線

SY-ULINE: 畫橫線

SY-PAGNO: 當前頁號

SY-LINSZ: 當前報表寬度

SY-LINCT: 當前報表長度

SPACE: 空字符串

SY-LSIND: 列表索引頁

SY-LISTI: 上一個列表的索引

SY-LILLI: 絕對列表中選定行的行號

SY-CUROW: 屏幕上的行

SY-CUCOL: 光標列

SY-CPAGE: 列表的當前顯示頁

SY-STARO:真實行號

SY-LISEL: 選擇行的內容,長度為255

SY-LINNO: 當前行

SY-SUBRC:語句執行后的返回值,0表示成功

SY-DATUM:當前服務器日期

SY-UZEIT:當前服務器時間

SY-ULINE:255長度的水平線

SY-VLINE:垂直線

SY-INDEX:循環說執行的次數

SY-TABIX:內表循環的次數

SY-DYNNR:當前Screen號

SY-MANDT:當前登錄的Client號

SY-STEPL:返回當前操作的屏幕行號(Table Control)

SY-LOOPC:當前表格控件在屏幕中的總行數(Table Control)

SY-UCOMM:PAI所出發的功能代碼

SY-DYNNR:當前屏幕號

SY-MSGID:Message Class

SY-MSGNR:Message Number

SY-MSGTY:Message Type

SY-MSGV1~4:Message Variant

SY-LINCT:REPROT語句中設定的LINE-COUNT

SY-LINSZ:REPROT語句中設定的LINE-SIZE

SY-SROWS:當前窗口的列表行數

SY-SCOLS:當前窗口的列表欄目數

SY-PAGNO:當前頁的頁碼

SY-LINNO:當前選定行的行號

SY-COLNO:當前選定列的列號

SY-LSIND:當前列表索引,第一級列表為1

SY-LILLI:選擇某行時光標行位置

SY-CUROW:選擇某行時光標列位置 

SY-ABCDE 常量,A-Z字母表

SY-BATCH 后台的程序運行

SY-COLNO:當前選定列的列號

SY-CPAGE 列表的當前顯示頁

SY-CUCOL 屏幕,PAI 的水平光標位置

SY-CUROW:選擇某行時光標列位置

sy-datar:在PAI中,如果屏幕上至少有一個輸入字段的值被用戶或其他數據傳輸所更改,則為“X”,否則為初始值。

sy-datlo:用戶的當前日期

SY-DATUM 服務器日期

SY-DYNNR 當前屏幕的編號

SY-INDEX 循環的次數(DO While)

SY-LANGU 當前登錄語言

SY-LILLI:選擇某行時光標行位置

SY-LINCT 當前報表長度 (REPROT語句中設定的LINE-COUNT)

SY-LINNO 當前選定行的行號

SY-LINSZ 當前報表寬度(REPROT語句中設定的LINE-SIZE)

SY-LISEL 選擇行的內容,長度為255

SY-LISTI 上一個列表的索引

SY-LOOPC:當前表格控件在屏幕中的總行數(Table Control)

SY-LSIND:當前列表索引,第一級列表為1

SY-MSGID 消息, 消息類

SY-MSGTY 消息,消息類型

SY-MSGNO 消息, 消息編號

SY-MSGV1 消息,消息變量1

SY-MSGV2 消息,消息變量2

SY-MSGV3 消息,消息變量3

SY-MSGV4 消息,消息變量4

SY-PAGNO 當前頁號

SY-SCOLS:當前窗口的列表欄目數

SY-SLSET 選擇屏幕的變式名稱

SY-SROWS:當前窗口的列表行數

SY-STARO 真實行號

SY-STEPL:返回當前操作的屏幕行號(Table Control)

SY-SUBRC 執行狀態

SY-TABIX 當前處理的內表的Index

SY-TCODE 當前的事務代碼

SY-UCOMM:PAI所出發的功能代碼

SY-ULINE 水平線

SY-UNAME 用戶名

SY-UZEIT 服務器時間

SY-VLINE 垂直線

原文鏈接:https://blog.csdn.net/sapliumeng/article/details/18653139

 2.SY-SUBRC說明

使用SELECT語句選擇查詢:
SY-SUBRC = 0: 至少有一行數據,當ENDSELECT語句執行完,SY-DBCNT中保存着記錄的個數。
SY-SUBRC = 4: 沒有數據。
SY-SUBRC = 8: 只有使用“SELECT SINGLE FOR UPDATE”時才會有,
表示: WHERE條件指定的記錄不止一行,結果是沒有記錄被選中。

使用INSERT語句,向表中插入一行,必須注意INSERT的順序與表中字段的順序一致:
SY-SUBRC = 0: 插入成功,SY-DBCNT包含了插入的行數,0或1。
SY-SUBRC = 4: 由於有相同的KEY存在,所以插入失敗。

使用LOOP語句來遍歷一個內表:
SY-SUBRC = 0: 循環至少被執行一次。
SY-SUBRC = 4: 循環沒有被執行,可能是沒有數據,也可能是沒有符合條件的記錄。

使用DELETE語句來刪除一條記錄:
SY-SUBRC = 0: 找到一行並刪除之,如果該表有不唯一主鍵,也就是有多條重復的記錄,則只刪除第一條記錄。
SY-SUBRC = 4: 沒有找到符合條件的記錄,也沒有刪除。

使用UPDATE語句來更新一條記錄:
SY-SUBRC = 0: 找到記錄並更新
SY-SUBRC = 4: 沒有找到符合條件的記錄,也沒有更新。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM