Home › IBM i Developer Reference
This index shows where each common IBM i command, RPGLE built-in function, opcode, and SQL feature is explained on AS400Decoded today. Dedicated quick-reference entries will be added over time.
For complete syntax, the official IBM documentation remains the authoritative source.
Sections on this page: RPGLE Built-in Functions, RPGLE Opcodes, RPGLE ILE Modules, Service Programs and Binding, IBM i Commands, CL Programming Commands, SQL and Db2 for i, DDS and Display Files, Administration, Troubleshooting.
RPGLE Built-in Functions
Built-in functions start with a percent sign and return a value you can use in an expression, such as converting, searching, or measuring data.
%CHAR: Converts a value to character data. No dedicated guide yet.%DATE: Converts a value to a date. Explained in ILE RPG Date, Time, and Timestamp Handling.%DEC: Converts a value to packed decimal. No dedicated guide yet.%DIFF: Returns the difference between two dates, times, or timestamps. Explained in ILE RPG Date, Time, and Timestamp Handling.%ELEM: Returns the number of elements in an array, table, or multiple-occurrence data structure. Explained in RPGLE Arrays and Tables, RPGLE Varying-Dimension Arrays.%EOF: Reports whether the last file operation reached end of file. Explained in RPGLE Indicators and Status Flags.%FOUND: Reports whether the last file operation found a matching record. Explained in RPGLE Indicators and Status Flags.%INT: Converts a value to an integer. No dedicated guide yet.%SCAN: Searches for a substring and returns its position. Explained in ILE RPG String Handling.%SUBST: Extracts part of a character string. Explained in ILE RPG String Handling.%TRIM: Removes leading and trailing blanks or characters. Explained in ILE RPG String Handling.%TIMESTAMP: Converts a value to a timestamp. Explained in ILE RPG Date, Time, and Timestamp Handling.
Quick-reference pages:
- RPGLE Built-in Functions Reference
- RPGLE String BIFs Reference
- RPGLE %SCAN and %SCANRPL Reference
- RPGLE %SUBST Reference
- RPGLE Numeric and Conversion BIFs Reference
- RPGLE Date and Time BIFs Reference
- RPGLE Array and List BIFs Reference
- RPGLE File and Error BIFs Reference
RPGLE Opcodes
Operation codes are the statements of an RPGLE program: reading and writing records, handling errors, and controlling loops.
CHAIN: Reads the record that matches a key. Explained in RPGLE Indicators and Status Flags.SETLL: Positions a file at the first record whose key is greater than or equal to a value. Explained in RPGLE Input and Output Specifications Explained.READ: Reads the next record from a file. No dedicated guide yet.READE: Reads the next record with an equal key. Explained in RPGLE Input and Output Specifications Explained.WRITE: Adds a new record to a file. No dedicated guide yet.UPDATE: Changes the last record read. No dedicated guide yet.DELETE: Removes a record from a file. No dedicated guide yet.MONITOR: Starts a group of statements whose errors are handled by ON-ERROR. Explained in Error handling in RPG.FOR: Repeats a group of statements with an index and a limit. No dedicated guide yet.DOW: Repeats a group while a condition is true, testing before each pass. Explained in RPGLE DOW Loops Explained.DOU: Repeats a group until a condition is true, testing after each pass. Explained in RPGLE DOU Loops Explained.
Quick-reference pages:
- RPGLE Opcode Reference
- RPGLE Control-Flow Opcodes Reference
- RPGLE File I/O Opcodes Reference
- RPGLE CHAIN Opcode Reference
- RPGLE SETLL and SETGT Opcode Reference
- RPGLE READ, READE and READP Opcode Reference
- RPGLE UPDATE, WRITE and DELETE Opcode Reference
- Fixed-Format to Free-Format Opcode Mapping
RPGLE ILE Modules, Service Programs and Binding
How RPGLE source becomes modules, programs and service programs, and how binding and activation groups are controlled.
NOMAIN and MAIN: Control keywords that set the module type: no main procedure, or a linear-main procedure without the RPG cycle. Explained in Build an ILE RPG Service Program.Service programs: Bound collections of exported procedures that other ILE objects call. Explained in Subprocedures and Service Programs in RPGLE, Build an ILE RPG Service Program.STRPGMEXP, EXPORT, ENDPGMEXP: Binder language statements that define a service program’s exports and signature. Explained in Build an ILE RPG Service Program.BNDDIR: Binding directory keyword and parameter that name the list the binder searches. Explained in IBM i Modules, Bound Programs, and Binding Directories Explained.ACTGRP and DFTACTGRP: Choose the activation group that an ILE program or service program runs in. Explained in IBM i Activation Groups and Call Stack Explained, IBM i ILE Binding, Activation Groups, and Service Programs in 2026.
Quick-reference pages:
- RPGLE Service Programs Reference
- RPGLE Modules and NOMAIN Reference
- RPGLE Binder Language and Signatures Reference
- RPGLE Binding Directories Reference
- RPGLE Activation Groups Reference
- CRTRPGMOD Command Reference
- CRTBNDRPG Command Reference
- CRTPGM Command Reference
- CRTSRVPGM Command Reference
- UPDSRVPGM and DSPSRVPGM Command Reference
IBM i Commands
Commands you type at a command line or call from a program to inspect and manage jobs, objects, libraries, and the system.
WRKACTJOB: Shows active jobs and their resource use. Explained in IBM i Performance Tuning in 2026.WRKJOB: Works with a single job and its attributes. No dedicated guide yet.WRKSPLF: Works with spooled files. Explained in IBM i Output Queue and Print Management.WRKOUTQ: Works with output queues and their spooled files. Explained in IBM i Output Queue and Print Management.WRKOBJ: Works with objects by name and type. No dedicated guide yet.WRKLIB: Works with libraries. No dedicated guide yet.WRKSHRPOOL: Works with shared storage pools. Explained in IBM i Memory Pools and Pool Sizing.DSPJOB: Displays a job’s attributes and status. No dedicated guide yet.DSPJOBLOG: Displays a job’s message log. No dedicated guide yet.DSPLIBL: Displays the current job’s library list. No dedicated guide yet.STRSBS / ENDSBS: Starts or ends a subsystem. Explained in IBM i System Startup and Shutdown Procedures in 2026.SAVOBJ / RSTOBJ / SAVLIB: Saves and restores objects and libraries. Explained in IBM i Save and Restore.STRJRNOBJ / DSPJRN: Starts journaling an object and displays journal entries. Explained in IBM i Journal Management.CFGTCP / NETSTAT: Configures and inspects TCP/IP. Explained in IBM i TCP/IP Configuration and Troubleshooting.CHGAUT / CHGOWN: Changes IFS object authority and ownership. Explained in IBM i IFS Permissions and Security.
Quick-reference pages:
- IBM i Command Reference
- IBM i Job Commands Reference
- IBM i Library List Commands Reference
- IBM i Object and Library Commands Reference
- IBM i Spooled File and Output Queue Commands Reference
CL Programming Commands
Commands used inside CL programs to control flow, handle messages, submit work, and share data between programs.
SBMJOB: Submits a job to a job queue for batch processing. Explained in CL job scheduling on IBM i.MONMSG: Monitors for messages and handles errors in a CL program. Explained in CL Error Handling and Exception Management on IBM i, IBM i Message Files and Exception Handling in CL in 2026.SNDPGMMSG: Sends a program message. Explained in IBM i Message Files and Exception Handling in CL in 2026.RCVMSG: Receives a message from a message queue. Explained in IBM i Message Files and Exception Handling in CL in 2026.ADDJOBSCDE / WRKJOBSCDE: Adds and manages job schedule entries. Explained in IBM i Job Scheduling.RTVDTAARA / CHGDTAARA: Retrieves and changes data area contents. Explained in IBM i CL Data Areas and Data Queues.SNDDTAQ / RCVDTAQ: Sends to and receives from a data queue. Explained in IBM i CL Data Areas and Data Queues.STRCMTCTL: Starts commitment control for a job. Explained in IBM i Commitment Control and Transaction Management.CRTSRVPGM: Creates a service program from modules. Explained in Build an ILE RPG Service Program.CHGVAR: Changes the value of a CL variable. Explained in CL commands for RPG programmers.
SQL and Db2 for i
SQL statements, functions, and services in Db2 for i.
MERGE: Inserts or updates rows in one statement. Explained in Db2 for i MERGE Statement.WITH (common table expressions): Names intermediate result sets, including recursive queries. Explained in DB2 for i CTEs and Recursive SQL.ROW_NUMBER, RANK, LAG, LEAD: Window functions computed over a partition of rows. Explained in DB2 for i Window Functions.JSON_TABLE, JSON_VALUE, XMLTABLE: Read JSON and XML documents as relational data. Explained in DB2 for i JSON and XML Support in 2026.CREATE PROCEDURE: Creates an SQL stored procedure. Explained in DB2 for i SQL Stored Procedures and User-Defined Functions in 2026.CREATE TRIGGER: Creates a trigger that runs when table data changes. Explained in DB2 for i Triggers in 2026.QSYS2.HTTP_GET / HTTP_POST: Call web services from SQL. Explained in IBM i HTTP Client from RPG.QSYS2.ACTIVE_JOB_INFO: SQL service that returns active job information. Explained in IBM i Observability in 2026.QSYS2.OBJECT_STATISTICS: SQL service that returns object information. No dedicated guide yet.
DDS and Display Files
Keywords used in DDS to define 5250 display files and subfiles.
SFLCTL: Identifies a subfile control record format. Explained in IBM i RPG Subfile Programming.SFLPAG / SFLSIZ: Sets the subfile page size and total size. Explained in IBM i RPG Subfile Programming.SFLDSP / SFLCLR: Controls subfile display and clearing. Explained in IBM i RPG Subfile Programming.INDARA: Places indicators in a separate indicator area. Explained in IBM i Display Files and 5250 UX Modernisation in 2026.OVERLAY: Displays a record format without clearing other formats. Explained in IBM i Display Files and 5250 UX Modernisation in 2026.
Administration
Day-to-day system administration: work management, spooled output, scheduling, backups, journaling, fixes and authority.
Subsystems and job descriptions: How the system routes and runs work. Explained in IBM i Subsystems and Job Descriptions Explained, IBM i Work Management in Depth in 2026.Output queues and spooled files: Where printed output waits and how to manage it. Explained in IBM i Output Queues and Spool Files Explained, IBM i Output Queue and Print Management.Job scheduling: Starting jobs at set times with the job scheduler. Explained in IBM i Job Scheduling.Save and restore: Backing up and recovering libraries and objects. Explained in IBM i Save and Restore.Journaling: Recording changes to objects for recovery and replication. Explained in IBM i Journaling and Commitment Control Explained, IBM i Journal Management.PTFs and upgrades: Applying fixes and moving to a new release. Explained in IBM i PTF Management and Maintenance Planning, IBM i PTF Management and OS Upgrades in 2026.User profiles and authority: Controlling who can use which objects. Explained in IBM i Security in 2026.
Troubleshooting
Start from the symptom and follow the article that explains the cause.
A program ends with an error message: Read the message and the job log to find the cause. Explained in IBM i Error Handling and Message Control Explained, IBM i Message Files and Exception Handling in CL in 2026.An RPG program gives wrong results: Step through the program with the debugger. Explained in Debugging RPG programs, Debugging on IBM i.Jobs are slow or the system is paging: Check memory pools and active jobs. Explained in IBM i Performance Tuning in 2026, IBM i Memory Pools and Pool Sizing.The system cannot reach the network: Check interfaces, routes and ports. Explained in IBM i TCP/IP Configuration and Troubleshooting.
Quick-reference pages: