Allowing a Program to Re-Read an Input File with QINLINE Specified

If stdin is specified (or the default accepted) for an input file that is not part of an interactive job, then the QINLINE file is used. You cannot re-read a file with QINLINE specified, because the database reader will treat it as an unnamed file, and therefore it cannot be read twice. You can avoid this by issuing an override. If you are reading characters from stdin, pressing F4 triggers the runtime to end any pending input and to set the EOF indicator on. Pressing F3 is the same as calling exit() from your ILE C/C++ program.

If stdin is specified in batch and has no overrides associated with it, then QINLINE will be used. If stdin has overrides associated with it, then the override is used instead of QINLINE.
Note: You can also use freopen() to reopen text streams. The stdout and stderr streams can be reopened for printer and database files. The stdin stream can be overridden only with database files. Using freopen() to redirect stdin/stdout/stderr from/to an IFS stream file is not supported.