Informix Error -4627
-4627 The program cannot exit an INPUT statement at this point because it
is not within an INPUT statement.The current statement is EXIT INPUT but it is not in the context of an INPUT statement. Inspect the source module backward from this point to determine what happened to the INPUT statement. Perhaps the current statement was misplaced, or perhaps an END INPUT statement was inserted at an earlier point.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-4627 fires when EXIT INPUT appears outside the context of an INPUT statement — per the
official guidance, inspect the source backward from this point to determine what happened to
the enclosing INPUT statement.
EXIT INPUTmisplaced outside anyINPUTstatement, per the official guidance — the first named cause.- An
END INPUTstatement inserted earlier than intended, per the official guidance — the second named cause, closing theINPUTblock before thisEXIT INPUTis reached.
Solutions / Resolution
- Inspect the source module backward from this point, per the official guidance, to
find what happened to the enclosing
INPUTstatement. - Move the misplaced
EXIT INPUT, or remove/relocate an incorrectly earlyEND INPUT, as appropriate.
Examples
An EXIT INPUT after an early END INPUT
INPUT BY NAME rec.*
...
END INPUT
EXIT INPUT
-- -4627: END INPUT already closed the block above
Diagnostic Checks
- Trace backward from the flagged
EXIT INPUTto locate the enclosingINPUTstatement (or an unexpectedly earlyEND INPUT), and correct the block structure.
Related Errors / Related Topics
- -4314 — the
MENU-specific version of this sameCONTINUE/EXITscope-mismatch condition. - -4488 — "The program cannot CONTINUE or EXIT statement-type at this point because it is not immediately within statement-type statement." The general, statement-type-parameterized version of this same condition.
EXIT INPUT appears outside an INPUT statement's context — trace backward to find the
actual (or incorrectly early) block boundary.