Search Results cs_customer_product_statuses




Overview

The CS_CUSTOMER_PRODUCT_STATUSES table is a foundational data object within the Oracle E-Business Suite Service (CS) module, specifically for managing the installed base of customer products. Its primary role is to serve as a reference table, defining the valid statuses that can be assigned to a customer's product instance recorded in the system. These statuses track the lifecycle and operational condition of products, such as whether they are active, inactive, under repair, or retired. The table is central to maintaining data integrity for product status transitions, which are often governed by business rules defined in related transaction type setups.

Key Information Stored

While the provided ETRM metadata does not list all columns, the structure centers on the primary key identifier and the status definition. The most critical column is CUSTOMER_PRODUCT_STATUS_ID, which is the unique numeric identifier (primary key) for each status record. Typically, such a table would also contain columns like STATUS_CODE (a short, unique identifier), STATUS_MEANING or NAME (the descriptive text), ENABLED_FLAG, START_DATE_ACTIVE, and END_DATE_ACTIVE to control the availability of the status for assignment. The table's description confirms it stores the discrete list of statuses applicable to products in the installed base.

Common Use Cases and Queries

A primary use case is validating and reporting on the operational state of all installed customer products. For instance, service managers may run reports to identify all products with an "Inactive" status for decommissioning reviews, or all products with an "Under Repair" status to manage service workloads. The table is also crucial during service transactions (like updates or returns) where the system validates and applies status changes based on predefined rules. A common query pattern involves joining this table to the main installed base details table to translate status IDs into meaningful descriptions for reporting.

SELECT cp.instance_number,
       cp.serial_number,
       sts.status_code,
       sts.status_meaning
FROM   cs_customer_products_all cp,
       cs_customer_product_statuses sts
WHERE  cp.customer_product_status_id = sts.customer_product_status_id
AND    sts.status_code = 'ACTIVE';

Related Objects

The table has defined foreign key relationships with other core Service tables, as documented in the metadata:

  • CS_CUSTOMER_PRODUCTS_ALL: This is the primary installed base table. It references CS_CUSTOMER_PRODUCT_STATUSES via its CUSTOMER_PRODUCT_STATUS_ID column to store the current status of each product instance.
  • CS_TRANSACTION_TYPES_B: This table references the statuses twice, defining allowed status transitions for service transactions. The column INSTALLED_CP_STATUS_ID likely references the starting status, while NEW_CP_STATUS_ID references the resulting status after a transaction of that type is processed.

These relationships enforce that statuses assigned to products or used in transaction type setups must be valid entries defined in the CS_CUSTOMER_PRODUCT_STATUSES table.