If you're using Code for IBM i (the standard VS Code extension)
1 - Open the IBM i Output panel
Every time you run a User Action, Code for IBM i writes the job log and any spool output to: View → Output → (dropdown) → “IBM i Output”
Inside that panel you’ll see:
The command that ran
The job log
Any spooled file content (if generated)
If your compile failed, the error messages will be right there.
2. Check your User Action for OUTPUT(*PRINT)
This is the #1 reason listings don’t appear.
If your action uses something like:
"command": "CRTBNDRPG PGM(&L/&O) SRCFILE(&L/&F) SRCMBR(&N)"
…then IBM i defaults to:
OUTPUT(*NONE)
Meaning: no listing is created, so VS Code has nothing to show.
Fix it by adding OUTPUT(*PRINT):
"command": "CRTBNDRPG PGM(&L/&O) SRCFILE(&L/&F) SRCMBR(&N) OUTPUT(*PRINT)"
Or for modules:
"command": "CRTRPGMOD MODULE(&L/&O) SRCFILE(&L/&F) SRCMBR(&N) OUTPUT(*PRINT)"
Once OUTPUT(*PRINT) is there, the listing will appear in the Spooled Files panel.
3. Open the Spooled Files browser
In the IBM i sidebar: IBM i → Spooled Files
You’ll see:
Your job
QSYSPRT (compile listing)
QPJOBLOG (job log)
Click the listing → it opens directly in VS Code.
This is the closest thing to WRKSPLF inside VS Code.
4. If you want the listing to open automatically
There’s a setting for that: Settings → Extensions → Code for IBM i → “Auto-open Spooled File”
Turn that on and VS Code will pop the listing open as soon as the compile finishes.
5. If you still don’t see a listing
Here are the usual culprits:
| Issue | Fix |
|---|---|
| OUTPUT(*NONE) | Add OUTPUT(*PRINT) |
| Compiling with RPG Language Server | Use a real User Action instead |
| Using CRTRPGMOD without DBGVIEW | Add DBGVIEW(*SOURCE) or *LIST |
| Spooled file goes to a different job | Check “Jobs” panel in the IBM i sidebar |
