Search Results write_log




Overview

AS_VALIDATE_SETUP is a PL/SQL package body owned by the APPS schema within the Oracle E-Business Suite, associated with application identifier 279 (the Advanced Sales/TeleSales family of modules). Its principal business function is to validate that an Oracle EBS Sales or TeleSales implementation has been configured correctly before business transactions are processed. Rather than enforcing referential or transactional integrity at the point of data entry, AS_VALIDATE_SETUP provides a setup-level diagnostic layer that inspects the seeded and user-defined configuration records on which the Sales application depends — profile options, lookup values, sales stages, territories, sales credits, leads, and forecasting structures. When this configuration is incomplete or internally inconsistent, downstream operations such as lead qualification, opportunity management, territory assignment, and forecast rollup can fail or produce incorrect results. The package is therefore typically treated as a pre-go-live or post-upgrade validation utility, and its findings inform the implementation team of configuration gaps that must be resolved. The object is classified as OTHER within the ETRM taxonomy, indicating it is not a public API intended for external integration, but a diagnostic and support-oriented utility.

Key Procedures and Functions

ETRM documents a single public procedure for this package: VALIDATE_SETUP. This procedure performs the aggregate setup validation for the module. Its purpose is to evaluate the collection of configuration records against the prerequisites expected by the Sales application and to report failures or anomalies through the standard concurrent-program log facility. The procedure operates at the level of an entire implementation rather than a single transaction, and it is designed to be executed in a batch or administrative context.

Within the package source, the procedure Write_Log is defined and serves as the logging kernel used by the validation logic. Write_Log accepts a module identifier and a message, checks the current message level through FND_MSG_PUB, and either routes the text to the debug message mechanism (AS_UTILITY_PVT.Debug_Message) or writes it directly to the concurrent manager log file using FND_FILE.PUT_LINE. Because FND_FILE imposes a line-length constraint, Write_Log segments messages into 77-character chunks and writes each chunk sequentially, ensuring that long diagnostic strings are not truncated. It also contains an exception handler that records the SQLCODE and SQLERRM when an unexpected error occurs. The presence of the user-specified term "write_log" in the search reflects the prominence of this internal logging routine. The package additionally declares helper functions Get_Profile_Site_Value and Get_Profile_JTF_Site_Value, which retrieve site-level profile option values for application identifiers 279 and 690 respectively; these are used by the validation logic to resolve configuration parameters. Only VALIDATE_SETUP is documented as a public entry point.

Tables Accessed

The package reads from a broad set of configuration and transactional metadata tables through APPS synonyms:

Usage Notes

AS_VALIDATE_SETUP is normally invoked from the concurrent manager, either directly as a diagnostic concurrent program or as a supporting routine called by a Sales setup validation program. Because the ETRM metadata records zero packages referencing it, it is not embedded in standard inter-package call chains; it is intended for administrative, implementation, and support use. Typical invocation points include initial implementation verification, upgrade validation following application of patches or family packs, and troubleshooting of territory, lead, or forecast failures. All output is directed to the concurrent request log, with debug-level messages available when the FND message level is set appropriately. Custom code should treat the package as diagnostic only and should not depend on it for transactional processing or data modification, as it is not a supported public API.