Search Results cn_api




Overview

CN_API is the core public application programming interface for the Oracle E-Business Suite Incentive Compensation (CN) module. Maintained in the APPS schema as a package body with a status of VALID, it exposes a broad library of utility routines that other Incentive Compensation components — forms, concurrent programs, and dependent packages — call to validate input, resolve descriptive identifiers, and enforce data-integrity rules against the compensation repository. The ETRM metadata classifies the object as an API, confirming its role as a supported entry point rather than a purely internal helper. It is referenced by 132 other packages, which establishes it as one of the most heavily depended-upon objects in the CN schema. The package does not reference or get referenced in a circular fashion at the database-object level; rather, it consumes other CN and Oracle Application Object Library (AOL) packages such as CN_COMP_PLANS_PKG, CN_MESSAGE_PKG, FND_API, FND_FLEX_KEY_API, FND_MESSAGE, and FND_MSG_PUB to perform its work.

Key Procedures and Functions

The documented interface comprises 83 procedures and functions. The reusable value-resolution helpers include GET_FND_MESSAGE, which retrieves a message string from the AOL message dictionary; GET_RATE_TABLE_NAME and GET_RATE_TABLE_ID, which translate between a rate schedule's descriptive name and its surrogate identifier; GET_PERIOD_NAME and GET_PERIOD_ID, which resolve period identifiers and names; GET_REV_CLASS_NAME and GET_REV_CLASS_ID, which map revenue classes to their identifiers; and GET_LKUP_MEANING, which returns the meaning of a value from the CN_LOOKUPS lookup set. A second group provides parameter validation: CHK_MISS_CHAR_PARA, CHK_MISS_NUM_PARA, and CHK_MISS_DATE_PARA verify that a mandatory character, numeric, or date argument has been supplied; CHK_NULL_CHAR_PARA, CHK_NULL_NUM_PARA, and CHK_NULL_DATE_PARA verify that an optional argument is null where required; CHK_MISS_NULL_CHAR_PARA, CHK_MISS_NULL_NUM_PARA, and CHK_MISS_NULL_DATE_PARA combine both checks; and PE_NUM_FIELD_MUST_NULL, PE_CHAR_FIELD_MUST_NULL, and PE_NUM_FIELD_CANNOT_NULL enforce column-level business rules. These routines centralize consistency so that calling code does not re-implement validation logic.

Tables Accessed

CN_API reads and writes the principal Incentive Compensation configuration and transaction tables through APPS synonyms. Among the documented tables are CN_COMP_PLANS and CN_COMP_PLANS_ALL (compensation plan headers), CN_CALC_FORMULAS and CN_CALC_FORMULAS_ALL (formula definitions), CN_COMMISSION_LINES (calculated commission detail), CN_CREDIT_TYPES (credit categories), CN_PMT_PLANS and CN_ROLE_PMT_PLANS (payment plans and their role assignments), CN_QUOTA_ASSIGNS (quota allocations), CN_RATE_SCHEDULES (rate tables), CN_REVENUE_CLASSES (revenue classification), CN_ROLE_PLANS (plan-to-role mapping), CN_ATTRIBUTE_RULES (attribute-based eligibility), and CN_SRP_PAYEE_ASSIGNS (payee assignments). The package also reaches outside CN to GL_CODE_COMBINATIONS for account validation and to supporting views such as ASO_I_SALES_CREDIT_TYPES_V, CN_ACC_PERIOD_STATUSES_V, and CN_RULE_ATTRIBUTES_DESC_V. The dependency list further confirms use of CN_PERIODS, CN_PERIOD_STATUSES, CN_PAYRUNS, CN_PAYMENT_WORKSHEETS, CN_REPOSITORIES, CN_SALESREPS, and the JTF resource tables.

Usage Notes

CN_API is invoked at runtime by Oracle Incentive Compensation forms, by concurrent programs that calculate and pay commissions, and by custom extensions that need to resolve identifiers, validate parameters, or obtain lookup and message text. Because 132 packages depend on it, changes to its documented signatures can cascade widely across the CN schema, and modifications should be regression-tested against all dependent objects. The presence of FND_API, FND_MSG_PUB, and FND_LOG dependencies indicates that CN_API participates in the standard AOL error-handling and debug-logging framework, so callers should inspect the message stack after invocation. Direct calls should reference APPS.CN_API with the appropriate APPS synonyms in place, and the package should be treated as a supported integration surface consistent with its API classification.