Search Results create_ctr_property




Overview

CSI_COUNTER_PVT is a private PL/SQL package in the APPS schema that implements the core business logic for Oracle E-Business Suite's Install Base counter functionality. Counters in Oracle EBS represent measurable usage metrics associated with customer assets or item instances — examples include meter readings, copy counts, tonnage, or mileage. These metrics feed usage-based billing, preventive maintenance scheduling, warranty validation, and service contract entitlement checks.

As a PVT (private) package, CSI_COUNTER_PVT is not intended for direct invocation by external callers. It functions as the implementation layer beneath the public API CSI_COUNTER_PUB, which is its primary consumer. The package encapsulates the low-level data manipulation required to create, update, and maintain counter definitions, counter properties, counter associations, readings, and derived usage data. It is classified with the API type PVT in ETRM 12.2.2, confirming its role as an internal library rather than a published interface.

Key Procedures and Functions

The documented interface comprises nine procedures and functions:

  • CREATE_COUNTER — Creates a new counter definition, establishing the base record in the counter definition tables.
  • CREATE_CTR_PROPERTY — Creates properties associated with a counter, allowing extended attributes to be attached to counter definitions.
  • CREATE_CTR_ASSOCIATIONS — Establishes associations between counters and the entities they measure, such as item instances, systems, or components.
  • CREATE_READING_LOCK — Acquires a lock to serialize counter reading operations, preventing concurrent modification conflicts during reading capture.
  • CREATE_DAILY_USAGE — Derives and stores daily usage values, supporting time-based consumption calculations.
  • UPDATE_COUNTER — Modifies attributes of an existing counter definition.
  • UPDATE_CTR_PROPERTY — Updates previously defined counter properties.
  • UPDATE_CTR_ASSOCIATIONS — Modifies existing counter-to-entity associations.
  • UPDATE_CTR_VAL_MAX_SEQ_NO — Maintains the maximum sequence number for counter values, ensuring reading sequences remain consistent and ordered.

Tables Accessed

The package manipulates the core CSI counter data model through APPS synonyms. Definition tables include CSI_COUNTERS_B and its translation table CSI_COUNTERS_B_S, CSI_COUNTER_TEMPLATE_B, and CSI_CTR_PROPERTY_TEMPLATE_B. Relationship and association data resides in CSI_COUNTER_ASSOCIATIONS, CSI_COUNTER_RELATIONSHIPS, and CS_COUNTER_GROUPS_S. Transactional and derived data are held in CSI_COUNTER_READINGS, CSI_CTR_PROPERTY_READINGS, CSI_COUNTER_USAGE_FORECAST, and CSI_COUNTER_DERIVED_FILTERS. The package also validates item context against CSI_ITEM_INSTANCES, MTL_SYSTEM_ITEMS, MTL_SYSTEM_ITEMS_B, and MTL_PARAMETERS to confirm that counters are applied to valid, organization-enabled items.

Usage Notes

CSI_COUNTER_PVT is referenced by CSI_COUNTER_PUB, CSI_COUNTER_PVT itself, CSI_COUNTER_READINGS_PVT, CSI_COUNTER_TEMPLATE_PVT, and CSI_TIME_BASED_CTR_ENGINE_PKG. The private package also depends on CSI_CTR_DATASTRUCTURES_PUB, which supplies shared PL/SQL data structures such as record types and table types used as parameter payloads across the counter API stack.

Typical invocation paths include the Install Base counter setup forms, counter reading entry screens, the time-based counter engine concurrent process, and custom extensions that call CSI_COUNTER_PUB. Custom code should never call CSI_COUNTER_PVT directly, as its signature is not guaranteed across patches or releases. The behavior is consistent between EBS 12.1.1 and 12.2.2, though 12.2.x deployments should confirm the package remains valid via the ETRM dependency reports after any patch application.