Overview of Public Unique IDs

When users create records in the database, the applications use document sequencing as they generate unique IDs for each business object record. These IDs are known as public unique IDs, or PUIDs. Understandably, these numbers aren't easy to read or use because of their length and complexity. To overcome the issue of long IDs, you can make these IDs more user-friendly and readable during setup.

These PUID are used in:

  • The data model

  • Unique sequence generation when you use advanced setup

  • Global search by PUID attributes

When you integrate your sales application and other, external applications, the sales application can "call" the PUIDs from those other applications. Which application is calling depends on whether an application in the external application is calling the sales application, or whether a person is using their PUIDs.

You specify PUIDs when you create objects. For example, Party_Number is the PUID for accounts and contacts. When a new account is created, the PUID value can be automatically created by a central routine or supplied by the end user.

In this documentation, we talk about "advanced setup" for PUIDs. This means you set up the unique sequence generation of PUIDs that's a specific prefix and radix configuration. You set these for each business object. In addition, keep in mind that PUID specifications mandate that users can search for all supported business objects by PUID and Party Number.

Many of the business objects support PUIDs, as shown in this table:

Top-Level Object Name

Model Support (PUID Attribute Name)

Object PUID Generation

Global Search By PUID

PUID Exposed in List Management

Account

PartyNumber (RegistryID)

Supported

Supported

Supported

Action

ActionNumber

Supported

NA

NA

Action Plan

ActionPlanNumber

Supported

NA

NA

Activity

Activity_Number

Supported

Supported

Supported

Asset

AssetNumber

Supported

Supported

Supported

Business Plans

BusinessPlanNumber

Supported

Supported

Supported

Campaign

CampaignNumber

Supported

Supported

Supported

Competitor (called Sales Competitor in Application Composer)

PartyNumber

Supported

Supported

Supported

Contact

PartyNumber (RegistryID)

Supported

Supported

Supported

Custom Objects

Custom Attribute

Supported

Supported

Supported

Deal Registration

Deal Number

Supported

Supported

Supported

Interaction

InteractionNumber

Supported

Supported

Supported

Lead (called Sales Lead in Application Composer)

Lead_Number

Supported

Supported

Supported

MDF Budget, MDF Claim, MDF Claim Settlement, MDF Request

MDF Claim: Code (ClaimCode)

MDF Request: Code (FundRequestCode)

MDF Budget: Code (BudgetCode)

MDF Claim Settlement: Code (ClaimSettlementCode)

Supported

Supported

Supported

Objective

ObjectiveNumber

Supported

NA

NA

Opportunity

Opty_Number

Supported

Supported

Supported

Partner

Company_Number

Supported

Supported

Supported

Quote (called Sales Orders in Application Composer)

OrderHeaderNumber

Supported

Supported

Supported

Price Book

PriceBook_Code

Supported

Supported

Supported

Product

ItemNumber

Supported

Supported

Supported

Product Group

Reference_Number

Supported

Supported

NA

Program Enrollment

Enrollment Number

Supported

NA

Supported

Promotion

Sales Promotion Code

Supported

NA

Supported

Resource

Party Number

Supported

Supported

Supported

Service Request

SRNumber

Supported

Supported

Supported

Template Action Plan

TemplateNumber

Supported

NA

NA

Territory (called Sales Territory in Application Composer)

Supported (Unique Territory Number)

Supported

NA

Supported

Territory Proposal (called Sales Territory Proposal in Application Composer)

Supported (Proposal Number)

Supported

NA

Supported

Work Order

WO_NUMBER

Supported

Supported

Supported

Your Setup Options

You have these options for setup:

  • Use the default setup, where no implementation steps are required.

  • Use the basic setup, which is configurable to a certain degree. If you use this setup, the default setup isn't used.

  • Use an advanced setup which is more complex and configurable. The default and basic setups apply to all objects. Advanced setup is on a per-object basis.

Here's a list of setup options and where to find more information about the setup.

Setup Option

Description

Where to Find More Information

Default Setup

In this setup, no implementation steps are required. The application automatically generates a unique 15-digit numeric ID for each record. The document sequencing begins with a 1.

No additional documentation, other than this introduction

Basic Setup

In this setup, you set two profile options where you configure the radix (or base numbers and characters) and prefix to use. The application generates an alphanumeric public unique ID instead of the default numeric public unique ID for each record.

See the Public Unique ID Basic Setup section in this topic

Advanced Setup

In this setup, you define a radix and prefix for each object. It isn't required for the radix and prefix to be different for each object.

See the Public Unique ID Advanced Setup section in this topic

Public Unique ID Basic Setup

In the basic setup, you define a single prefix that's shared across all business objects in the implementation. In addition, you have several different radix values that can be used. Together these values form the PUIDs.

