Results for “so_bill_to_contacts_v”

4 results




AI-generated from documented ETRM metadata — verify critical details on the linked pages.

Overview

The SO_BILL_TO_CONTACTS_V view belongs to the Order Entry (OE) module of Oracle E-Business Suite and exposes bill-to contact information drawn from the Receivables contact and phone infrastructure. In EBS 12.1.1 and 12.2.2, this view serves as a convenience access point for retrieving contact names, job titles, and telephone details associated with customer contacts designated for billing purposes. It is used primarily in reporting, order-entry extensions, and integration scenarios where an application needs a flattened, denormalized representation of the person to whom an order or invoice should be addressed.

An important characteristic of this view, per the ETRM metadata, is that it is not implemented in the database in the environment from which the metadata was extracted. This means the view text exists as documented reference material but may not be deployed in a given instance. Consultants and developers should confirm existence by querying ALL_VIEWS before referencing it in custom code, and should treat the documented definition as the authoritative specification if the view must be recreated.

Underlying Base Objects

The view is defined over three Receivables tables. Although the ETRM metadata lists no explicitly documented base objects, the embedded view text establishes the dependencies clearly:

  • RA_CONTACTS (RC) — The primary source of contact identity, supplying last name, first name, job title, contact ID, customer ID, and status.
  • RA_PHONES (RPH) — Provides area code, phone number, and extension. It is outer-joined to RA_CONTACTS on CONTACT_ID.
  • RA_CONTACT_ROLES (RCR) — Supplies the usage/role context for the contact. It is also outer-joined on CONTACT_ID.

The joins are implemented as outer joins (indicated by the (+) syntax), which is significant because Oracle EBS 12.1.1 and 12.2.2 both rely on the traditional Oracle outer-join operator rather than ANSI LEFT OUTER JOIN syntax in legacy view definitions. A contact therefore appears even when no matching phone or role row exists, provided the filter conditions are satisfied.

Key Columns

  • LAST_NAME, FIRST_NAME — The contact's surname and given name from RA_CONTACTS.
  • FULL_NAME — A concatenation of last name, a comma and space, and first name (LAST_NAME || ', ' || FIRST_NAME).
  • JOB_TITLE — The contact's professional title.
  • AREA_CODE, PHONE_NUMBER, EXTENSION — Individual telephone components from RA_PHONES, exposed separately for formatting flexibility.
  • PHONE_NUMBER_LONG — A derived, formatted telephone string. A DECODE expression constructs the display value as "(area) number EXT extension", omitting components where values are null or empty.
  • CONTACT_ID — The unique identifier of the contact, usable as a foreign key to RA_CONTACTS.
  • CUSTOMER_ID — The identifier of the customer (party/account) with which the contact is associated.

Common Use Cases and Queries

The filter logic embedded in the view is central to its behavior. It restricts results to contacts with STATUS = 'A' (active). Phone rows are limited to the primary active phone (NVL(RPH.PRIMARY_FLAG(+),'N') = 'Y' and NVL(RPH.STATUS(+),'A') = 'A'). Role rows are limited to the bill-to usage code via NVL(RCR.USAGE_CODE(+),'BILL_TO') = 'BILL_TO', so only contacts whose role is bill-to (or unspecified, defaulting to bill-to) qualify.

A typical report retrieving bill-to contacts for a customer:

SELECT full_name, job_title, phone_number_long
FROM so_bill_to_contacts_v
WHERE customer_id = :p_customer_id
ORDER BY last_name, first_name;

For integration or validation logic, the contact identifier and raw phone parts are often more useful than the formatted string:

SELECT contact_id, customer_id, area_code, phone_number, extension
FROM so_bill_to_contacts_v
WHERE contact_id = :p_contact_id;

Because the view may not be deployed, a safer pattern is to embed the documented query directly in a custom view or report data source, preserving the outer-join semantics and the NVL defaults so that results remain consistent with the published definition.