Search Results temp_dir




Overview

FND_FILE is the foundational Oracle EBS PL/SQL package responsible for concurrent program file I/O. Its package body in the APPS schema provides the interface through which concurrent programs, reports, and log-writing routines create, open, write to, and close temporary output and log files managed by the concurrent manager. Rather than writing directly to the operating system, callers invoke FND_FILE, which abstracts the physical file location and naming conventions, tracks open file handles, and resolves the log and output file identifiers assigned by the concurrent manager at runtime. In Oracle EBS 12.1.1 and 12.2.2 the package remains a core, VALID object in the APPLSYS/APPS code environment and is a mandatory dependency for the majority of concurrent-enabled PL/SQL, including Oracle Reports and BI Publisher integration paths. The ETRM metadata records an API classification of OTHER and documents eight public procedures and functions.

Key Procedures and Functions

  • PUT — Writes a string to the currently open log or output file without appending a newline; the low-level write primitive.
  • PUT_LINE — Writes a string followed by a newline, the most commonly used routine for both log and output text.
  • NEW_LINE — Emits a line terminator to the active file, used to separate logical blocks of output.
  • PUT_NAMES — Registers the logical file names and associated file types with the package so subsequent write calls resolve to the correct physical handles.
  • GET_NAMES — Returns the currently registered file names and types, allowing callers to inspect or reuse the active assignment.
  • RELEASE_NAMES — Releases the registered file names, clearing state after processing completes or when switching output targets.
  • CLOSE — Closes an open file handle and flushes pending buffered content.
  • IS_OPEN — Returns whether a given file handle or logical name is currently open, supporting defensive coding around write calls.

Tables Accessed

FND_FILE resolves its physical filenames through FND_TEMP_FILES and its sequence FND_TEMP_FILES_S. The sequence supplies unique identifiers for temporary file rows, while FND_TEMP_FILES stores the metadata that maps a concurrent request's logical output and log names to concrete operating-system paths. Because the user searched for fnd_temp_files_s, it is worth noting that this sequence is a direct, documented dependency of the FND_FILE package body; every file registration ultimately consumes it. FND_FILE additionally references DUAL, V$PARAMETER (to determine database-level directory and file settings), and the UTL_FILE and UTL_RAW built-ins for physical I/O. FND_TEMP_FILES is accessed through an APPS synonym and is the persistent bridge between the concurrent manager's file allocation and the package's runtime handles.

Usage Notes

FND_FILE is invoked almost exclusively from within concurrent program logic. A typical pattern calls FND_FILE.PUT_NAMES to bind the request's log and output files, writes diagnostic and report lines with PUT_LINE or PUT, then CLOSE and RELEASE_NAMES to finish. It is referenced by 2390 other database objects, reflecting its ubiquity across seeded and custom concurrent programs. Direct invocation from Oracle Forms is uncommon; instead, forms submit concurrent requests whose programs call FND_FILE internally. Custom code should treat the package as a stable, supported utility and avoid writing to FND_TEMP_FILES directly, relying instead on the documented procedures above. The FND_FILE_PRIVATE and FND_CONC_PRIVATE_UTILS packages, also documented as dependencies, perform the lower-level handle management behind this public API.