To perform the basic setup, you set these profile options:

  • CRM Public Unique ID String Encoding profile option: Controls the characters used in the encoding of the public unique ID based on a radix, or base number.

  • CRM Public Unique ID Prefix profile option (ZCA_PUID_PREFIX): Defines the optional prefix value for the public unique ID. If you use this profile option, define the prefix for the public unique ID at the site level. After you set this profile option to the prefix you want, the application inserts the prefix before the public unique ID base encoded document sequence value. For example, you may want the records for the pharmaceutical divisions of your company to be denoted with public unique IDs and the prefix Pharma or Pharma1, Pharma2, and so on. By default, the prefix has no value.

  • CRM Public Unique ID String Encoding profile option (ZCA_PUID_RADIX): This profile option determines the set of numbers and letters used in creating the public unique ID. The default value is null. After you set the radix, the application converts the public unique ID into user-friendly IDs, using alphanumeric characters instead of numeric digits.

These base values are available when constructing the PUIDs:

  • Numbers 0-9, letters A-F

  • Letters A-Z, upper case

  • Numbers 2-9, letters BCDFGHJKLMNPQRSTVWXYZ

  • Numbers 0-9, letters ABCDEFGHJKLMNPQRTUWXY

  • Numbers 0-9, letters A-Z, upper case

  • Numbers 0-9, letters A-Z, letters a-z

  • No alphanumeric conversion

The values for the radix are stored in the lookup type, ZCA_PUID_ENCODING. This lookup type is accessible using the Manage Standard Lookups task in Setup and Maintenance.

Keep these points in mind:

  • If you enter a prefix value, then you must set a radix value. The length of a prefix value is 5. You can't use the prefix setting by itself.

  • If you require a delimiter, then include it as part of the prefix.

  • The concatenated public unique ID and prefix must not exceed the defined field length, which is usually 30 characters.

Here's how to set the profile options.

  1. Sign in as a setup user.

  2. In Setup and Maintenance, go to the following:

    • Offering: Sales

    • Functional Area: Sales Foundation

    • Task: Manage Public Unique Identifier Profile Options

  3. On the Manage Public Unique Identifier Profile Options page, click the ZCA_PUID_RADIX option.

  4. In the ZCA_PUID_RADIX: Profile Values section of the page, click the Profile Option Values list of values and select the base numbering value.

  5. Click Save and Close.

  6. Optionally, click the ZCA_PUID_PREFIX option.

  7. In the ZCA_PUID_PREFIX: Profile Values section of the page, in the Profile Value box, enter the prefix and the delimiter you want, if any. For example, enter CDRM_.

  8. Click Save and Close.

Public Unique ID Advanced Setup

In the advanced setup, you can define a different prefix and numbering radix for each business object, for example, Accounts, Contacts, and Opportunities. Oracle recommends that you do this to avoid PUID clashes when populating object records via import while also creating records in the UI or via REST.

Keep these points in mind:

  • If you enter a prefix value, you must set a radix value. You can't use the prefix setting by itself. The length of a prefix value is 5.

  • If you require a delimiter, then include it as part of the prefix.

  • The concatenated public unique ID and prefix must not exceed the defined field length, which is usually 30 characters.

Use these steps to configure the radix and optionally, the prefix in the advanced setup.

  1. Sign in as a setup user.

  2. In Setup and Maintenance, go to the following:

    • Offering: Sales

    • Functional Area: Sales Foundation

    • Task: Manage Public Unique Identifier Sequence Generation

  3. On the Manage Public Unique Identifier Sequence Generation page, if you're configuring these values for the first time, add a row to the table.

  4. In the Object list of values, select the object for which you're configuring the public unique ID.

  5. In the Radix list of values, select the base numbering to use. This list of possible radix values is the same list of values that are provided in the ZCA_PUID_RADIX profile option.

  6. In the Prefix box, enter the prefix you want to use for the object and unique ID.

    • Enter a maximum of five characters.

    • The allowed characters are: 0-9, A-Z, a-z, and these special characters: period, hyphen, comma, and underscore.

  7. Repeat for other objects.

  8. Click Save and Close.

This table lists options for RADIX in the Manage Public Unique Identifier Sequence Generation task. For example, the sequence looks as follows if a Lead Number is in the format of "LeadNumber":

  • "CDRM_2452" if the advanced setup for the Lead object isn't set up.

  • If the advanced setup for the Lead object is set up, then the LeadNumber is created in the form of "LeadNumber" = "LEAD_106065",

  • PREFIX is LEAD_ and RADIX is "106065", which is in the format of "No Alphanumeric Conversion".

  • RADIX is in the format of "Letters A-Z, Upper Case". "LeadNumber": "LEAD_GAXM".

Prefix

Radix

NULL

NULL

NULL

Numbers 0-9, letters A-F

NULL

Numbers 0-9, letters A-F

A-

Numbers 0-9, letters A-F

A-

Numbers 0-9, letters A-F

Null

No alphanumeric conversion

A-

Numbers 0-9, letters A-Z, letters a-z

A-

Numbers 0-9, letters A-Z upper case

A-

Numbers 0-9, letters ABCDEFGHJKLMNPQRTUWXY

A-

Numbers 2-9, letters BCDFGHJKLMNPQRSTVWXYZ

A-

Letters A-Z, Upper Case

A-

Numbers 0-9, letters A-F