Search Results c_max_custom_periodicities
Overview
APPS.BSC_PERIODS_UTILITY_PKG is a PL/SQL utility package that belongs to the Oracle Balanced Scorecard (BSC) product family within Oracle E-Business Suite. Its stated purpose, as reflected in the package header comments, is to act as a utility file for Calendar, Periodicity, and Time integration modules in the BSC Designer. Within the BSC data model, calendars and periodicities define how time-based performance data is organized — covering fiscal years, base periods, custom period groupings, and short names used in user interface prompts and reporting. This package centralizes the logic required to create, validate, retrieve, and label those calendar and periodicity definitions.
The package is classified as OTHER in ETRM, indicating it is not part of the supported public APIs for external integration but rather an internal utility layer consumed by other BSC packages and Designer components. The header documents a series of enhancements and bug fixes spanning 2005 and 2006, including support for non-rolling dimensions, daily periodicity short names, and quarter date labels, which confirms its role as an evolving internal service provider. The presence of a CHECK_ERROR_MESSAGE procedure reflects a standard error-handling pattern used to translate internal failures into user-facing messages.
Key Procedures and Functions
- CHECK_ERROR_MESSAGE — Inspects and resolves error message text, typically used to determine whether an operation failed and to prepare messages for display or logging.
- IS_PERIOD_NAME_UNIQUE — Validates that a requested period name does not collide with an existing definition in the calendar.
- GET_CALENDAR_NAME / GET_CALENDAR_SHORT_NAME — Retrieve the full and abbreviated names of a calendar for display and reporting.
- GET_CUST_PER_CNT_BY_CALENDAR — Returns the number of custom periodicities defined for a given calendar.
- GET_NEXT_CUST_PERIOD_DB_COLUMN, GET_NEXT_PERIODICITY_ID, GET_NEXT_CALENDAR_ID — Generate the next available identifiers, columns, or sequence values for new definitions.
- IS_PERIODICITY_IN_CALENDAR, IS_BASE_PERIODICITY_DAILY — Boolean-style checks on periodicity membership and the daily base period flag.
- GET_PERIODICITY_SOURCE, GET_PERIODICITY_NAME, GET_PERIODICITY_SHORT_NAME, GET_DAILY_PERIODICITY_SHT_NAME, GET_UNIQUE_SHORT_NAME — Resolve periodicity source coding and short/long naming conventions.
- GET_PERIODS_IN_BASE_PERIOD — Determines how many sub-periods exist within a base period.
- GET_FISCALYEAR_BY_CALENDAR, GET_START_PERIOD_DATE, GET_END_PERIOD_DATE, GET_QUARTER_DATE_LABEL — Derive fiscal year and date boundaries for periods and quarters.
- PRINT_PERIOD_METADATA — Debug utility that outputs period metadata for diagnostics.
- ROLLBACK_API — Reverts uncommitted changes when a calendar or periodicity operation fails partway through.
Tables Accessed
The package reads and writes the core BSC calendar and periodicity tables through APPS synonyms. BSC_SYS_CALENDARS_B and BSC_SYS_CALENDARS_TL hold base and translated calendar definitions; BSC_SYS_PERIODICITIES stores periodicity specifications including custom groupings (up to the documented maximum of 20). Sequence objects BSC_SYS_CALENDAR_ID_S and BSC_SYS_PERIODICITY_ID_S supply primary keys. BSC_DB_CALENDAR likely holds the physical column mappings for custom periods. BIS_LEVELS and BIS_LEVELS_TL provide the underlying BIS dimension levels and translations that calendars map against. BSC_MESSAGE_LOGS supports CHECK_ERROR_MESSAGE and diagnostic messaging, while DUAL and DBMS_UTILITY are used for scalar lookups and low-level utility calls.
Usage Notes
This package is an internal dependency rather than a public API. It is referenced by nine other packages and is typically invoked indirectly through BSC Designer forms where users create or edit calendars and periodicities, through concurrent programs that build or refresh BSC period metadata, and through custom extensions that need to resolve calendar names, period dates, or periodicity attributes. Because it is classified as OTHER, sites should treat its signatures as subject to change across patch levels. When troubleshooting calendar or periodicity creation errors, the CHECK_ERROR_MESSAGE procedure is the documented entry point for obtaining the underlying failure text, and PRINT_PERIOD_METADATA may be used to inspect the metadata being processed.