程式狀態碼

放置在子欄位位置 *STATUS 中大於 99 的任何代碼都視為異常/錯誤狀況。 當狀態碼大於 99; 錯誤指示器 (如果在位置 73 及 74 中指定) 設為開啟,或 %ERROR 內建函數 (如果指定 'E' 擴充元) 設為傳回' 1 ' , 或控制會傳遞至 MONITOR 區塊內適當的 ON-ERROR 群組; 否則,程式異常狀況/錯誤子常式會接收控制。 當發生異常/錯誤時,會更新位置 *STATUS。

%STATUS 內建函數會傳回針對程式或檔案狀態所設定的最新值。

下列程式碼放置在程式狀態資料結構的子欄位位置 *STATUS 中:

一般代碼
代碼
條件
00000
未發生異常狀況/錯誤
00001
被呼叫的程式傳回 LR 指示器開啟。
00050
轉換導致替代。
異常狀況/錯誤碼
代碼
條件
00100
字串作業的值超出範圍
00101
負平方根
00102
除以零
00103
中間結果不夠大,無法包含結果。
00104
浮動下溢。 中間值太小,無法包含在中間結果欄位中。
00105
字元至數值轉換函數中的字元無效。
00112
「日期」、「時間」或「時間戳記」值無效。
00113
日期溢位或下溢。 (例如,當「日期」計算結果產生大於 *HIVAL 或小於 *LOVAL 的數字時。)
00114
日期對映錯誤,其中「日期」從 4 個字元的年份對映至 2 個字元的年份,且日期範圍不是 1940-2039。
00115
可變長度欄位具有無效的現行長度。
00120
表格或陣列順序錯誤。
00121
陣列索引無效
00122
發生超出範圍
00123
在程式的起始設定步驟期間嘗試重設
00124
可變維度陣列的元素數目無效
00125
字串運算元無效。
00126
傳送訊息時發生錯誤。
00202
被呼叫的程式或程序失敗; 停止指示器 (H1 到 H9) 未開啟
00211
呼叫程式或程序時發生錯誤
00222
指標或參數錯誤
00231
傳回已呼叫的程式或程序,並開啟中止指示器
00232
此程式中的停止指示器開啟
00233
執行 RETURN 作業時開啟中止指示器
00299
RPG IV 格式化傾出失敗
00301
找不到方法呼叫的類別或方法,或方法呼叫中發生錯誤。
00302
將 Java™ 陣列轉換成項目上的 RPG 參數至 Java 原生方法時發生錯誤。
00303
從 RPG 原生方法結束時,將 RPG 參數轉換成 Java 陣列時發生錯誤。
00304
在準備 Java 方法呼叫時,將 RPG 參數轉換成 Java 陣列時發生錯誤。
00305
將 Java 陣列轉換成 RPG 參數或在 Java 方法之後傳回值時發生錯誤。
00306
將 RPG 回覆值轉換成 Java 陣列時發生錯誤。
00333
DSPLY 作業發生錯誤
00351
剖析 XML 文件時發生錯誤
00352
%XML 的選項無效
00353
XML 文件不符合 RPG 變數
00354
準備 XML 剖析時發生錯誤
00355
程式或程序無法用於 DATA-GEN 或 DATA-INTO 作業
00356
DATA-INTO 作業的文件不符合 RPG 變數
00356
DATA-INTO 作業的文件不符合 RPG 變數
00357
DATA-INTO 作業的剖析器偵測到錯誤
00358
剖析器提供給 DATA-INTO 作業的資訊發生錯誤
00359
執行 DATA-INTO 或 DATA-GEN 作業的程式或程序時發生錯誤
00361
為 DATA-GEN 的產生器準備 RPG 變數中的資料時發生錯誤
00362
產生器為 DATA-GEN 作業提供的資訊發生錯誤
00363
DATA-GEN 作業的產生器偵測到錯誤
00364
處理 DATA-GEN 作業的輸出檔或輸出變數時發生錯誤
00365
DATA-GEN 作業序列發生錯誤
00401
找不到在 IN/OUT 上指定的資料區
00402
*PDA 對非預先啟動工作無效
00411
資料區類型或長度不符合
00412
未鎖定資料區以供輸出
00413
輸入/輸出作業發生錯誤
00414
使用者未獲授權使用資料區
00415
使用者未獲授權變更資料區
00421
UNLOCK 作業發生錯誤
00425
儲存體配置所要求的長度超出範圍
00426
儲存體管理作業期間發現錯誤
00431
先前被另一個程式鎖定的資料區
00432
在相同處理程序中被程式鎖定的資料區
00450
字元欄位未完全以移出及移入字元括住
00451
不支援兩個 CCSID 之間的轉換
00452
部分字元無法在兩個 CCSID 之間轉換
00453
在兩個 CCSID 之間轉換期間發生錯誤
00501
無法擷取排序順序。
00502
無法轉換排序順序。
00802
確定控制不在作用中。
00803
回轉作業失敗。
00804
COMMIT 作業發生錯誤
00805
ROLBK 作業發生錯誤
00907
十進位資料錯誤 (數字或符號無效)
00970
用來產生程式的編譯器層次號碼與 RPG IV 執行時期子常式的層次號碼不一致。
09998
ILE RPG 編譯器或執行時期子常式中的內部失敗
09999
程序收到異常狀況訊息。