Informix Error -3031: The form form-name cannot be found or opened.
Cause and resolution
The form form-name cannot be found or opened.
PERFORM cannot locate the compiled form form-name.frm in the current directory or in a directory that is named in the DBPATH environment variable. Or if it did find the file, it could not open it. Check the spelling of the name. Verify that the file exists, and check that your account has read access to it.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-3031 fires when PERFORM can't locate the compiled form-name.frm file, or found it but
couldn't open it — per the official guidance, PERFORM looks in the current directory and any
directory named in DBPATH.
- The
.frmfile doesn't exist in the current directory or anyDBPATHdirectory, per the official guidance — the first named cause. - The file was found but couldn't be opened, per the official guidance — a related, less common cause.
Solutions / Resolution
- Check the spelling of the form name, per the official guidance.
- Verify that the file exists, per the official guidance.
- Check that the account has read access to it, per the official guidance.
Examples
Checking for the compiled form file
echo $DBPATH
ls -l myform.frm
Diagnostic Checks
- Check the form name's spelling, whether the
.frmfile exists in the current directory orDBPATH, and whether the account has read access to it.
Related Errors / Related Topics
- -3001 — "There are no forms in the current directory." A related form-lookup error, about no forms being present at all rather than one specific named form not being found.
- -3005 — "You do not have permission to access the form form-name." A related form-access error specifically about OS-level read/write permissions once the file is known to exist.
PERFORM can't find or open the named compiled form — check its spelling, existence in
DBPATH, and read permissions.