Sie sind auf Seite 1von 398

Defining Flexfields

Student Guide
.......................................................................................

y
l
n

O
e

&
l
a

n
I
e

14001GC10

Production 1.0

l
c
a

June 1998
M06755

r
O

n
r
te

I
A
O

s
U

Author

Copyright Oracle Corporation, 1998. All rights reserved.

Richard Sears

Millie Wang

This documentation contains proprietary information of Oracle Corporation. It is


provided under a license agreement containing restrictions on use and disclosure
and is also protected by copyright law. Reverse engineering of the software is
prohibited. If this documentation is delivered to a U.S. Government Agency of the
Department of Defense, then it is delivered with Restricted Rights and the
following legend is applicable:

Phil Cannon

Restricted Rights Legend

Technical Contributors
and Reviewers

Use, duplication or disclosure by the Government is subject to restrictions for


commercial computer software and shall be deemed to be Restricted Rights
software under Federal law, as set forth in subparagraph (c) (1) (ii) of DFARS
252.227-7013, Rights in Technical Data and Computer Software (October 1988).
This material or any portion of it may not be copied in any form or by any means
without the express prior written permission of Oracle Corporation. Any other
copying is a violation of copyright law and may result in civil and/or criminal
penalties.
If this documentation is delivered to a U.S. Government Agency not within the
Department of Defense, then it is delivered with Restricted Rights, as defined in
FAR 52.227-14, Rights in Data-General, including Alternate III (June 1987).
The information in this document is subject to change without notice. If you find
any problems in the documentation, please report them in writing to Education
Products, Oracle Corporation, 500 Oracle Parkway, Box SB-6, Redwood
Shores, CA 94065. Oracle Corporation does not warrant that this document is
error-free.
Oracle is a registered trademark of Oracle Corporation.
All other products or company names are used for identification purposes only
and may be trademarks of their respective owners.

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Contents
.....................................................................................................................................................

Preface
Profile xv
Related Publications xvi
Typographic Conventions xvii
Curriculum Map
Introduction
Objectives I-3
Overview I-4
Lesson 1: Overview of Flexfields
Objectives 1-2
Overview of Flexfields: Overview 1-3
Customizing Applications Without Programming 1-4
Segments and Structures 1-5
Customizing Flexfield Appearance 1-6
Validating Input 1-7
Practice 1-1 1-8
Key and Descriptive Flexfields 1-9
Key Flexfields 1-10
Intelligent Keys 1-11
Using Intelligent Keys 1-12
Key Flexfield Example: Accounting Flexfield 1-13
Key Flexfield Example: Asset Category Flexfield 1-14
Oracle Applications Key Flexfields 1-15
Descriptive Flexfields 1-16
Using Context and Reference Fields 1-17
Using Different Contexts: Asset Category Flexfield 1-18
Oracle Applications Descriptive Flexfields 1-19
SRS and Flexfields 1-20
Flexfield Benefits 1-21
Storing Flexfield Values Internally 1-22
Practice 1-2 1-23

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
iii

Contents
.....................................................................................................................................................

Developing a Flexfield 1-24


Table Design and Modification 1-25
Add the Flexfield Fields to the Forms 1-26
Add Processing Code 1-27
Implement the Flexfield 1-28
Implementing Flexfields: Steps 1-29
Overview of Flexfields: Summary 1-30
Lesson 2: Using Value Sets
Objectives 2-2
Using Value Sets: Overview 2-3
Using Value Sets 2-4
Planning a Value Set 2-5
Types of Value Sets 2-6
Validation Type None 2-7
Independent Value Set 2-8
Dependent Value Set 2-9
Table-Validated Value Set 2-10
Special and Pair Validation Types 2-11
Validation Types: Summary 2-12
Practice 2-1 2-13
Planning Value Sets 2-14
Planning Value Set Attributes 2-15
Planning Format Validation 2-16
Format Type 2-17
Character and Number Format Results 2-18
Date, Time and DateTime Format Results 2-19
Formatting Interactions 2-20
Practice 2-2 2-21
Planning Validation Strategy 2-22
Planning Values 2-23
Planning Dependent Value Set Values 2-24
Defining Your Value Sets 2-25

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
iv
Defining Flexfields

Contents
.....................................................................................................................................................

Using Existing Value Sets 2-26


Defining a New Value Set 2-27
Defining a Dependent Value Set 2-28
Locating the Value Set for Values Definition 2-29
Defining Value Set Values 2-30
Defining Values for a Dependent Value Set 2-31
Special Value Set Features 2-32
Practice 2-3 2-33
Using Value Sets: Summary 2-34
Lesson 3: Planning Descriptive Flexfields
Objectives 3-2
Planning Descriptive Flexfields: Overview 3-3
Planning Procedure 3-4
Using Descriptive Flexfields 3-6
Typical Descriptive Flexfield Information 3-7
Some Oracle Applications Descriptive Flexfields 3-8
Identifying a Descriptive Flexfield 3-9
Determining the Resources Available 3-12
Practice 3-1 3-13
Identifying the Information Needs 3-14
Identifying the Items to Be Collected 3-15
Organizing the Information by Usage 3-16
Isolate Common Items 3-17
Determine Different Contexts 3-18
Practice 3-2 3-19
Descriptive Flexfield Components 3-20
Using Global Segments 3-21
Using Context-Sensitive Segments 3-22
Distinguishing Between Contexts 3-23
Using Context and Reference Fields 3-24
Using a Reference Field 3-25
Identifying Referenceable Columns 3-26

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
v

Contents
.....................................................................................................................................................

Using a Context Field 3-27


Layout Option 1: Global Segments Only 3-28
Layout Option 2: Context Segments Only 3-29
Layout Option 3: Combination 3-30
Practice 3-3 3-31
Specifying the Flexfield Attributes 3-32
Specifying the Context Field Information 3-33
Specifying the Segment Attributes 3-34
Storing Descriptive Flexfield Segments 3-35
Specifying the Segment Detail Attributes 3-36
Specifying a Segment Default Value 3-38
Planning Descriptive Flexfields: Summary 3-39
Lesson 4: Defining Descriptive Flexfields
Objectives 4-2
Defining Descriptive Flexfields: Overview 4-3
Defining a Descriptive Flexfield 4-4
Defining Value Sets 4-5
Locating the Appropriate Flexfield Definition 4-6
Defining the Flexfield Header Attributes 4-7
Defining Segments Attributes 4-8
Specifying Validation and Field Sizes 4-9
Freezing and Compiling the Definition 4-10
Practice 4-1 4-11
Defining Context Field Information 4-12
Defining Context-Sensitive Segments 4-13
Practice 4-2 4-14
Defining Values for a Value Set 4-15
Defining Descriptive Flexfields: Summary 4-16

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

Lesson 5: Planning Key Flexfields


Objectives 5-2
Planning Key Flexfields: Overview 5-3
Using Key Flexfields in Oracle Applications 5-4

n
I
e

l
c
a

r
O

.....................................................................................................................................................
vi
Defining Flexfields

Contents
.....................................................................................................................................................

Requirements for Key Flexfields 5-5


Key Flexfields Used by Oracle Applications 5-6
Implementing Key Flexfields: Procedure 5-7
Practice 5-1 5-8
Key Flexfield Structures 5-9
Key Flexfield Code Combinations 5-10
Storing Code Combinations 5-11
Using Key Flexfield Qualifiers 5-12
Types of Key Flexfield Qualifiers 5-13
Flexfield Qualifiers 5-14
Key Flexfields Using Qualifiers 5-15
Segment Qualifiers 5-16
Other Key Flexfield Features 5-17
Using Dynamic Insertion 5-18
Use Cross-Validation 5-19
Using Value Security 5-20
Using Shorthand Aliases 5-21
Planning Decisions 5-22
Designing the Flexfield 5-23
Designing the Segments 5-24
Specifying Segment Defaults 5-25
Planning Values 5-26
Practice 5-2 5-27
Planning Key Flexfields: Summary 5-28

I
A
O

y
l
n

O
e

s
U

Lesson 6: Defining Key Flexfields


Objectives 6-2
Defining Key Flexfields: Overview 6-3
Defining Key Flexfields 6-4
Defining Value Sets 6-5
Accessing the Key Flexfield Definition 6-6
Specifying Flexfield Behavior 6-7
Defining Segment Attributes 6-8

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
vii

Contents
.....................................................................................................................................................

Defining Validation and Size Attributes 6-9


Defining Segment Qualifiers 6-10
Freezing and Compiling the Definition 6-11
Defining Value Set Values 6-12
Defining Value Qualifiers 6-13
Defining Value Hierarchies 6-14
Practice 6-1 6-15
Defining Key Flexfields: Summary 6-16
Lesson 7: Using Flexfield Security
Objectives 7-2
Using Flexfield Security 7-3
Controlling Access to Flexfield Values 7-4
Accomplishing Value Set Security 7-5
Security Rule Elements 7-6
Specifying Acceptable Values 7-7
Combining Rule Elements 7-8
Control Rule Interactions 7-9
Rules Without Overlapping Values 7-10
Practice 7-1 7-11
Implementing Value Set Security 7-12
Enabling Security on the Value Set 7-13
Enabling Segment Security 7-14
Enabling Program Parameter Security 7-15
Defining Security Rules 7-16
Assigning Security Rules 7-17
Practice 7-2 7-18
Using Flexfield Security: Summary 7-19

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

Lesson 8: Using Cross-Validation Rules


Objectives 8-2
Using Cross-Validation Rules: Overview 8-3
Using Cross-Validation 8-4
Designing Cross-Validation Rules 8-5

n
I
e

l
c
a

r
O

.....................................................................................................................................................
viii
Defining Flexfields

Contents
.....................................................................................................................................................

Data Type and Format Restrictions 8-6


Practice 8-1 8-7
Preparing for Cross-Validation 8-8
Defining Cross-Validation Rules 8-9
Cross-Validation Maintenance Reports 8-10
Comparing Cross-Validation and Security Rules 8-11
Practice 8-2 8-12
Using Cross-Validation Rules: Summary 8-13
Lesson 9: Creating Shorthand Aliases
Objectives 9-2
Shorthand Aliases 9-3
Using Shorthand Aliases 9-4
Full and Partial Aliases 9-5
Key Flexfields Using Aliases 9-6
Defining an Alias Template 9-7
Recompile the Flexfield 9-8
Flexfield: Shorthand Entry Profile Options 9-9
Flexfields: Show Full Value Profile Option 9-10
Modifying Aliases 9-11
Practice 9-1 9-12
Using Shorthand Aliases Summary 9-13

y
l
n

O
e

s
U

Lesson 10: Using Advanced Validation Capabilities


Objectives 10-2
Using Advanced Validation Capabilities: Overview 10-3
Advanced Validation Types 10-4
Using Application Table Values 10-5
Defining a Table-Validated Value Set 10-6
Restricting the Values Retrieved 10-7
Using Multiple Tables for Validation 10-8
Practice 10-1 10-9
Using Other Table Validation Options 10-10
Using $PROFILES$ 10-11

&
l
a

I
A
O

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
ix

Contents
.....................................................................................................................................................

Using :Block.field 10-12


Using $FLEX$ 10-13
Using Cascading Dependencies 10-14
Using Special Value Sets 10-15
Using Pair Value Sets 10-16
Using Advanced Validation Capabilities: Summary 10-17
Lesson 11: Displaying Flexfield Structure Data
Objectives 11-2
Displaying Flexfield Structure Data: Overview 11-3
Obtaining Structure Information About Flexfields 11-4
Descriptive Flexfield Views 11-5
Displaying the Descriptive Flexfield View 11-6
Using the Descriptive Flexfield View 11-7
Key Flexfield Views 11-8
Viewing the Concatenated Segments View 11-9
Querying the Concatenated Segments View 11-10
Creating a Structure View 11-11
Using a Structure View 11-12
Querying a Key Structure View 11-13
Segment Naming Conventions 11-14
Practice 11-1 11-15
Displaying Flexfield Structure Data: Summary 11-16

I
A
O

Appendix A: Practice Instructions and Solutions


Practice 1-1 A-2
Practice 1-1 Solutions A-4
Practice 1-2 A-6
Practice 1-2 Solutions A-7
Practice 2-1 A-8
Practice 2-1 Solutions A-9
Practice 2-2 A-10
Practice 2-2 Solutions A-11
Practice 2-3 A-12

&
l
a

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
x
Defining Flexfields

Contents
.....................................................................................................................................................

Practice 2-3 Solution


Practice 3-1 A-28
Practice 3-1 Solution
Practice 3-2 A-35
Practice 3-2 Solution
Practice 3-3 A-39
Practice 3-3 Solution
Practice 4-1 A-41
Practice 4-1 Solution
Practice 4-2 A-49
Practice 4-2 Solution
Practice 5-1 A-62
Practice 5-1 Solution
Practice 5-2 A-64
Practice 5-2 Solution
Practice 5-3 A-67
Practice 5-3 Solution
Practice 6-1 A-71
Practice 6-1 Solution
Practice 7-1 A-87
Practice 7-1 Solution
Practice 7-2 A-89
Practice 7-2 Solution
Practice 8-1 A-93
Practice 8-1 Solution
Practice 8-2 A-95
Practice 8-2 Solution
Practice 9-1 A-98
Practice 9-1 Solution
Practice 10-1 A-101

A-16
A-29
A-37
A-40
A-44
A-53
A-63
A-66
A-70

y
l
n

A-75

O
e

A-88
A-90
A-94

&
l
a

I
A
O

s
U

A-96

n
r
te

A-99

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
xi

Contents
.....................................................................................................................................................

Practice 10-1 Solution


Practice 11-1 A-106
Practice 11-1 Solution

A-103
A-107

Appendix B: Navigation Paths and Additional Queries


Descriptive Flexfield Navigation Paths B-2
Key Flexfield Application Tables B-5
Descriptive Flexfield Application Tables B-6
Value Set Usage By Descriptive Flexfields B-7
Value Set Usage by Key Flexfield B-12

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
xii
Defining Flexfields

Preface
.................................

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Profile
.....................................................................................................................................................

Profile
Before You Begin This Course
Before you begin this course, you should have the following qualifications:
Thorough knowledge of the Oracle Application you will be implementing or
supporting
Working experience with navigating Oracle Applications forms and windows
Prerequisites
Navigate Oracle Applications
How This Course Is Organized
Defining Flexfields is an instructor-led course featuring lectures and hands-on
exercises. Online demonstrations and written practice sessions reinforce the concepts
and skills introduced.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
xiii

Preface
.....................................................................................................................................................

Related Publications
Oracle Publications
Title

Part Number

Oracle Applications Flexfields Guide

A58188-01

Additional Publications
System release bulletins
Installation and users guides
read.me files
International Oracle Users Group (IOUG) articles
Oracle Magazine

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
xiv
Defining Flexfields

Typographic Conventions
.....................................................................................................................................................

Typographic Conventions
Typographic Conventions Within Text
Convention

Object or Term

Example

Uppercase

Commands,
functions, column
names, table
names,
schemas
Triggers, windows,
check boxes,
buttons

Use the SELECT command to view


information stored in the LAST_NAME
column of the EMP table.

Initial cap

Lead cap

Italic

Graphics labels
(unless the term is a
proper noun)
Titles of books and
courses,
emphasized words
and phrases,
variables

Bold italic

Term that is defined


in a glossary (used
only if there is a
glossary)

Assign a When-Validate-Item trigger to the


ORD block.
Open the Master Schedule window.
Select the Cant Delete Card check box.
Click the Executable button.
Customer address (but Oracle Payables)

For further information, see Oracle7 Server


SQL Language Reference Manual.
Do not save changes to the database.
Enter user_id@us.oracle.com, where
user_id is the name of the user.
The algorithm inserts the new key.

&
l
a

y
l
n

O
e

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
xv

Preface
.....................................................................................................................................................
Convention

Object or Term

Example

Courier, case
sensitive (default is
lowercase)

Filenames,
directory names,
pathnames, URLs,
usernames, user
input, code output

Filename:
Locate the init.ora file.
Pathname:
Open c:\my_docs\projects first.
URL:
Go to the URL: http://www.oracle.com
Password:
Use tiger as your password.
Username:
Log on as scott.
User input:
Enter 300.
Code output:
The following statement is
displayed:
debug.seti('I',300);

Quotation marks

Arrow
Brackets
Plus signs

Lesson and chapter


titles in crossreferences,
interface elements
with long names
that have only lead
caps
Menu path
Keycaps
Key combinations

Commas

Key sequences

This subject is covered in Unit II, Lesson 3,


Working with Objects.
Select Include a reusable module
component and click Finish.
Use the WHERE clause of query property.

O
e

Select File>Save.
Press [Enter].
Press and hold keys simultaneously:
[Control]+[Alternate]+[Delete]
Press and release keys one at a time:
[Alternate], [F], [D]

&
l
a

y
l
n

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
xvi
Defining Flexfields

Typographic Conventions
.....................................................................................................................................................

Typographic Conventions Within Code


Convention

Code

Uppercase

SQL commands
and functions
Oracle Forms
triggers

Initial cap

Lowercase

Column names,
table names,
filenames, PL/
SQL objects

Italic, lowercase

Syntax variables

Example
SELECT userid
FROM emp;
Form module: ORD
Trigger level: S_ITEM.QUANTITY item
Trigger name When-Validate-Item
OG_ACTIVATE_LAYER
(OG_GET_LAYER ('prod_pie_layer'))

SELECT last_name
FROM s_emp;
DROP USER scott
IDENTIFIED BY tiger;
CREATE ROLE role

Typographic Conventions in Navigation Paths


This course uses simplified navigation paths, such as the following example, to direct
you through Oracle Applications.
Example:
Invoice Batches Summary
(N) Invoice>Entry>Invoice Batches Summary (M) Query>Find
(B) Approve

y
l
n

O
e

I
A
O

s
U

This simplified path translates to the following:


1 (N) From the Navigator window, select Invoice>Entry>Invoice Batches
Summary.
2 (M) From the menu, select Query>Find.
3 (B) Click the Approve button.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
xvii

Preface
.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
xviii
Defining Flexfields

Oracle Applications Implementation Team Member


Masters Program
For Financial, Manufacturing and Supply Chain Management
Paths take either:

Implementing the Primary Oracle


Financial Applications (ILT),
5 days

Implementing the Primary


Oracle Manufacturing Applications
(ILT), 5 days

For Human Resources take:

Implementing the Primary


OracleSupply Chain Management
Applications (ILT),
5 days

Introduction to Oracle
Human Resources (ILT)
1 day

Then take in any order

Implementing Oracle
Human Resources (ILT)
4 days (US) 3 days (Global)

Oracle Applications System


Administration (ILT),
2 days

OPTIONAL
Implementing and
Administering Oracle
Payroll (ILT)
5 days (Global)

OPTIONAL

y
l
n

Implementing Oracle
Human Resources and
Payroll (ILT)
5 days (US)

AIM Advantage 2.0 with


Applications Implementation
Wizard (ILT)
4 days

s
U
Then

&
l
a

Define Flexfields (ILT)


2 days

I
A
O

n
r
te

In

Any 2 Applications
Products Course
2-5 days

e
l
c

a
r
O

O
e

PATH OBJECTIVES

Oracle Applications Implementation Team Member Masters Program


Identify and control implementation considerations for a primary Oracle
Application Suite
Understand the implementation methodology for Oracle Applications
Perform critical setup functions on oracle Applications
Understand the security and software administration of Oracle
Applications
Use Oracle Applications product features to manage business functions

Oracle HRMS System


Administration (ILT)
2 days

LEGEND
ILT - Instructor Led Training

Oracle Applications: Database Administrator, Oracle8


Masters Program
Introduction to Oracle: SQL
and PL/SQL (ILT)
5 days

Introduction to Oracle:
for Experienced SQL Users
(ILT), 3 days

Take either

Then take in any order:

OPTIONAL

Advanced SQL and


SQL*Plus (ILT)
1 day

Oracle8 Database Administration


(ILT),
5 days

Oracle8 Backup and Recovery


Workshop (ILT),
3 days

Oracle8 Performance Tuning


Workshop (ILT),
4 days

y
l
n

Tune Oracle Applications (ILT),


3 days

Oracle Applications Installation


and Administration (ILT),
5 days

I
A
O

O
e

s
U

Any Applications Product Course,


See course listing

&
l
a

Then take either:

Oracle Financials Technical


Foundation (ILT),
4 days

n
r
te

Oracle Manufacturing
Technical Foundation (ILT),
4 days

n
I
e

Oracle Applications Database Administrator, Oracle7 CBT Library

l
c
a

Oracle Applications Database Administrator, Oracle7 CBT Library


Oracle7 Database Administration: Architecture
Oracle7 Database Administration: Create Databases
Oracle7 Database Administration: Manage Data
Oracle7 Database Administration: Manage Security
Oracle7 Backup and Recovery: Strategies
Oracle7 Backup and Recovery: Tools and Techniques
Oracle7 Performance Tuning: Architecture and Strategy
Oracle7 Performance Tuning: Memory, I/O and Contention
Introduction to Oracle Financials,

r
O

OR

Introduction to Oracle Manufacturing

Oracle Human Resources


Technical Foundation (ILT)
3 days

OPTIONAL
Oracle Payroll Technical
Foundation (ILT),
2 days

PATH OBJECTIVES
Oracle Applications Database Administrator, Oracle8
Understand the architecture and processes of the Oracle8
Server
Manage the database through startup and shutdown,
backup and recovery, granting privileges and maintaining
audit trails
Understand the security and administration of Oracle
Applications
Identify the basic architecture underlying Oracle
Applications, including critical tables, indexes and views
Perform archiving and purging functions provided by Oracle
Applications
Configure Oracle8 data and log files for optimal
performance

Application Developer, Oracle Applications


Masters Program

Introduction to Oracle: SQL


and PL/SQL (ILT),
5 days

Take either

Introduction to Oracle:
for Experienced SQL Users
(ILT),
3 days

Then take in any order:


OPTIONAL

Advanced SQL and


SQL*Plus (ILT),
1 day

Developer/2000: Build
Forms I (ILT),
5 days

Oracle Applications System


Administration (ILT),
2 days

y
l
n

Define Flexfields (ILT),


2 days

Extend Oracle Applications with


Developer/2000 (ILT),
5 days

I
A
O

O
e

s
U

Oracle Workflow (ILT),


2 days

&
l
a

n
r
te

Any Applications Product Course


See Course Listing

r
O

l
c
a

n
I
e

PATH OBJECTIVES

Oracle Applications Application Developer Masters Program


Understand relational database design concepts
Use SQL and PL/SQL, Developer/2000 and Application Object
Library in the development and maintenance of Oracle
Applications
Support the product division(s) in the daily technical administration
of Oracle Applications
Design and build your business processes using Oracle Workflow

Oracle Applications, Database Administrator, Oracle 8


Extension

Complete the Database


Administrator Oracle8
Masters Program

Then take:

Oracle Applications Installation


and Administration (ILT),
5 days

y
l
n

Tune Oracle Applications


(ILT),
3 days

Any Applications
Product Course, (ILT)
2-5 days

&
l
a

I
A
O

O
e

s
U

n
r
te

a
r
O

cl

n
I
e

PATH OBJECTIVES

Oracle Applications: Database Administrator, Oracle8 Extension


Manage the security and administration of Oracle Applications
Identify the basic architecture underlying Oracle Applications, including critical tables,
indexes and views
Perform archiving and purging functions provided by Oracle Applications

Oracle Applications, for Application Developer, Developer/2000


Extension

Complete the Application


Developer, Developer/2000
Masters Program

Then take:

Oracle Applications System


Administration (ILT),
2 days

y
l
n

Define Flexfields (ILT),


2 days

Extend Oracle Applications


with Developer/2000 (ILT),
5 days

&
l
a

I
A
O

O
e

s
U

Oracle Workflow (ILT),


2 days

n
r
te

n
I
e

r
O

l
c
a

Any Applications
Product Course (ILT)
2-5 days

PATH OBJECTIVES

Oracle Applications Masters Extension, Developer/2000 Rel 2 Masters


Program
Understand Oracle Applications product functions
Build or tailor applications using Oracle Application Object Library
Understand the technical elements of Oracle Financial or Oracle Manufacturing
Applications

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

I
................................

Introduction

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Introduction
.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
I-2
Defining Flexfields

Objectives
.....................................................................................................................................................

Objectives
Course Objectives

Explain the use of flexfields by Oracle Applications

Plan and implement key flexfields as required

Distinguish between key and descriptive flexfields


Plan and define value sets to control data access
Plan and implement descriptive flexfields where
appropriate
Use flexfield security where necessary
Use additional flexfield features where appropriate

Copyright Oracle Corporation, 1998. All rights reserved.

Introduction to Course Topics


This course covers the use by Oracle Applications of customizable fields called
flexfields. You use flexfields to modify or extend the processing of Oracle
Applications. You use key flexfields to define the structure of identifiers that are
required by Oracle Applications. You use descriptive flexfields to gather additional
information beyond that gathered by the application itself.
After completing this course, you should be able to:
Explain the use of flexfields by Oracle Applications
Distinguish between key and descriptive flexfields
Plan and define value sets to control data access
Plan and implement descriptive flexfields where appropriate
Plan and implement key flexfields as required
Use flexfield security where necessary
Use additional flexfield features where appropriate

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
I-3

Introduction
.....................................................................................................................................................

Overview
Defining Flexfields
Overview

Flexfields are customizable fields used throughout


Oracle Applications.

Flexfields provide easy modification and


customization of standard Oracle Applications
processing.

Copyright Oracle Corporation, 1998. All rights reserved.

Importance of This Course


This course is important because flexfields are used throughout Oracle Applications.
Flexfields provide many opportunities for easy modification and customization of
standard Oracle Applications processing. Both members of the system implementation
team and system administration personnel should be familiar with the concepts and
procedures covered in this course to design and support an Oracle Applications
environment that meets the needs of all its users.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
I-4
Defining Flexfields

1
.................................

Overview of Flexfields

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Objectives
Objectives
After completing this lesson, you should be able to
do the followng:

Explain flexfields and how they are used by


Oracle Applications

Distinguish between key and descriptive


flexfields

Identify key and descriptive flexfields used by


Oracle Applications

List the benefits provided by flexfields

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Topics
This lesson describes how to use modifiable fields called flexfields to tailor Oracle
Applications to reflect your business needs and practices.
You can use flexfields to define the structure of certain data identifiers required by
Oracle Applications. You can also gather, store and process additional data that may be
required by your business.
After completing this lesson, you should be able to:
Explain flexfields and how they are used by Oracle Applications
Distinguish between key and descriptive flexfields
Identify key and descriptive flexfields used by Oracle Applications.
List the benefits provided by flexfields

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-2
Defining Flexfields

Overview of Flexfields: Overview


.....................................................................................................................................................

Overview of Flexfields: Overview


Overview

How flexfields operate


Two types of flexfields
Flexfield terminology
Flexfield benefits

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Overview
This lesson describes how Oracle Applications uses customizable fields called
flexfields to modify and expand processing. Specifically it covers
How flexfields operate
The two types of flexfields
Flexfield terminology
Flexfield benefits

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-3

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Customizing Applications Without Programming


Customizing Oracle Applications

Oracle General Ledger

Oracle Assets

Application
windows

User-defined flexfield windows

Copyright Oracle Corporation, 1998. All rights reserved.

Using Flexfields to Customize Applications


A flexfield is a customizable field that opens in a window from a regular Oracle
Applications window. Defining and using flexfields allows you to tailor Oracle
Applications to your own business environment. You can easily define flexfields to
extend Oracle Applications without programming. By using flexfields within Oracle
Applications you can:
Structure certain identifiers required by Oracle Applications according to your own
business environment
Collect and display additional information for your business as needed.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-4
Defining Flexfields

Segments and Structures


.....................................................................................................................................................

Segments and Structures


Flexfield Structures and Flexfield
Segments

Item Information Flexfield

Segments:
(Category,
Item,
Color)

__ Item Information _______________


Category
Item

COM
876

Monitor

Color

LTN

Light tan

Computer

Structure:
( Category Segment + Item Segment + Color Segment)

Copyright Oracle Corporation, 1998. All rights reserved.

Flexfield Components
A flexfield is composed of segments. The segments of a flexfield contain the flexfield
values. Flexfield segments are combined in a grouping called a structure. The
segments that make up a particular structure are logically or functionally related. A
single flexfield can have more than one structure.
When you implement a flexfield, you decide how many segments you need for a
particular structure and whether you need multiple structures. Being able to define
different structures for the same flexfield allows you to tailor the same flexfield to the
needs of different end users.
The example on the slide shows three segments:
Category
Item
Color
These three segments together form a structure.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-5

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Customizing Flexfield Appearance


Segment Prompts and Value Descriptions

Flexfield segment prompts


__ Item Information _______________
Category
Item

COM
876

Monitor

Color

LTN

Light tan

Computer

Flexfield value descriptions

Copyright Oracle Corporation, 1998. All rights reserved.

Customizing the Flexfield Appearance


In addition to defining the segments and structures that make up the flexfield, you can
define the appearance of the flexfield. You can specify names and descriptions for the
segments appearing on the window. You can also specify the display size for the fields.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-6
Defining Flexfields

Validating Input
.....................................................................................................................................................

Validating Input
Validating Input
Using Value Sets

Category value set


COM

MACH

FURN

__ Item Information _____________


Category
Item

COM
876

Monitor

Color

LTN

Light tan

755

876

Computer

933

Item value set


Copyright Oracle Corporation, 1998. All rights reserved.

Using Value Sets with Flexfields


Value sets allow you to control the values for a segment or a report parameter. A value
set is a definition of the values approved for entry or display by a particular flexfield
segment. A value set may also contain a list of actual approved values although this is
not required. You may be able to define the appropriate values after you define the
value set.

y
l
n

O
e

I
A
O

s
U

Value Sets Describe Acceptable Types of Values


Some value sets permit a limited range of values; others permit only certain values;
others have minimal restrictions.
Different flexfields can share the same value. For example, a value set containing
the names of regional offices could be used by many different flexfields.
Different segments of the same flexfield can use the same value set, for example a
date value set. Segments defined to different structures of the same flexfield can
share value set. Many of the report parameters used with SRS forms are tied to
shared value sets.
Value sets do not have to have the actual values defined for them.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-7

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Practice 1-1
Practice Overview

Explaining how Oracle Applications uses flexfields


Describing the components of a flexfield

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-8
Defining Flexfields

Key and Descriptive Flexfields


.....................................................................................................................................................

Key and Descriptive Flexfields


Key and Descriptive Flexfields
Key Flexfields build unique
entity identifiers

__ Item Information _________


COM

Category
Item
Color

Computer

876

Monitor

LTN

Light tan

Payment Type CC
Store 54321

Descriptive
Flexfields gather
additional
information

Dept 987
Number 4958-2938-4747
Exp. Dt 12 - 99

Copyright Oracle Corporation, 1998. All rights reserved.

Different Types of Flexfields


There are two types of flexfields, key flexfields and descriptive flexfields. Each type is
discussed in more detail on the following slides. The main differences are:
You use key flexfields to define your own structure for many of the identifiers
required by Oracle Applications
You use descriptive flexfields to gather additional information about your business
entities beyond the information required by Oracle Applications.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-9

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Key Flexfields
Key Flexfields

Standard
window

__ Sales Information ______________________


Transaction 3987

Payment Type

Customer Jane Doe


Item COM-876-LTN

[]

Description Computer - Monitor - Light Tan

Key
flexfield
window

__ Item Information _______________


COM

Computer

Item

876

Monitor

Color

LTN

Light tan

Copyright Oracle Corporation, 1998. All rights reserved.

Key Flexfields
In Oracle Applications you use key flexfields as identifiers for entities. Generally, the
identifier you create using a key flexfield is required by the application (for example,
the Accounting Flexfield builds the account number used by Oracle General Ledger).
A key flexfield appears as a normal field on a form. Any existing value for the key
appears in the field as a concatenated value having segment separators. When the
cursor moves into the flexfield, the entire window opens allowing entry of new data or
fully displaying the existing data.
A key flexfield structure usually consists of multiple segments, each of which contains
meaningful information. The resulting combinations of values from these segments
therefore function as intelligent keys.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-10
Defining Flexfields

Intelligent Keys
.....................................................................................................................................................

Intelligent Keys
Creating Intelligent Keys Using Key
Flexfields
Business A

Business B
_____Account Entry __

_____Account Entry __
10

Corporation
Subsidiary
Division

203
3003

Department

025

Account

203

Company

21

Divsion

42

Department

502

Account

015

Copyright Oracle Corporation, 1998. All rights reserved.

Using Key Flexfields to Build Intelligent Keys


Intelligent keys are multipart codes where the value in each individual part contains
meaningful information. Each combination of values can therefore identify a
particular business entity or class of entities. Such intelligent key structures are used
throughout Oracle Applications. Since you define your key flexfield structure, it
reflects the organization of your business.

y
l
n

O
e

I
A
O

s
U

Accounting Flexfield Example


One important key flexfield is the Accounting Flexfield. The example on the slide
shows how two hypothetical businesses could define Accounting Flexfield structures
that reflected their different accounting structures. Business As accounting structure
has five segments, while business Bs accounting structure has four segments.

&
l
a

n
r
te

Additional Key Flexfield Features


You can define value sets to control the allowable values for each segment of the key.
You can also define cross-validation rules to control the allowable combinations of
segment values within the key.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-11

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Using Intelligent Keys


Intelligent Keys

Account number
Asset number

Job grade

Serial number

Copyright Oracle Corporation, 1998. All rights reserved.

Intelligent Key Examples


There are many areas in business where you can use intelligent keys. Some examples
are shown. Many such intelligent keys are used in Oracle Applications to represent
such entities.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-12
Defining Flexfields

Key Flexfield Example: Accounting Flexfield


.....................................................................................................................................................

Key Flexfield Example: Accounting Flexfield

The Accounting Flexfield


The Accounting Flexfield is used to create and display account numbers. The
Accounting Flexfield is owned by Oracle General Ledger, but Accounting Flexfield
values are used by many of the financial applications. The example shows an
Accounting Flexfield structure consisting of five segments.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-13

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Key Flexfield Example: Asset Category Flexfield

The Asset Category Flexfield


You use the Asset Category flexfield in Oracle Inventory to identify major groupings
of inventory. The example shows a key flexfield structure that has two segments.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-14
Defining Flexfields

Oracle Applications Key Flexfields


.....................................................................................................................................................

Oracle Applications Key Flexfields


Oracle Applications - Key Flexfields
Asset
Category
Location

Oracle
Assets
Oracle
General
Ledger

Oracle
Payroll

Sales Tax Location


Oracle
Receivables Territory

Accounting

Oracle
Inventory

Bank Details
Cost Allocation
People Group

Account Aliases
Item Catalogs
Item Categories
Sales Orders
Stock Locators
System Items

Grade

Oracle
Job
Human
Personal Analysis
Resources
Position
Soft Coded

Copyright Oracle Corporation, 1998. All rights reserved.

Key Flexfields Within Oracle Applications


Many Oracle Application have key flexfields. The slide shows some of the applications
and the key flexfields they use. In many cases, you must implement the key flexfield to
implement the application. Many key flexfields are used by multiple applications. For
example, the Accounting Flexfield is used by both Oracle General Ledger and Oracle
Payables.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-15

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Descriptive Flexfields
Descriptive Flexfields
__ Sale Information ________________________
Transaction 3987

CC

Payment Type

Customer Jane Doe


Item COM-876-LTN
Description Computer - Monitor - Light Tan

Payment Type CK
Store 54321
Dept 987
Number 1028
Second ID MC 4565-3939

[]

Payment Type CC
Store 54321
Dept 987
Number 4958-2938-4747
Exp. Dt 12 - 99

Copyright Oracle Corporation, 1998. All rights reserved.

Descriptive Flexfields
You use descriptive flexfields to collect information beyond that collected by Oracle
Applications. Using descriptive flexfields allows you to gather additional specialized
information required by your business. The use of descriptive flexfields is optional.
A descriptive flexfield appears on a form as a single-space field enclosed by brackets.
If the flexfield is enabled, it opens when you double-click in the bracketed field.
A descriptive flexfield typically uses multiple structures. It therefore offers you several
options for customization:
You can define a basic structure that gathers additional information for all entities.
You can define several different structures that gather specialized information for
different types of the same general entity.
You can define a combination of the preceeding two. This structure can gather
general information about all entities and then optionally gather certain
information about certain types of entities.
The example shows a descriptive flexfield that gathers different payment information
based on the type of payment: check (CK) or credit card (CC).

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-16
Defining Flexfields

Using Context and Reference Fields


.....................................................................................................................................................

Using Context and Reference Fields


Using Reference Fields
__ Sale Information ________________________
Transaction 3987

Payment Type

Reference

CC

field

Customer Jane Doe


Item COM-876-LTN
Description Computer - Monitor - Light Tan

Payment Type CK
Store 54321
Dept 987
Number 1028
Second ID MC 4565-3939

[]

Payment Type CC
Store 54321
Dept 987
Number 4958-2938-4747
Exp. Dt 12 - 99

Copyright Oracle Corporation, 1998. All rights reserved.

Using Context and Reference Fields to Control Descriptive Flexfields


The same descriptive flexfield often uses multiple structures. Each of these structures
can have different segments and gather different data.
When you define a descriptive flexfield to have multiple structures, you can choose to
make the choice of structure dependent on the value of another field or selectable by
the user:
If the value in a preceeding field elsewhere on the form determines which structure
is used, the preceeding field is known as a reference field.
If the value in a field within the flexfield itself determines which structure is used,
that field is called a context field.
The example on the slide shows a hypothetical window containing sales information.
One of the fields on this window, Payment Type, is used as a reference field for a
descriptive flexfield that contains information about how the customer will pay.
In this example, the buyer is using a credit card so the credit card information is
gathered by using the descriptive flexfield structure shown on the right. If payment is
by check, you could gather check-related information by using the descriptive flexfield
structure shown on the left.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-17

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Using Different Contexts: Asset Category Flexfield

The Asset Category Flexfield


The example on the slide shows the Asset Category descriptive flexfield. The
descriptive flexfield is gathering further information about an office building asset.
You can see this both by the value in the reference field, and by the type of information
being requested on the flexfield.
Note: In this example, the reference field is itself a key flexfield.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-18
Defining Flexfields

Oracle Applications Descriptive Flexfields


.....................................................................................................................................................

Oracle Applications Descriptive Flexfields


Oracle Applications - Descriptive
Flexfields (Partial)
Bank Branch
Oracle
Payment Terms
Payables

Bonus Rates
Calendar Types
Price Indexes

Oracle
Assets
Oracle
General
Ledger

Site Address

Credit History
Oracle
Receivables Information

Daily Rates

Oracle
Bills of
Material

Activity
Information
Item Cost
Information
Shift Time
Information

Oracle
Work in
Progress

Employee Labor
Rate
Shop Floor
Status
WIP Parameters

Copyright Oracle Corporation, 1998. All rights reserved.

Partial List of Oracle Applications Descriptive Flexfields


Numerous descriptive flexfields are available throughout Oracle Applications. The
slide shows only a partial list. In contrast to key flexfields, descriptive flexfields are not
shared between applications.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-19

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

SRS and Flexfields

Using Flexfields as Parameters Within Standard Request Submission


Reports and concurrent programs submitted with Standard Request Submission often
have parameter windows that pop up. These parameter windows behave similarly to
descriptive flexfields.
Parameter Windows Are Context Sensitive
The window that appears and the segments that are contained in it depend on
which request is being run.
The request name acts as a reference field.
Many request parameters have value sets associated with them to control the
allowable values for that parameter. Such value sets are often shared by many other
flexfields. You should always be careful when modifying any value sets that are
also used by SRS processing.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-20
Defining Flexfields

Flexfield Benefits
.....................................................................................................................................................

Flexfield Benefits
Benefits of Flexfields

Flexfields provide the following benefits:


Customize applications to support your own
accounting, product, and other codes.
Allow the construction of intelligent keys.
Customize applications to capture additional
data.
Use the application to validate values and
value combinations entered by the user.
Support multiple field structures depending on
data context.

Copyright Oracle Corporation, 1998. All rights reserved.

Benefits of Flexfields
You now have a basic understanding of how flexfields are used by Oracle
Applications. Flexfields ease of customization provide many benefits to users. The
main benefits are listed on the visual.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-21

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Storing Flexfield Values Internally


Storing Flexfield Data Internally

Descriptive flexfield

Key flexfield

... Segment1

Segment2

...

... Attribute1 Attribute2 ...

Oracle Applications base tables


Copyright Oracle Corporation, 1998. All rights reserved.

Storing Flexfield Values in Database Tables


The values entered through an applications flexfields are stored internally in that
applications database tables:
Each segments value is stored in a column in one of the base tables.
The column name reflects the type of flexfield data it holds. Key flexfields store
their data in columns called SEGMENTn, where n is a number. Descriptive
flexfields store their data in columns called ATTRIBUTEn, where n is a number.
The number of SEGMENT and ATTRIBUTE columns available for use by a
flexfield varies between flexfields. Not all flexfields can have the same number of
fields defined. When implementing a flexfield, determining the number of fields
available for use is an important planning step.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-22
Defining Flexfields

Practice 1-2
.....................................................................................................................................................

Practice 1-2
Practice Overview

Distinguishing between key and descriptive


flexfields

Identifying key flexfields within Oracle


Applications

Identifying descriptive flexfields within Oracle


Applications

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-23

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Developing a Flexfield
Developing a Flexfield

Design flexfield into the application table.


Paint necessary fields onto form.
Call routines.
Define new flexfield.

Copyright Oracle Corporation, 1998. All rights reserved.

How a Flexfield Is Developed


Flexfields are built in four stages. The first three steps are performed by application
developers; the final step is performed by the system implementation team:
1 The developer designs a flexfield into the application database table structure. The
flexfield, especially key flexfields, becomes an integral part of the application.
2 The developer paints the necessary fields onto the form. These include both visible
and hidden fields.
3 The developer calls flexfield routines from the form and inserts necessary trigger
text.
4 The developer registers the flexfield initially using an Oracle Application Object
Library form.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-24
Defining Flexfields

Table Design and Modification


.....................................................................................................................................................

Table Design and Modification


Create Segment Columns
Oracle Applications base table
...

Attribute1 Attribute2

Attribute3 ...

Copyright Oracle Corporation, 1998. All rights reserved.

Creating or Modifying the Base Table


Define a column for each flexfield segment. These columns are typically called
either SEGMENT1, SEGMENT2... or ATTRIBUTE1, ATTRIBUTE2. Each
column can hold one item of data from the flexfield. Key flexfields use the
SEGMENT columns, descriptive flexfields use the ATTRIBUTE columns.
For key flexfields, define one additional column to store the value that
differentiates between multiple structure (called the structure defining column).
Key flexfields also require a column to use as the primary key column the code
combination ID.
For descriptive flexfields add their columns onto the base table associated with the
form on which the descriptive flexfield appears.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-25

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Add the Flexfield Fields to the Forms


Create New Form

New segment

New flexfield form

fields

Copyright Oracle Corporation, 1998. All rights reserved.

Use SQL*Forms or Oracle Forms Designer to Add the Fields to Forms


Each form that uses the flexfields needs the appropriate fields. Descriptive flexfields
have a one-character field with brackets surrounding it.
Usually there should be a hidden field for every segment column in the database table.
Unique IDs and other database columns also need hidden fields.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-26
Defining Flexfields

Add Processing Code


.....................................................................................................................................................

Add Processing Code


Add Processing Code
Standard Oracle
Applications
window

New flexfield
window
Copyright Oracle Corporation, 1998. All rights reserved.

Calling the Flexfield Definition as An Item Handler


The developer calls a flexfield definition as an item handler from the WHEN-NEWFORM-INSTANCE trigger.

y
l
n

O
e

Each Flexfield Type Has a Flexfield Definition Procedure:


FND_KEY_FLEX.DEFINE is used with key flexfields.
FND_RANGE_FLEX.DEFINE is used with range flexfields.
FND_DESCR_FLEX.DEFINE is used with descriptive flexfields.

I
A
O

s
U

Invoke the Flexfield Definition from a Form-Level Trigger:


Code FND_FLEX.EVENT into form-level triggers.
The TEMPLATE form also includes some form-level triggers that invoke your
flexfield definition.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-27

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Implement the Flexfield


Implement the Flexfield
Register flexfield for use

Application
Object Library

Plan flexfield segments


and structures

Define actual flexfield

Copyright Oracle Corporation, 1998. All rights reserved.

Using Oracle Application Object Library to Implement the Flexfield


Register the flexfield and define any qualifiers:
Accounting key flexfield qualifiers are discussed in the Planning key flexfields
lesson.
Registration forms are located only on the Application Developer menu.
Plan how the flexfield will be used:
This is the first step covered in this class.
Planning should be considered a necessary prerequisite for any alterations to a
flexfield
Define and customize the flexfield:
Define the appearance and structure of the flexfield.
For most responsibilities, use the Setup forms.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-28
Defining Flexfields

Implementing Flexfields: Steps


.....................................................................................................................................................

Implementing Flexfields: Steps


Implementing a Flexfield
Steps
1. Plan flexfield segments, structures, value
sets and values.
2. Define value sets and values.
3. Define flexfield.
4. Define security and cross-validation rules if
necessary.

Copyright Oracle Corporation, 1998. All rights reserved.

Implementing a Flexfield: General Procedure


Use the following steps when defining flexfields, both key and descriptive:
Plan your flexfield structure and layout. Remember that many flexfields use more
than one structure, and that each structure can consist of different segments. Also
plan any value sets and their values.
Define flexfield value sets. Value sets describe the allowable values for the flexfield
segment. If you create your value sets first, you can refer to them while your are
defining your flexfield segments in the following step.
Define flexfield segments and structures. Use the plan you designed earlier.
Define values for your value sets.
For key flexfields, define security and cross-validation rules as necessary.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
1-29

Lesson 1: Overview of Flexfields


.....................................................................................................................................................

Overview of Flexfields: Summary


Overview of Flexfields
Summary

Flexfields are customizable fields.

Key flexfields create entity identifiers required by


Oracle Applications.

Descriptive flexfields gather additional information


required by the business environment.

The user defines the content and structure of a


flexfield window.

Copyright Oracle Corporation, 1998. All rights reserved.

Summary
Flexfields are fields used within Oracle Applications that are customizable by the user.
You can define the content and layout of the flexfield to reflect the your own business
needs.
There are two types of flexfields:
Key flexfields are used to create entity identifiers required by Oracle Applications.
You can use key flexfields to structure these identifiers according to your business
environment. The definition of many key flexfields is required by the application.
You use descriptive flexfields to gather additional information for storage or
processing. You can define descriptive flexfields in multiple ways to accommodate
the needs of many different groups of users. The use of descriptive flexfields is
optional.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
1-30
Defining Flexfields

2
.................................

Using Value Sets

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Lesson 2: Using Value Sets


.....................................................................................................................................................

Objectives
Objectives
After completing this lesson, you should be able to
do the following:

List options for validating flexfield segment values

Identify issues for consideration when planning a


validation strategy

Define value sets

Choose the appropriate validation option to use


with a particular flexfield segment

Specify allowable values for a value set

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Topics
This lesson describes planning and using value sets to control input with flexfields.
At the end of this lesson, you should be able to:
List options for validating flexfield segment values and report parameters
Choose the appropriate validation option to use with a particular segment
Identify issues for consideration when planning a validation strategy
Define new value sets
Define allowable values for a value set

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-2
Defining Flexfields

Using Value Sets: Overview


.....................................................................................................................................................

Using Value Sets: Overview


Overview

Using value sets to validate input


Types of value sets
Planning value sets and values
Defining value sets

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Overview
Value sets are definitions of allowable values for use with a flexfield segment. This
lesson covers the different types of value sets and how each is used. It also describes
how to plan the value set as well as the actual values for those value sets that require a
list of values. Finally, it covers the definition process itself.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-3

Lesson 2: Using Value Sets


.....................................................................................................................................................

Using Value Sets


Validating Input
Using Value Sets
Category value set
COM

APPL

FURN

__ Item Information _________


Category
Item

755

COM

Computer

876

Monitor

933

876
Item value set

Copyright Oracle Corporation, 1998. All rights reserved.

Value Sets Define Allowable Values


You can create a value set and assign it to a flexfield segment or report parameter to
control what values that segment can use.

y
l
n

O
e

Value Sets Check User Input


Define a value set for each flexfield segment. A value set is a general definition of the
values that are acceptable for a particular flexfield segment or report parameter. A
value set can also have a list of actual values available to the segment, although this is
not required.

I
A
O

s
U

Other Advantages of Value Sets


Value sets control which segments can use special features such as LongList, value
security, and segment value combination checking.
The example in the slide shows two value sets:
The Category value set specifies the allowable values for the Category segment.
The Item value set specifies the allowable entries for the Item segment.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-4
Defining Flexfields

Planning a Value Set


.....................................................................................................................................................

Planning a Value Set


Planning a Value Set

Determine basic attributes of the set.


Select the appropriate validation type.
If appropriate, specify actual allowable values.

Copyright Oracle Corporation, 1998. All rights reserved.

Planning Your Value Set


There are several steps to planning your value set:
Determine the basic attributes for the set. Choose what conditions all values must
fit to be considered valid values. Such criteria include data type (Character,
Numeric), value length, and minimum and maximum values if appropriate.
Select appropriate validation strategy. Choose the type of validation most
appropriate for the data. Validation types are discussed in the following pages.
Identify approved values if appropriate. For some value sets, you know ahead of
time the acceptable values. In these cases, in addition to defining the value set, you
can also specify the values that appear when the user enters the flexfield segment.
The segment accepts only values explicitly defined for that value set.
For some value sets, it does not make sense to try to provide a complete list of all the
approved values. For example, a segment containing telephone numbers probably does
not need a list of values.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-5

Lesson 2: Using Value Sets


.....................................................................................................................................................

Types of Value Sets


Types of Value Sets

None

Validation is minimal.

Independent

Input must exist on previously


defined list of values.

Dependent

Input is checked against a subset


of values based on a prior value.

Table

Input is checked against values


in an application table.

Special

Value set uses a


flexfield itself.

Pair

Two flexfields together specify a


range of valid values.
Copyright Oracle Corporation, 1998. All rights reserved.

Types of Value Sets


There are several types of value sets you can define depending on how you need your
values to be checked. All value sets perform minimal checking, some value sets also
check against the actual values if you have provided any.

y
l
n

O
e

None A value set of the type None has no list of approved values associated with it.
A None value set performs only minimal checking of, for example, data type and
length.

I
A
O

s
U

Independent Independent type value sets perform basic checking but also check a
value entered against the list of approved values you define.

&
l
a

Dependent A Dependent value set is associated with an Independent value set.


Dependent value sets ensure that all dependent values are associated with a value in
the related Independent value set.

n
r
te

n
I
e

Table Table value sets obtain their lists of approved values from existing application
tables. When defining your table value set, you specify an SQL query to retrieve all the
approved values from the table.

l
c
a

r
O

Special and Pair


Lesson 10.

These specialized value sets are described in more detail in

.....................................................................................................................................................
2-6
Defining Flexfields

Validation Type None


.....................................................................................................................................................

Validation Type None


Validation Type None

Values are checked for expected data type,


length, and so on.

Values are not checked against an approved


values list.

Examples include credit card number, street


address, phone number.

Copyright Oracle Corporation, 1998. All rights reserved.

Validation Type None


A validation of type None performs only minimal checking of the data input through
this flexfield segment. Use the validation type None when the actual values to be input
cannot be anticipated in advance, but the data entered must conform to a particular
data type, length, or other formatting criteria. Examples of such values include credit
card numbers, street addresses, and phone numbers.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-7

Lesson 2: Using Value Sets


.....................................................................................................................................................

Independent Value Set


Independent Value Sets

Category
value
set

COM

FURN

APPL

__ Item Information _________


COM

Category
Item

Computer
Monitor

Copyright Oracle Corporation, 1998. All rights reserved.

Validation Type Independent


Use the validation type Independent when you know the allowable values ahead of
time. With an Independent validation type, you typically also define a list of the actual
values that are approved for use. The user selects these values from a pop-up list.
In the example in the slide, the Category value set contains the only three allowable
values for the Category segment of a hypothetical Item Information flexfield. The
category segment value must indicate a computer item, an appliance item, or an item
of furniture.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-8
Defining Flexfields

Dependent Value Set


.....................................................................................................................................................

Dependent Value Set


Dependent Value Sets
Category value set

COM

APPL

Computer

Item value set

FURN

Applances

Furniture

755

Modem

876

Monitor

933

Printer

320

Microwave

560

Refrigerator

876

Washer

877

Desk

154

Table

677

Bunk Bed

Copyright Oracle Corporation, 1998. All rights reserved.

Validation Type Dependent


A Dependent value set is also associated with a list of approved values. In this case
however, the values on the list can be grouped into subsets of values. Each subset of
values is then associated with a value from an Independent value set. Once a value
from the Independent value set has been specified, the list of values for the Dependent
value set displays only the values that are approved for the value selected from the
Independent value set.
In the example in the slide, once a value from the Category value set has been
specified, only the appropriate values from the Item value set are displayed.
The segment or parameter using the dependent value set must appear after the segment
or parameter using the independent value set.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-9

Lesson 2: Using Value Sets


.....................................................................................................................................................

Table-Validated Value Set


Table-Validated Value Sets
Cities_West
value set
__ Customer Display ______
Customer
City
Region

San Jose
Western

Name
Customer
table

WHERE
REGION =
Western

Acme Computers

City

Acme Computers
North Bay Foods
Midwest Grain
Southern Milling
Rocky Mountain Mining

San Jose
Boston
Chicago
Charleston
Denver

Region
Western
Eastern
Eastern
Southern
Western

Copyright Oracle Corporation, 1998. All rights reserved.

Validation Type Table


If an application table already contains all the allowable values, you can define a tablevalidated value set to retrieve them from the table. You can specify selection criteria in
the form of an SQL WHERE clause if you need to restrict the values for some reason.
Table-validated value sets are very useful when the set of approved values is very
large, changes frequently, and is maintained by the application.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-10
Defining Flexfields

Special and Pair Validation Types


.....................................................................................................................................................

Special and Pair Validation Types


Additional Validation Types

Special: uses entire key flexfield combinations as


values

Pair: links two flexfields

Copyright Oracle Corporation, 1998. All rights reserved.

Other Validation Types


There are two additional validation types that are used for more specialized validation
needs:
Special value sets can accept an entire key flexfield as a segment value in a
descriptive flexfield or report parameter.
Pair value sets are a specialized form of Special value sets.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-11

Lesson 2: Using Value Sets


.....................................................................................................................................................

Validation Types: Summary


Validation Types: Summary

List of Values Values Stored


Available
In

Type

N/A
Yes
Yes
Yes
N/A

None
Independent
Dependent
Table
Special/Pair

N/A
AOL* Table
AOL* Table
Application table
Application table

*Application Object Library


Copyright Oracle Corporation, 1998. All rights reserved.

Summary of Validation Types


The chart in the slide shows a comparison of the various validation types. It also shows
where the lists of acceptable values are stored.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-12
Defining Flexfields

Practice 2-1
.....................................................................................................................................................

Practice 2-1
Practice Overview

Using value sets


Types of value sets

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-13

Lesson 2: Using Value Sets


.....................................................................................................................................................

Planning Value Sets


Planning Value Sets

Planning value set attributes

Planning format validation

Planning values validation

Copyright Oracle Corporation, 1998. All rights reserved.

Planning Your Value Set


There are three major areas you should consider when planning your value sets.
Planning the Value Set Attributes, including the value set name, description and
other attributes
Planning the Format Validation to determine how all input must be formatted to be
acceptable
Planning the Value Validation, including specifying the validation type and any
additional validation information if required by the validation type.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-14
Defining Flexfields

Planning Value Set Attributes


.....................................................................................................................................................

Planning Value Set Attributes


Value Set Attributes
Name

Unique value set name


(Do not use XX-, XX_ , XXX-, XXX_ or any

Oracle reserved name.)

Description

Free-form descriptive text

Security

Control of values by responsibility

LongList

Interruption of long list of values display

Copyright Oracle Corporation, 1998. All rights reserved.

Value Set Level Attributes

y
l
n

Value Set Name If an Oracle Applications predefined value set has the same name
as a user-defined value set within the same application, the user-defined value set is
overridden during an upgrade. Therefore, follow these naming guidelines
Do not use the patterns of either two or three characters followed immediately by a
hyphen or an underscore. These patterns are reserved by Oracle Applications.
Do not use spaces in your value set name.
Include a custom or site prefix in the value set name to make it unique.
Oracle always provides a list of reserved value set names before an upgrade. Be sure to
check this list against your existing value set.

O
e

&
l
a

Description

I
A
O

s
U

You can give your value sets descriptive text information.

n
r
te

Security You can define security rules that further control the values available from
this value set.

n
I
e

LongList Option You can allow the user to interrupt the display of a values for very
long lists of values.

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-15

Lesson 2: Using Value Sets


.....................................................................................................................................................

Planning Format Validation


Planning Format Validation
Format Type
Maximum Size

Value data type


Maximum allowable size for a value

Precision

Number of decimal places

Numbers Only

Only entry of numbers 0-9

Uppercase Only

Lowercase input becomes uppercase

Right-Justify Zero-Fill

Shifts number to right, pads from left

Max/Min Values

Beginning and ending values of a range

Copyright Oracle Corporation, 1998. All rights reserved.

Planning Data Format Validation


Format Type

y
l
n

Select the available data types from the list of values.

O
e

Maximum Size Specify the maximum size of the value.

s
U

Precision For numeric data, specify the number of decimal places.

I
A
O

Numbers Only Select Numbers Only to accept only digits.


Uppercase Only

Select Uppercase only force any lowercase input to uppercase.

&
l
a

Right-Justify and Zero-Fill Select these options to shift number to the right and
then pad from the left with zeros. This is an alternate format for alphanumeric
numbers.

n
r
te

Maximum/Minimum Value To define a range of values for this value set, specify a
beginning value and an ending value.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-16
Defining Flexfields

Format Type
.....................................................................................................................................................

Format Type
Format Types and Options
Type

Option

Char

Uppercase Only (A-Z)


Numbers Only (0-9)
Right-Justify and Zero-Fill Numbers (0-9)

Numbers

Precision

Time
Standard Date
Standard Date Time
Copyright Oracle Corporation, 1998. All rights reserved.

Formatting Types
You can require one of several types of data formatting. When you declare a value set
a particular format type, all data entered in the segment that uses this value set must
match the requirements of the format.
For some format types, there are additional options.
The different format types and options are discussed on the following pages

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-17

Lesson 2: Using Value Sets


.....................................................................................................................................................

Character and Number Format Results


Char and Number Format Editing
Data
Type

Example
Input

Option

Character

Result

Abcd#78 Abcd#78

Number

Numbers Only

909B

909B

Uppercase Only

Bac

BAC

Right-Justify and
Zero-Fill Numbers
(Maximum Size = 4)

909

0909

12345

12345.000

Precision = 3

Copyright Oracle Corporation, 1998. All rights reserved.

Char and Numbers Formatting Rules and Their Results


You have several choices about the type of data you can allow in a value set and the
editing that is done one that data. Two of the choices are shown in the slide.

y
l
n

O
e

Char Format
characters.

Plain character format type accepts uppercase, lowercase, and special

s
U

Numbers Only This format type allows only the digits 09 to be input into a field.
You will receive an error message if you attempt to enter anything else.
Uppercase Only
uppercase.

I
A
O

This format type converts any lowercase letters entered to

&
l
a

Right-Justify and Zero-Fill Numbers Alphanumeric data is ordinarily leftjustified. This option allows you to right-justify numeric values and pad with zeros.
Any number entered is converted to the full width of the field size.

n
r
te

n
I
e

Precision For data, this numeric format type allows you to specify the number of
decimal positions available. If the data entered has more decimals than there are
precision positions, the data will be rounded.

l
c
a

r
O

.....................................................................................................................................................
2-18
Defining Flexfields

Date, Time and DateTime Format Results


.....................................................................................................................................................

Date, Time and DateTime Format Results


Date, Time, DateTime Format Editing
Output
Display

Time
Standard
Date
Standard
DateTime

Max Size = 5

HH24:MI

Max Size = 8

HH24:MI:SS

Max Size = 9

DD-MON-YY

Max Size = 11

DD-MON-YYYY

Max Size = 15

DD-MON-YY HH24:MI

Max Size = 17 DD-MON-YYYY HH24:MI


DD-MON-YY HH24:MI:SS

Max Size = 18

Max Size = 20 DD-MON-YYYY HH24:MI:SS

Copyright Oracle Corporation, 1998. All rights reserved.

Date and Time Format Results


Fields defined with format types of Time, Standard Date, and Standard DateTime are
automatically populated with appropriate values at the time of data entry. The Max
Size attribute controls the display of the output as shown in the slide. There are two
additional format types: Date and DateTime. However, these exist for backward
compatibility only. Any new value sets you create should use Standard Date and
Standard DateTime.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-19

Lesson 2: Using Value Sets


.....................................................................................................................................................

Formatting Interactions
Format Interaction
Maximum Size: 4

Character

Numbers Only (0-9)

Mach

190
Right-Justify and Zero-Fill

Uppercase Only

0190
MACH

Display Size: 2

01 90

Copyright Oracle Corporation, 1998. All rights reserved.

Consider the Interaction of Formatting Carefully


When planning your value set, consider the interaction between the value set and the
segment that will eventually use it. Optionally, try to keep the maximum size defined
to the value set and the display size defined to the flexfield segment the same.
Otherwise, the user may have to scroll to see the full value. This is especially
important with values formatted with Right-justify and Zero-fill.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-20
Defining Flexfields

Practice 2-2
.....................................................................................................................................................

Practice 2-2
Practice Overview

Formatting types and interactions

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions to this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-21

Lesson 2: Using Value Sets


.....................................................................................................................................................

Planning Validation Strategy


Planning Values Validation
None
Independent
Dependent
Table
Special
Pair

Specify formatting validation required.


Identify list of acceptable values.
Identify list of acceptable values and
their associated independent values.
Determine table access and selection criteria.
Identify key flexfield to be used for source.
Identify two flexfields involved and their
interaction.

Copyright Oracle Corporation, 1998. All rights reserved.

Planning How to Validate Your Values


The different validation type are shown on the slide. Which type of validation you use
depends on the variability of the data and how the list of acceptable values is
processed.

y
l
n

O
e

None The formatting specifications for the None validation type discussed earlier in
the lesson.
Independent
values.

I
A
O

s
U

For independent value sets, you also need to define the acceptable

&
l
a

Dependent Value Sets For dependent value sets, you must define each subgroup of
acceptable values and associate it with its Independent value set value. You must also
define a default value for each subgroup of values.

n
r
te

Table For a Table value set, you must identify the source table and the column from
which the values are to be retrieved. If necessary, you must specify an SQL WHERE
clause to restrict the values to the values allowable.
Special and Pair validation types are discussed later in the course.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-22
Defining Flexfields

Planning Values
.....................................................................................................................................................

Planning Values
Planning Value Sets and Their Values
Category
value set

Category
values

Item

Item

values

value set

COM

APPL

FURN

755

Modem

876

Monitor

933

Printer

320

Microwave

560

Refrigerator

876

Washer

877

Desk

154

Table

677

Bunk Bed

Copyright Oracle Corporation, 1998. All rights reserved.

Planning Your Values When Planning Value Sets


For validation types that provide lists of values, plan the values they will process when
you are planning the value set itself:
Consider how the actual values should be formatted. For example, if the values are
01, 02, instead of 1,2, define the value set with Right-Justify Zero-Fill set to Yes.
Consider the segment size and the display sizes you define.
When using existing value sets, disable values that have become obsolete (values
cannot be deleted), or change the description and reuse the value if possible.

y
l
n

O
e

I
A
O

s
U

Using Range Features


Group related values in ranges to simplify implementing range-based features such
as cross-validation and security rules.
Allow for future expansion by using large values. For example, use three digits
instead of two for a segment.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-23

Lesson 2: Using Value Sets


.....................................................................................................................................................

Planning Dependent Value Set Values


Planning Dependent Value Sets
Use the following strategy when planning and
creating dependent value sets:

Plan and create your independent value set.

Define your independent values.

Create your dependent value set, specifying a


default value.
Define your dependent values.

Copyright Oracle Corporation, 1998. All rights reserved.

Planning Values for Dependent Value Sets


Since the values for a dependent value set interact with the values from an independent
value set, use the procedure outlined on the visual when planning your dependent
value set. Notice that you must define a default value for each group of dependent
values.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-24
Defining Flexfields

Defining Your Value Sets


.....................................................................................................................................................

Defining Your Value Sets


Defining Value Sets

Use existing value sets when possible.

Define value set.

Define list of values if appropriate.

Copyright Oracle Corporation, 1998. All rights reserved.

Defining Your Value Sets


The procedure for defining value sets is shown in the slide. You should always check
the existing value sets to see if there is an existing value set you can use.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-25

Lesson 2: Using Value Sets


.....................................................................................................................................................

Using Existing Value Sets

Value Sets
(N)>Application>Validation>Set
Choose a previously defined value set to validate segments from key and descriptive
flexfields or report parameters. This limits the necessary maintenance of values.
Changing a value sets values affects all the segments and parameters that use that
value set. Use the navigation path above to display a list of existing value sets.

y
l
n

Predefined Value Sets


Most predefined value sets are table-validated value sets.
A useful value set is Yes_No, containing the values Yes and No.
Never alter value sets provided by Oracle Applications, especially the SRS value
set.

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-26
Defining Flexfields

Defining a New Value Set


.....................................................................................................................................................

Defining a New Value Set

Defining a New Value Set


(N)>Application>Validation>Set
Create a new value set to define allowable values for a flexfield segment or report
parameter:
Choose format and validation values.
Specify formatting carefully.
Define the maximum size to be less than the size of the underlying column in the
base application.
Click the Edit Information button to information required for validation types other
than None and Independent.
The example shows an independent value set to contain two characters indicating a
businesss western region.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-27

Lesson 2: Using Value Sets


.....................................................................................................................................................

Defining a Dependent Value Set

Specifying Dependent Value Set Associations


(N)>Application>Validation>Set>Edit Information
For dependent value sets, identify the independent value set and specify a default
dependent value.
The example shows a dependent value set to contain city values. These city values
depend on the state values in the previously defined independent value set,
FF_Western_Region_State.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-28
Defining Flexfields

Locating the Value Set for Values Definition


.....................................................................................................................................................

Locating the Value Set for Values Definition

Segment Values
(N)>Application>Validation>Values>Find Value Set>Find (B)
Once you have created your value set, you need to define the allowable values if the
validation type requires a list of values. Use the navigation path shown to display a list
of value sets for values definition.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-29

Lesson 2: Using Value Sets


.....................................................................................................................................................

Defining Value Set Values

Defining Allowable Values


(N)>Application>Validation>Values>Find Value Set>Find (B)>select
name of value set>OK (B)
Create values for independent and dependent value sets. When defining values for
dependent value sets, you must specify the independent value for which the dependent
values apply.

y
l
n

O
e

s
U

Defining Values Click in the Value column and select Query>Run to display any
existing values. Values can never change, but the description can. So for example,
while a departmental code of 340, once defined, cannot be changed or deleted, you can
reuse it if you change the description for that particular value.

I
A
O

Using Alternative Regions Use the Effective alternative region to specify the dates
during which a value is active.
The Oracle General Ledger applications use the Parent, Rollup Group, and Level fields
when defining value hierarchies. These fields appear in the Hierarchy, Qualifiers
alternative region. When defining values within these regions, the Hierarchies and
Child Range buttons are also active.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-30
Defining Flexfields

Defining Values for a Dependent Value Set


.....................................................................................................................................................

Defining Values for a Dependent Value Set

Defining Values for a Dependent Value Set


(N)>Application>Validation>Values>Find Value Set>Find (B)>select
name of value set and independent value set value>OK (B)
When you define the values for a dependent value set, you must specify which
independent value is associated with the dependent values.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-31

Lesson 2: Using Value Sets


.....................................................................................................................................................

Special Value Set Features

Special Value Set Features


(N)>Application>Validation>Values>Find Value Set>Find (B)>select
name of value set>OK (B)>tab to Qualifiers field
Some Oracle Applications (most notably, Oracle General Ledger) make use of special
features, which can be defined in a value set. These include:

y
l
n

Value Hierarchies
between values.

O
e

s
U

These include Rollup groups and parent-child relationships

Index Flag (Accounting Flexfield Only)


Optimizer feature.

I
A
O

This is used with the General Ledger

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-32
Defining Flexfields

Practice 2-3
.....................................................................................................................................................

Practice 2-3
Practice Overview

Defining value sets with type None, Independent,


and Dependent

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
2-33

Lesson 2: Using Value Sets


.....................................................................................................................................................

Using Value Sets: Summary


Summary

Value sets control data available through flexfields.


A value set is a definition of allowable values.
Different types of value sets validate differently.
Value sets may also contain a list of actual values.

Copyright Oracle Corporation, 1998. All rights reserved.

Using Value Sets: Summary


Use value sets to control the data entered and displayed through flexfield segments. A
value set is a definition of allowable values. There are five types of value sets. Each
type differs in the amount and type of validation processing it performs. Some types of
value sets present the user with a list of actual values from which to choose. This list
can be defined by the user, or retrieved from an application table.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
2-34
Defining Flexfields

3
.................................

Planning Descriptive
Flexfields

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Objectives
Objectives
After completing this lesson, you should be able to
do the following:

Identify the descriptive flexfield to be used and the


information to be gathered

Organize the information according to usage


Plan the layout of the descriptive flexfield
Plan the behavior of the descriptive flexfield

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Topics
This lesson describes the process required to plan a descriptive flexfield.
At the end of this lesson, you should be able to:
Identify the descriptive flexfield to be used and the information to be gathered
Organize the information according to usage
Plan the layout of the descriptive flexfield
Plan the behavior of the descriptive flexfield

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-2
Defining Flexfields

Planning Descriptive Flexfields: Overview


.....................................................................................................................................................

Planning Descriptive Flexfields: Overview


Planning Descriptive Flexfields
Overview

Identifying and organizing data


Arranging different descriptive flexfield layouts
Specifying the flexfield mechanics

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Overview
Descriptive flexfields allow the user to gather additional information beyond that
gathered by Oracle Applications. The information gathered by a descriptive flexfield
and the structure of that information can vary between different users. This lesson
covers analyzing and organizing the additional data, designing the different flexfields
layouts, and specifying how the descriptive flexfield will behave.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-3

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Planning Procedure
Planning a Descriptive Flexfield

Identify the flexfield to be implemented.

Design the layout of the flexfield to reflect how the


information is used.

Design the behavior of the flexfield.

Determine the resources available for the flexfield.


Identify and organize the information to be
collected.

Define the flexfield, freeze, and compile.

Copyright Oracle Corporation, 1998. All rights reserved.

Implementing a Descriptive Flexfield


Descriptive flexfields provide an easy and powerful way to extend the processing of
Oracle Applications. However, since descriptive flexfield structures can be organized
in many ways, you should spend some time in planning the new flexfield to ensure a
successful result. Follow these steps to implement your descriptive flexfield:
1 Identify the flexfield to implement. Descriptive flexfields do not exist in a vacuum.
They are logically related to the form on which they appear. Once you decide to
implement the descriptive flexfield on a form, you must identify which descriptive
flexfield it is.
2 Determine the system resources available to you. The number of segments
available for use on your flexfield depends on the number of underlying columns in
the base table. Since this will control the number of segments you have available
for use, you must find this information before you can plan your design.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-4
Defining Flexfields

Planning Procedure
.....................................................................................................................................................

Planning a Descriptive Flexfield

Identify the flexfield to be implemented.

Design the layout of the flexfield to reflect how the


information is used.

Design the behavior of the flexfield.

Determine the resources available for the flexfield.


Identify and organize the information to be
collected.

Define the flexfield, freeze, and compile.

Copyright Oracle Corporation, 1998. All rights reserved.

Implementing a Descriptive Flexfield (continued)


3 Identify the items of information you wish to gather. The information you gather
should be logically related to the other information on the form.
4 Design the Flexfield Layout. Determine the number of segments and how they will
be combined into structures.
5 Design the Flexfield Behavior. If you have multiple structures, determine how to
process the different contexts.
6 Define the Actual Flexfield. Use the descriptive flexfield definition windows to
enter your definition. Freeze and compile the definition to make the flexfield
available to other users.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-5

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Using Descriptive Flexfields


Using Descriptive Flexfields
__ Sale Information ________________________
Transaction

3987

CC

Payment Type

Customer Jane Doe


Item COM-876-LTN
Description Computer - Monitor - Light Tan

Descriptive
Flexfield
Window:
Customer
Specific
Information

Application
Window:
Application
Specific
Information

[]

Payment Type

CC

Store
Dept
Number
Exp. Dt

Copyright Oracle Corporation, 1998. All rights reserved.

Using Descriptive Flexfields


Descriptive flexfields have many uses in Oracle Applications:
Flexfields expand Oracle Applications processing without programming.
Descriptive flexfields provide user-customizable expansion space in forms by
enabling built-in blank fields to store extra data.
Each installation of Oracle Applications may use descriptive flexfields
differently.
You can use different structures for different contexts.
Use different segments depending on other information in the form or the
descriptive flexfield.
Allow only the appropriate context-sensitive segments to appear.
Save Space.
Non-essential information resides in a descriptive flexfield that pops up only
when the information becomes necessary.
If no extra fields are needed, the descriptive flexfield occupies little additional
space on the form.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-6
Defining Flexfields

Typical Descriptive Flexfield Information


.....................................................................................................................................................

Typical Descriptive Flexfield Information


Typical Descriptive Flexfield Information

Benefits information
Calendar information
Labor cost information

Lease information

Currency exchange information

Credit information

Payment information

Budget information

Distribution system information


Copyright Oracle Corporation, 1998. All rights reserved.

Typical Information Collected by Descriptive Flexfields


The slide shows typical business areas in which you may need to track additional or
specialized information. You can easily define a descriptive flexfield to gather and
store as much extra data as is required for your business needs.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-7

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Some Oracle Applications Descriptive Flexfields


Some Oracle Applications
Descriptive Flexfields
Bonus Rates
Calendar Types
Price Indexes

Oracle
Assets
Oracle
General
Ledger

Site Address

Credit History
Oracle
Receivables Information

Daily Rates

Activity
Information
Item Cost
Information

Oracle
Bills of
Material

Bank Branch
Oracle
Payment Terms
Payables

Shift Time
Information

Oracle
Work in
Progress

Employee Labor
Rate
Shop Floor
Status
WIP Parameters

Copyright Oracle Corporation, 1998. All rights reserved.

Oracle Applications Descriptive Flexfields (Partial)


There are many descriptive flexfields available for use within Oracle Applications. The
slide shows only some of the flexfields available.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-8
Defining Flexfields

Identifying a Descriptive Flexfield


.....................................................................................................................................................

Identifying a Descriptive Flexfield

Identifying a Descriptive Flexfield


(N)>Customers>Standard Receivables, Vision Operations
The presence of a descriptive flexfield on a form is indicated by a single-space field
enclosed in brackets. Whenever you see this, there is a descriptive flexfield defined for
use with that form. In some cases there may be multiple descriptive flexfields for use
with the same form.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-9

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Determining the Descriptive Flexfield Name


(N)>Customers>Standard Receivables>Help (M)>Tools>Examine
Since descriptive flexfields are not labeled on the base form, once you recognize a
descriptive you wish to implement, use the following procedure to determine the name
of the flexfield:
1 Click on a field in the same block in which the descriptive flexfield appears.
2 Select Help>Tools>Examine. This opens a window showing information on
the selected field. Note the name of the block in which the field is located.

y
l
n

O
e

s
U

Determining the Descriptive Flexfield Name (continued)


3 Click the Block button to display a list of the available blocks for this form. Select
$DESCRIPTIVE_FLEXFIELD$.
4 Select the field button to display a list of the descriptive flexfields for this form.
Each entry is prefixed by the name of the block in which the descriptive flexfield
appears. Find the entries for the block whose name you determined in step 2.

&
l
a

I
A
O

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-10
Defining Flexfields

Identifying a Descriptive Flexfield


.....................................................................................................................................................

Determining the Descriptive Flexfield Name (continued)


5 Select the flexfield you wish to implement from the entries for that block.
6 The User name of the descriptive flexfield appears in the Value field.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-11

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Determining the Resources Available

Determining the Available Resources


(N)>Application>Flexfield>Descriptive>Segments>Use a list of values
from the Application field to select the target flexfield>Segments (B)>place
cursor in Column>display list of values for Column
Once you have identified the descriptive flexfield you want to implement, you need to
determine how many segments you can plan for. To do this, you need to know the
number of ATTRIBUTE columns in the underlying table.
Find the flexfield definition and navigate to the Segments Summary window for that
flexfield. Use the list of values on the Column field to display a list of the attribute
columns. You will use this list of values again later to assign a segment to an
underlying column, but you can also use it for planning now. The columns are
numbered sequentially, so the highest numbered column tells you how many segments
you can use.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-12
Defining Flexfields

Practice 3-1
.....................................................................................................................................................

Practice 3-1
Practice Overview

Determining the name of the descriptive flexfield


Determining the resources available to the flexfield

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-13

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Identifying the Information Needs


Planning Questions

What additional information needs to be captured?


Is there any information you need to capture every time?
Is there information you need to capture on an ad hoc
basis?
Can the need for capturing the ad hoc information be
conditioned on a value in a base window?
How much control over the window processing do you want
to give to the user?

Copyright Oracle Corporation, 1998. All rights reserved.

Identifying Your Information Needs


Once you know what resources you have available, you can begin to plan the layout of
the flexfield.
First determine your information needs. Some of the questions to ask are shown on the
slide. Before you can start designing the flexfield structure, you should know what
information needs to be gathered by this flexfield, and how the information will be
used.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-14
Defining Flexfields

Identifying the Items to Be Collected


.....................................................................................................................................................

Identifying the Items to Be Collected


Identifying Your Information

Store number

Check number

Credit card number

Expiration date

Down payment

Copyright Oracle Corporation, 1998. All rights reserved.

Identifying Needed Information


Assume you are planning a descriptive flexfield that will gather additional sales
payment information. Some of the possible items of data in which you might be
interested appear on the slide.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-15

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Organizing the Information by Usage


Grouping Information By Usage

Situation 1:
(finance)

Store number

Down payment

Situation 2:
(check)

Store number

Check number

Situation 3:
(credit card)

Store number

Credit card number

Expiration
Date

Copyright Oracle Corporation, 1998. All rights reserved.

Organizing Information by Usage


After you have identified all the items of information you want to gather, organize
them by usage. Are all the items used all the time? Are all the items used in the same
way?
The slide shows three different payment situations and the items of information
appropriate for each situation.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-16
Defining Flexfields

Isolate Common Items


.....................................................................................................................................................

Isolate Common Items


Isolate Common Information
Situation 1:
(finance)

Store number

Down payment

Situation 2:
(check)

Store number

Check number

Situation 3:
(credit card)

Store number

Credit card number Expiration


Date

Used by

Varies by

all tasks

task

Copyright Oracle Corporation, 1998. All rights reserved.

Isolate Common Information


After you have organized the items of information by usage, isolate any items that
occur in all situations. You define the information used by all tasks in one structure and
the information that varies by task in another, task-specific structure.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-17

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Determine Different Contexts


Determine Different Contexts
Finance context
Situation 1:
(finance)

Store number

Down payment

Check context
Situation 2:
(check)

Store number

Check number

Credit card context


Situation 3:
(credit card)

Store number

Credit card number Expiration


Date

Copyright Oracle Corporation, 1998. All rights reserved.

Determine Your Contexts


After you have removed the commonly occurring information, you can organize the
remaining information into groups according to the type of information being gathered
or the way the information is being used. These different groups of information are
called contexts.
Once you have determined the items of information that are always appropriate and
the different contexts with each of their pieces of information, you are ready to begin
defining your flexfield.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-18
Defining Flexfields

Practice 3-2
.....................................................................................................................................................

Practice 3-2
Practice Overview

Organizing information for a descriptive flexfield

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-19

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Descriptive Flexfield Components


Descriptive Flexfield Components

Global segment

Displays information common to all


contexts

Context-sensitive
segment

Displays information appropriate only to


a particular context

Reference field

A field on the application window whose


value can determine contexts

Context field

A field on the flexfield whose value


can determine contexts

Copyright Oracle Corporation, 1998. All rights reserved.

Descriptive Flexfield Components


Descriptive flexfields are constructed from segments. Each segment contains one item
of information. Since the same flexfield can be used by different contexts, and each
context needs different items of information, you need to design different layouts for
the same flexfield to support the different contexts.
Specify your layout in terms of global segments and context-sensitive segments.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-20
Defining Flexfields

Using Global Segments


.....................................................................................................................................................

Using Global Segments


Global Segments
Finance context

Global
Segments
(Common)

Store number

Credit card context


Check context
Store number
Store number

Copyright Oracle Corporation, 1998. All rights reserved.

Using Global Segments


Global segments are segments that appear regardless of context. Always plan your
global segments first. Some descriptive flexfields use only global segments.
Continuing the payment information example, the slide shows that the store number is
appropriate for all contexts. Thus it is an obvious global segment.
Global segments are the easiest to define. However, they may use up the allotted
columns. Columns used for global segments cannot hold an context-sensitive
segments.
You can add context-sensitive segments later if columns are available, but enabled
global segments always appear.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-21

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Using Context-Sensitive Segments


Context-Sensitive Segments
Finance context

ContextSensitive
Segments
(Vary by context)

Account
Finance terms
Down payment

Credit card context

Check context

Card number
Expiration date

Second ID

Copyright Oracle Corporation, 1998. All rights reserved.

Context-Sensitive Segments
Context sensitive segments occur depending on the context.
The slide shows sample contexts and the segments that are unique to each of them.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-22
Defining Flexfields

Distinguishing Between Contexts


.....................................................................................................................................................

Distinguishing Between Contexts


Distinguishing Between Contexts
Financing
Store number
Account
Finance terms
Down payment

context

Credit card
contex

Context
Check context

field

Store number
Second ID

Store number
Card number
Expiration date

Copyright Oracle Corporation, 1998. All rights reserved.

Distinguishing Between Contexts


If your descriptive flexfield uses different contexts, you must decide how to distinguish
between them. You must identify a field whose value can distinguish between
contexts. This field is called the context field.
In some cases, you can use an existing field as the context field, in other cases, you
must create a segment on the descriptive flexfield.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-23

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Using Context and Reference Fields


Reference and Context Fields

Reference Field: a field on the existing form


whose value can distinguish between contexts
Context Field: a field created on the descriptive
flexfield form that allows the user to select
different contexts

Copyright Oracle Corporation, 1998. All rights reserved.

Using Context and Reference Fields


There are two design options for distinguishing between contexts:
If there is an existing field on the base window whose value can be used to
distinguish between contexts, it can be used as a reference field.
If there is no existing field that can be used, you can created a field on the flexfield
itself that can be used to choose between contexts.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-24
Defining Flexfields

Using a Reference Field


.....................................................................................................................................................

Using a Reference Field


Using Reference Fields
Existing
application
window

Reference field

Context 1

Context 2

Global
Data

Global
Data

Elements

Proposed
flexfield
designs

Context

Elements
Context

Sensitive

Sensitive

Fields

Fields

Copyright Oracle Corporation, 1998. All rights reserved.

Using Reference Fields


Reference fields are fields on the existing window whose values can determine which
context a descriptive flexfield uses under the following conditions:
The field must be defined to be referenceable. Not all fields on a window can be
used as a reference field.
The values appearing in the reference field should be known and predictable.
Since the same descriptive flexfield can appear on different windows, any field
used as a reference field for that descriptive flexfield must appear on the same
windows.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-25

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Identifying Referenceable Columns

Identifying Reference Field Candidates


(N)>Application>Flexfield>Descriptive>Use list of values to select target
flexfield
Not all fields on the underlying window can be used as a reference field for a
descriptive flexfield. Display a pop-up list on the REFERENCE FIELD column
containing the fields available to use as reference fields for this descriptive flexfield.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-26
Defining Flexfields

Using a Context Field


.....................................................................................................................................................

Using a Context Field


Using Context Fields
Existing
application
window
Context 2

Context 1
Global

Proposed flexfield designs

Data

Global
Data

Elements

Elements

(Context)

(Context)

(Context
fields)

Context
Sensitive
Fields

Context
Sensitive
Fields

Copyright Oracle Corporation, 1998. All rights reserved.

Using a Context Field


Sometimes there is no field on the existing window that is appropriate for use as a
reference field. In this case, you need to create a column on the descriptive flexfield
itself to hold and display the different possible context values.
A context field is an additional field appearing on the descriptive flexfield.
The user can display the appropriate context by selecting a value from the pop-up
list for the context field.

y
l
n

O
e

I
A
O

s
U

Context Field Is Not a Segment


The context field has a context field prompt.
The response, called a context field value, determines which group of contextsensitive segments appears next.
Each value for the context field can correspond to a separate context-sensitive
structure.
Context fields do not always display. Non-displayed context fields derive values
from a default or from a reference field, and the user cannot change the context
field value.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-27

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Layout Option 1: Global Segments Only


Planning Flexfields:
Global Segments Only

Existing application window

Global
Segments

Proposed
flexfield
design

Copyright Oracle Corporation, 1998. All rights reserved.

Using Global Segments Only


Some descriptive flexfields use global segments only. The information gathered by that
flexfield is valid for all users of the flexfield. All global segments display when the user
enters the flexfield, and each segment prompts the user for one item of information.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-28
Defining Flexfields

Layout Option 2: Context Segments Only


.....................................................................................................................................................

Layout Option 2: Context Segments Only


Planning
Planning Flexfields:
Flexfields:
Context
Context Segments
Segments Only
Only
Existing application window

Proposed
flexfield
structures

Context Prompt

Context 1

Context 2

Context

Context

Sensitive

Sensitive

Fields

Fields

Copyright Oracle Corporation, 1998. All rights reserved.

Using Context-Sensitive Segments Only


Some descriptive flexfields use only context-sensitive segments. They have no global
segments. The flexfield contains only the context field prompt until a context is
chosen. The context field value that is chosen determines which context is displayed in
a second window.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-29

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Layout Option 3: Combination


Planning
Planning Flexfields:
Flexfields:
Global
Global and
and Context
Context Fields
Fields
Global
Segments
Context Prompt

Global
Structure 1

Segments

Structure 2

Global
Segments

Context
Context

Sensitive

Sensitive

Fields

Fields
Copyright Oracle Corporation, 1998. All rights reserved.

Using a Combination of Global and Context-Sensitive Segments


Most descriptive flexfields use a combination of global and context-sensitive
segments. With a combination of global and context-sensitive segments, the
processing is as follows:
When the user opens the flexfield, all the global segments and a context prompt
appear.
Once the user chooses a context, the appropriate context-sensitive segments are
added to the already visible global segments.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-30
Defining Flexfields

Practice 3-3
.....................................................................................................................................................

Practice 3-3
Practice Overview

Designing a descriptive flexfield

Copyright Oracle Corporation, 1998. All rights reserved.

Practice 3-3
See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-31

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Specifying the Flexfield Attributes

Specifying the Flexfield Attributes


(N)>Application>Flexfield>Descriptive
Once you have the structure designed and the context behavior determined, you can
plan the flexfield cosmetics. These include:
The context prompt
All the segment prompts
The segment separator

y
l
n

O
e

I
A
O

s
U

Specifying the Flexfield Structures


All of the segments contained on the flexfield will be defined to a structure. There is a
default structure, Global Data Elements, to which you define all global segments. In
addition to the Global Data Elements structure, you create a separate structure for each
context. Use meaningful context names since they show up in the list of values for the
contexts. Clear the enabled box if you ever need to mark this structure as unavailable.
When you have specified your structure information, click the Segments button to
define your structure segments.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-32
Defining Flexfields

Specifying the Context Field Information


.....................................................................................................................................................

Specifying the Context Field Information

Specify How the Context Is Determined


(N)>Application>Flexfield>Descriptive

y
l
n

Override Allowed (Display Context) Clear this check box if you want to restrict
the user from choosing different contexts. If you use a reference field, you do not have
to display the context field unless you want to allow the user to select a context
different from the reference field value. If you do not display the context field and are
not using a reference field, you should define a default context value as discussed
below.

O
e

I
A
O

s
U

Prompt This is the prompt context displayed on the flexfield. If you choose to
display the context field, you must supply a value for this field.

&
l
a

Default Value Specify a default context structure to use. Always define a value here
if you are not using a reference field and not displaying the context field.

n
r
te

Reference Field If your use a reference field, enter the name here in the format
Block.field. Use a pop-up list on this field to display a list of the referenceable fields on
the base window.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-33

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Specifying the Segment Attributes

Specifying Segment Attributes


(N)>Application>Flexfield>DescriptiveSegments (B)
Specify the following attributes for each segment in the structure:
Number
Name

The placement of the field on the window, from top to bottom.

The internal name for this segment.

Window Prompt
flexfield.

y
l
n

O
e

The prompt for this segment that will be displayed on the

I
A
O

s
U

Column The ATTRIBUTE column stores the data from this segment. Available
columns are selectable from a pop-up list for this field. See the following page for an
explanation of how ATTRIBUTE columns store descriptive flexfield data.

&
l
a

Value Set If you wish the validate the data entered through this segment, specify a
value set to perform validation checking.
Displayed

n
r
te

Clear this check box if you need to prevent the display of this field.

n
I
e

Enabled Select this check box to mark this segment ready for processing.

l
c
a

r
O

.....................................................................................................................................................
3-34
Defining Flexfields

Storing Descriptive Flexfield Segments


.....................................................................................................................................................

Storing Descriptive Flexfield Segments


Storing Descriptive Flexfield Segments
Structure A

Structure B

Global AAA

Global AAA

Context BBB

Context DDD

Context CCC

CONTEXT

ATTRIBUTE1

ATTRIBUTE2

ATTRIBUTE3

Structure A

Global AAA

Context BBB

Context CCC

Structure B

Global AAA

Context DDD

Copyright Oracle Corporation, 1998. All rights reserved.

Storing Descriptive Flexfield Segments


As mentioned previously, the segments that make up a descriptive flexfield are stored
in columns in the underlying tables. Each segment stores its data in one of the
ATTRIBUTE columns. This does not mean, however, that every segment on the
flexfield needs its own column. As shown on the slide, context-sensitive columns from
different contexts can share the same column. The value in the CONTEXT column
distinguishes between context segments.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-35

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Specifying the Segment Detail Attributes

Specifying the Segment Detail Attributes


(N)>Application>Flexfield>Descriptive>Segments>Open
You can use this window to specify any additional attributes for the segment.
Validation Block Entries

y
l
n

Value Set The name of the value set used to validate data entered through this
segment.
Description
Default Type
type here.

O
e

The description of this value set.

I
A
O

s
U

If you wish to define a default value for this segment, select the data

Default Value

Define the actual default here.

&
l
a

Required Select this checkbox if a value for this segment is mandatory.

n
r
te

Security Enabled Select this checkbox to turn on any security rules for this value
set.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-36
Defining Flexfields

Specifying the Segment Detail Attributes


.....................................................................................................................................................

Specifying the Segment Detail Attributes (continued)


(N)>Application>Flexfield>Descriptive>Segments>Open
Sizes These sizes determine the width of the field on the flexfield that is used to
display this segment. Especially consider the interaction between Display
Size and the Maximum Size value defined to the value set used with this
segment.

y
l
n

Prompts
Window

O
e

Specify the label that will appear to the left of this segment on the flexfield.

s
U

List of Values By default, this will be the same as the segment name. It should not
be larger than the Display Size.

&
l
a

I
A
O

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-37

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

Specifying a Segment Default Value


Specifying Default Values

Default Type

Default Value

Constant

Any literal value

Current Date

Current time

Current time

Current time or current date/time

Field

Default Value field value

Profile

Value of profile in Default Value

Segment

Value in prior segment

SQL Statement

Result of SQL query

Copyright Oracle Corporation, 1998. All rights reserved.

Specifying a Segment Default

y
l
n

Default
Type
Constant
Current Date
Current Time

Default Value

Example

Result

The constant specified


The data at the time of entry.
The Date/Time at the time of
entry.

USA

Field

The value in the specified field.


Use the format block:field
The value of the specified profile
option. Use the application name
of the profile option.
The value returned by the
specified SQL statement. The
statement must return a single
value. $PROFILES$ and $FLEX$
can be used in the statement
The value returned by the
specified previous segment.

ORDER:LINE

USA
MAY 01, 1998
14:30:00
MAY 01, 1998
3

Profile

SQL
Statement

Segment

&
l
a

l
c
a

n
I
e

r
O

n
r
te

I
A
O

O
e

s
U

GL_SET_OF_
BOOKS_ID

101

SELECT
NAME FROM
EMP WHERE
JOB=CEO

Jones

Company

01

.....................................................................................................................................................
3-38
Defining Flexfields

Planning Descriptive Flexfields: Summary


.....................................................................................................................................................

Planning Descriptive Flexfields: Summary


Planning Descriptive Flexfields
Summary

Descriptive flexfields gather additional information

A descriptive flexfield design can support the


different user needs

Different users of the same flexfield can have


different needs

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Summary
This lesson discussed how to plan a descriptive flexfield. Descriptive flexfields gather
additional information beyond that gathered by Oracle Applications. Not all users of
the same descriptive flexfield need the same information. Descriptive flexfields can be
customized so that each user sees only the information needed.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
3-39

Lesson 3: Planning Descriptive Flexfields


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
3-40
Defining Flexfields

4
.................................

Defining Descriptive
Flexfields

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Lesson 4: Defining Descriptive Flexfields


.....................................................................................................................................................

Objectives
Objectives
After completing this lesson, you should be able to
do the following:
Define a descriptive flexfield structure
Define global segments
Define context-sensitive segments as appropriate

Copyright Oracle Corporation, 1996. All rights reserved.

Lesson Topics
At the end of this lesson, you should be able to:
Define a descriptive flexfield structure
Define global segments
Define context-sensitive segments as appropriate

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
4-2
Defining Flexfields

Defining Descriptive Flexfields: Overview


.....................................................................................................................................................

Defining Descriptive Flexfields: Overview


Overview
Specifying descriptive flexfield attributes
Defining a descriptive flexfield with global
segments
Defining a descriptive flexfield with both global and
context-sensitive segments

Copyright Oracle Corporation, 1996. All rights reserved.

Lesson Overview
In the previous lesson, you learned how to plan a descriptive flexfield. This planning
process included organizing the information to be gathered and designing multiple
structures if necessary.
This lesson covers the mechanics of defining a descriptive flexfield. Flexfields
consisting of only global segments as well as both global and context-sensitive
segments are covered. There are several practices in which you will be assigned an
actual descriptive flexfield and be asked to define multiple structures.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
4-3

Lesson 4: Defining Descriptive Flexfields


.....................................................................................................................................................

Defining a Descriptive Flexfield


Defining a Descriptive Flexfield
1. Define any value sets needed.
2. Create the flexfield and specify context
information.
3. Define different structures.
4. Specify segment cosmetics and behavior.
5. Freeze and compile definition.
6. Define values to value sets if needed.
Copyright Oracle Corporation, 1996. All rights reserved.

Defining a Descriptive Flexfield: Steps


Use the following procedure to define a descriptive flexfield:
1 Define any value sets needed.
2 Create the flexfield and define the context information.
3 Define the different structures.
4 Specify segment cosmetics and behavior.
5 Freeze flexfield definition and compile.
6 Define values to value sets.

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
4-4
Defining Flexfields

Defining Value Sets


.....................................................................................................................................................

Defining Value Sets

Defining Value Sets


(N)>Application>Validation>Sets
Define value sets for each segment of the planned descriptive flexfield, including both
global and context-sensitive segments:
Determining the necessary value sets is an essential planning step.
Use existing value sets when possible.
Create new value sets if necessary. These value sets can be used by other flexfields
or report parameters as appropriate.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
4-5

Lesson 4: Defining Descriptive Flexfields


.....................................................................................................................................................

Locating the Appropriate Flexfield Definition

Locating the Flexfield Definition


(N)>Application>Flexfield>Descriptive>Segments>(M)Query>Find
Locate the target flexfield definition by finding the application that owns the definition
and the flexfield title.
A flexfield may appear on more than one window. However, defining the flexfield once
automatically defines it for all locations.
Once you access the definition, you must unfreeze it to begin making changes.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
4-6
Defining Flexfields

Defining the Flexfield Header Attributes


.....................................................................................................................................................

Defining the Flexfield Header Attributes

y
l
n

Defining the Header Attributes


(N)>Application>Flexfield>Descriptive>Segments>(M) Query>Find
> select flexfield
The header attributes you specify include:
Application The application that owns the flexfield.

I
A
O

Title The title displayed at the top of the flexfield.

O
e

s
U

Freeze Flexfield Definition Select this box when you have finished defining your
flexfield. Freezing the definition enables the Compile button so you can compile your
definition.
Segment Separator
segment values.

&
l
a

n
r
te

Specify a separator to be used when displaying concatenated

n
I
e

Global Data Elements If your structure has no context-sensitive structures, select


Global Data Elements and click the Segments button to define the global segments.
Define the segments that always appear regardless of the context value. Define global
segments first to facilitate efficient column use.

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
4-7

Lesson 4: Defining Descriptive Flexfields


.....................................................................................................................................................

Defining Segments Attributes

Defining Segment Attributes


(N)>Application>Flexfield>Descriptive>Segments>(M) Query>Find
> select flexfield>Segments
Number Specify the sequence number (from top to bottom) of this segment within
the flexfield structure. The segments defined for Global Data Elements always appear
first. They are the followed by the segments defined for whatever other contextsensitive structure is selected.

y
l
n

Name

O
e

Enter the name for this segment.

Window Prompt
to use the Name.

I
A
O

s
U

Enter a prompt to show up on the flexfield window. The default is

Column Select the ATTRIBUTE column in the base table to hold this segments
data. A pop-up list for this field displays the columns available to you for definition.

&
l
a

n
r
te

Value Set Specify an existing value set to validate the data for this segment.
Click the Open button to define additional attributes for your segment.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
4-8
Defining Flexfields

Specifying Validation and Field Sizes


.....................................................................................................................................................

Specifying Validation and Field Sizes

Specifying Validation and Field Sizes


(N)>Application>Flexfield>Descriptive>Segments>(M) Query>Find
> select flexfield>Segments>Open
Use this window to specify additional attributes for the segment.
If you are using a value set to validate the input in this segment, enter the name of the
value set. You can also enter a default for the segment and enable security.
Use the Sizes fields to control the display of the segment in the flexfield window.
Specify the Display Size of the flexfield segment to be the same as the Maximum Size
of the value set used by this segment to avoid scrolling.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
4-9

Lesson 4: Defining Descriptive Flexfields


.....................................................................................................................................................

Freezing and Compiling the Definition

Freezing and Compiling the Definition


(N)>Application>Flexfield>Descriptive>Segments>(M) Query>Find
> select flexfield
Freeze the flexfield information to notify the application to begin using the flexfield.
Compiling the flexfield stores the information efficiently. If the compile detects any
problems, a message window displays a warning.
Flexfields automatically compile the flexfield definition at every commit on this form.
The request for view generation automatically follows compilation.
You see your own changes immediately. Other users must exit or change
responsibilities to see the new definitions take effect.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
4-10
Defining Flexfields

Practice 4-1
.....................................................................................................................................................

Practice 4-1
Practice Overview
Defining a descriptive flexfield having global
segments

Copyright Oracle Corporation, 1996. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
4-11

Lesson 4: Defining Descriptive Flexfields


.....................................................................................................................................................

Defining Context Field Information

Defining Context Information


(N)>Application>Flexfield>Descriptive>Segments>(M)Query>Find
> select flexfield
Define the context information that determines how context-sensitive structures are
chosen.
If not using a reference field to obtain the context value, enter a context field
prompt. This is the prompt that instructs the user to select a context.
Optionally enter a default value. This should be the name of the most common
context-sensitive structure. If you use a reference field, ensure that the default
value can be obtained from the reference field.
Specify whether the context field is required. Without a required response in the
context field, users can avoid entering any information in any of the contextsensitive structures. If you are requiring a context value and not displaying a
context prompt, either provide a default or ensure that a value can be obtained from
a reference field value.
If you are using a reference field, specify the field name in the Reference Field
field. Not all fields on the window can be used as a reference field. Use the list of
values for this field to set the possible reference fields for the window.
Field Values block. The name you use for these structures must exactly match the
values you expect to see in the context field.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
4-12
Defining Flexfields

Defining Context-Sensitive Segments


.....................................................................................................................................................

Defining Context-Sensitive Segments

Defining Context-Sensitive Segments


(N)>Application>Flexfield>Descriptive>Segments>(M) Query>Find
> select flexfield>Segments
Define all appropriate context-sensitive segments using the same procedure you used
when defining global segments:
Specify all necessary segment attribute information.
Enable the segment.
Define any validation information.
Modify the display size if necessary.
Freeze and compile the definition.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
4-13

Lesson 4: Defining Descriptive Flexfields


.....................................................................................................................................................

Practice 4-2
Practice Overview
Defining a descriptive flexfield having different
contexts

Copyright Oracle Corporation, 1996. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions to this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
4-14
Defining Flexfields

Defining Values for a Value Set


.....................................................................................................................................................

Defining Values for a Value Set

Defining Values
(N)>Application>Validation>Values>(T) List of Values>Select value set
Define values for any independent or dependent value sets assigned to any segments of
the descriptive flexfield.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
4-15

Lesson 4: Defining Descriptive Flexfields


.....................................................................................................................................................

Defining Descriptive Flexfields: Summary


Summary
Define flexfield level attributes.
Define global segments to the Global Data
Elements structure.
Define a reference or context field if using different
contexts.
Define a structure for each context containing the
segments appropriate for that context.
Freeze and compile the finished definition.

Copyright Oracle Corporation, 1996. All rights reserved.

Summary
Once you have planned the structure of your descriptive flexfield, the actual definition
process is straightforward. If this flexfield uses any new value sets, plan those first.
Define the flexfield header attributes. Define all global segments for the Global Data
Elements structure.
If you are using multiple contexts, define either a reference field on the base window,
or a context field on the flexfield itself to control which context structure appears. For
each context, define a structure containing the segments appropriate for that context.
When you have finished defining all your structures and segments, freeze your
definition and compile the flexfield. This makes the flexfield available for others to
use.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
4-16
Defining Flexfields

5
.................................

Planning Key Flexfields

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Objectives
Objectives
After completing this lesson, you should be able to
do the following:

Explain intelligent keys and provide examples

Explain the purpose of flexfield qualifiers

Design a key flexfield structure

Identify key flexfields that are required by Oracle


Applications
Use optional key flexfield features where
appropriate

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Topics
At the end of this lesson, you should be able to:
Explain intelligent keys and provide examples
Identify key flexfields that are required by Oracle Applications
Explain the purpose of flexfield qualifiers
Use optional key flexfield features where appropriate
Design a key flexfield structure

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-2
Defining Flexfields

Planning Key Flexfields: Overview


.....................................................................................................................................................

Planning Key Flexfields: Overview


Overview

Key flexfields as intelligent keys


Key flexfields use of code combinations
Key flexfields qualifiers
Additional key flexfield options

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Overview
Key flexfields create unique identifiers for use internally by Oracle Applications. The
combinations of values for the segments of a key flexfield identify entities. These code
combinations are used throughout Oracle Applications.
Depending on which key flexfield you are defining, you might need to also specify
flexfield qualifiers and segment qualifiers. These are discussed in the lesson.
Finally, there are several optional features of key flexfields you may wish to
implement.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-3

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Using Key Flexfields in Oracle Applications


Intelligent Keys

Account number
Asset number

Job code

Serial number

Copyright Oracle Corporation, 1998. All rights reserved.

Building Intelligent Keys for Oracle Applications


Intelligent keys are multipart key values in which each part of the key contains
meaningful information. You use key flexfields to build the intelligent keys required by
Oracle Applications.
Since key flexfields are integrated with the internal processing of Oracle Applications,
there are more requirements for the structure and content of key flexfields than was the
case with descriptive flexfields.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-4
Defining Flexfields

Requirements for Key Flexfields


.....................................................................................................................................................

Requirements for Key Flexfields


Key Flexfields Dual Purpose

Collect information required by Oracle


Applications

Provide users with ability to customize


structure and appearance

Copyright Oracle Corporation, 1998. All rights reserved.

Requirements for Key Flexfields


Key flexfields have a dual purpose. They must collect information required by Oracle
Applications and still allow for user customization.

y
l
n

O
e

Provide Required Information


Provide information needed for reports and processing. For some applications,
particular items of information must be identified within the flexfield. For example,
Oracle General Ledger requires the cost center segment of the Accounting
flexfield.
Build unique IDs for use by the applications while giving users meaningful codes.

&
l
a

I
A
O

s
U

Provide Customization Capability


Tailor the flexfield to the companys business practice instead of changing the
practice to fit the flexfield.
Retain the information the company already keeps.

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-5

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Key Flexfields Used by Oracle Applications


Oracle Applications
Key Flexfields
Asset
Category
Location

Oracle
Assets
Oracle
General
Ledger

Oracle
Payroll

Sales Tax Location


Oracle
Receivables Territory

Accounting

Account Aliases
Item Catalogs
Item Categories
Sales Orders
Stock Locators
System Items

Oracle
Inventory

Bank Details
Cost Allocation
People Group

Grade

Oracle
Job
Human
Personal Analysis
Resources
Position
Soft Coded

Copyright Oracle Corporation, 1998. All rights reserved.

Key Flexfields Used by Oracle Applications


The slide shows the key flexfields used by Oracle Applications. The number of key
flexfields is significantly smaller than the number of descriptive flexfields.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-6
Defining Flexfields

Implementing Key Flexfields: Procedure


.....................................................................................................................................................

Implementing Key Flexfields: Procedure


Implementing Key Flexfields

Identify the target flexfield, the information required


by Oracle Applications, and any qualifiers.

Plan the flexfield structure, behavior, and


appearance.

Define the key flexfield structures.


Define any value sets required and their values.
Define security rules when appropriate.
Define cross-validation rules when appropriate.
Define shorthand aliases as needed.

Copyright Oracle Corporation, 1998. All rights reserved.

Implementing Key Flexfields: Procedure


The slide shows the steps involved in implementing a key flexfield. The first two steps
are covered in this lesson. The remaining steps are covered in the remainder of the
course.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-7

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Practice 5-1
Practice Overview

Distinguishing between key and descriptive


flexfields

Identifying key flexfields used by Oracle


Applications

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions to this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-8
Defining Flexfields

Key Flexfield Structures


.....................................................................................................................................................

Key Flexfield Structures


Key Flexfield Structures
Business A

Business B
_____Account Entry __

_____Account Entry __
10

Corporation
Subsidiary
Division

Company

203

Division

3003

Department

025

Account

203

Department
Account

10
203
3003
025

Copyright Oracle Corporation, 1998. All rights reserved.

Key Flexfield Structures


Although it is possible for a key flexfield to use multiple structures, it is much less
typical than with descriptive flexfields. Most key flexfields use only one structure.
However, key flexfields still allow the user to control the structure of the flexfield. For
example, the slide shows two different accounting flexfield structures defined by two
different businesses. Each business defines an accounting flexfield that reflects its
operating structure
While in many cases the user has control over which descriptive flexfield structure is
used, with key flexfields the application usually determines the correct structure with
which to function. For example, Oracle General Ledger determines which accounting
flexfield structure to use from the profile option Set of Books.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-9

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Key Flexfield Code Combinations


Code Combinations
Business A

Business B

_____Account Entry __

_____Account Entry __

10

Corporation
Subsidiary
Division

Company

203

Division

3003

Department

025

Account

203

Department
Account

10
203
3003
025

10-203-3003-025

10-203-3003-025-203

Copyright Oracle Corporation, 1998. All rights reserved.

Key Flexfield Code Combinations


Key flexfields typically consist of several segments. The values provided by these
segments make up the code combinations that function as intelligent keys for use by
Oracle Applications.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-10
Defining Flexfields

Storing Code Combinations


.....................................................................................................................................................

Storing Code Combinations


Storing Code Combinations
_____Account Entry __
Company
Division

10
(Code combination)

203

10 - 203 - 3003 - 025


Department
Account

3003
025

Code Combinations Table


SEGMENT1

10

SEGMENT2

SEGMENT3

SEGMENT4

203

3003

025

Copyright Oracle Corporation, 1998. All rights reserved.

Storing Code Combinations


Each flexfield stores its code combinations in a database table called a code
combinations table. In the combinations table, there is one column for every key
flexfield segment. These columns are all named SEGMENTn, where n is a number.
These columns function much like the ATTRIBUTE columns do for descriptive
flexfields. As with the ATTRIBUTE columns, there is a set number of SEGMENT
columns available for each key flexfield. You assign a key flexfield segment to a
particular SEGMENT column when you define the key flexfield.
Each row in the combinations table (that is, each unique combination of segment
values) is identified by a unique ID value stored in a unique ID column. This column
functions as the primary key for the combinations table. For key flexfields that have
multiple structures, there is also a structure ID column.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-11

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Using Key Flexfield Qualifiers


Key Flexfield Qualifiers

Business Y
Corp

Business Z

10

Corp

10

Balancing
Sub

203

Div

3003

Dept

3003

Dept

025

Acct

025

Acct

203

Div

segment

203

Copyright Oracle Corporation, 1998. All rights reserved.

Key Flexfield Qualifiers


Both descriptive flexfields and key flexfields allow the user to design the flexfield
structures and their segments. With descriptive flexfields, neither the information
gathered nor the way the information is structured is used internally by Oracle
Applications. Key flexfields, however, are different.
Oracle Applications use certain pieces of information collected by some key flexfield
segments internally. For example, Oracle General Ledger needs to know which
segment in the Accounting flexfield to use for balancing operations. But since the
location of the balancing segment in the accounting flexfield can be customized, the
application must have a way of locating the segment it needs within any accounting
flexfield structure.
Being able to locate particular segments in a key flexfield structure is the purpose for
qualifiers. A qualifier is a label attached to a particular key flexfield segment so it can
be located by the application requiring its information.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-12
Defining Flexfields

Types of Key Flexfield Qualifiers


.....................................................................................................................................................

Types of Key Flexfield Qualifiers


Types of Qualifiers
Flexfield qualifiers:

(Balancing

identify a particular segment

10

203

segment)

025

3003

Segment qualifiers:

(Allow

identify a particular value

posting)

Copyright Oracle Corporation, 1998. All rights reserved.

Types of Key Flexfield Qualifiers


Qualifiers allow the user to retain the ability to customize the structure of the flexfield
while still allowing the Oracle Application to find the information it needs to process.
There are two types of qualifiers:
Flexfield qualifiers identify a segment in a flexfield.
Segment qualifiers identify a value in a segment.
The slide shows both types of qualifiers assign to an accounting flexfield combination.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-13

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Flexfield Qualifiers
Flexfield Qualifiers
Business Y
Cost Center

Corp: 10

segment

Sub

203

Div

3003

Dept

025

Balancing

Acct

300

segment

Account
segment
Copyright Oracle Corporation, 1998. All rights reserved.

Flexfield Qualifiers Identify Key Flexfield Segments


The flexfield asks each segment a yes/no question.
Flexfield qualifiers may be unique, global, and required:
Unique: Is this the segment that this flexfield can have only one of?
Required: Is this the segment this flexfield must have to do its work?
Global: Is this a segment? Global qualifiers exist as carriers for segment
qualifiers.

y
l
n

O
e

I
A
O

s
U

Assigning Flexfield Qualifiers to Segments


Global qualifiers need not be assigned since they apply automatically to every
segment in the flexfield.
Assign flexfield qualifiers while defining segments.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-14
Defining Flexfields

Key Flexfields Using Qualifiers


.....................................................................................................................................................

Key Flexfields Using Qualifiers


Oracle Application Flexfield Qualifiers
General Ledger

Accounting flexfield

Oracle Assets

Location flexfield
Asset Category flexfield

Oracle Human
Resources

SoftCoded Key flexfield

Oracle Payroll

Cost Allocation flexfield

Oracle Accounts

Sales Territory flexfield

Receivable
Copyright Oracle Corporation, 1998. All rights reserved.

Key Flexfields Using Qualifiers


The slide shows the key flexfields that use qualifiers and the Oracle Application that
uses each key flexfield.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-15

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Segment Qualifiers
Segment Qualifiers
Business Y
Corp

10

Sub

203

Account

Div

3003

list

Dept

025

200 - Cash

Acct

300

300 - Revenue

Budgeting allowed:Y
Posting allowed:Y
Account type: Asset

400 - Payroll

Budgeting allowed:N
Posting allowed:N
Account type: Liability

Budgeting allowed:N
Posting allowed:N
Account type: Revenue

Copyright Oracle Corporation, 1998. All rights reserved.

Identifying Values in Flexfield Segments with Segment Qualifiers


A segment qualifier is similar to the segment asking each value the question, What
type of value are you?
For example, the account number 300 may be used within a company as a revenue
account.
Use the following segment qualifiers with the accounting flexfield:
Allow budgeting
Allow posting
Account Type: Asset, Expense, Liability, Ownership/Stockholders Equity, or
Revenue

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-16
Defining Flexfields

Other Key Flexfield Features


.....................................................................................................................................................

Other Key Flexfield Features


Other Key Flexfield Options

Dynamic insertion of new values


Cross-validation of segment value combinations
Security on value access
Aliases to speed data entry

Copyright Oracle Corporation, 1998. All rights reserved.

Other Key Flexfield Features


Some other capabilities of key flexfields are available for use. You should consider
using these capabilities where appropriate:
Dynamic insertion of new values
Cross-validation of segment value combinations
Security on values accessible
Aliases to speed entry of frequently used value combinations

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-17

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Using Dynamic Insertion


Allowing Dynamic Insertion
Indirectly (from display window)
Sales
Table

__ Sales Information _____________________


Transaction

3987

Description

CC

Jane Doe

Customer
Item

Payment Type:

COM-876-LTN

[]

Computer Monitor Tan

(Foreign key)

Directly (from entry window)


__ Part Number _________
Category

Computer

COM

Item

876

Monitor

Color

LTN

Light tan

Code
Combinations
Table

Copyright Oracle Corporation, 1998. All rights reserved.

Allowing Dynamic Insertion of New Code Combinations


Key flexfield code combinations appear on many types of windows. Typically, Oracle
Applications use a particular form (called a combination form) for directly entering
the new code combinations. These same code combinations then be displayed by
many other windows. On these related windows, however, the fields are typically readonly and not updatable. Therefore new code combinations cannot be entered from
these forms.
If you allow dynamic insertion, you can enter new code combinations from such
display windows as well as from regular entry windows.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-18
Defining Flexfields

Use Cross-Validation
.....................................................................................................................................................

Use Cross-Validation
Cross-Validating Values
Country Value Set
USA United Stated
UK United Kingdom

Asset
Location
Flexfield

State Value Set

City Value Set

CA California
NY New York
TX Texas

Los Angeles
London
New York
Houston

__ Asset Location _____________


Country
State
City

UK

United Kingdom

CA

California

HOUSTAN

Houston California United Kingdom not allowed

Copyright Oracle Corporation, 1998. All rights reserved.

Validating the Combinations of Segment Values to Control Data Integrity


For key flexfields with multiple segments, you can define rules to cross-check value
combinations entered. In this way, you can keep illogical or unallowed combinations
of segment values from being entered.
The slide shows an illogical combination of values for the Asset key flexfield being
disallowed.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-19

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Using Value Security


Using Value Set Security
Category Value Set
without security
COM

COM
FURN
APPL

Description:
Description:
Item Number
Category
Item

Category Value Set


with security

Color

COM

COM
FURN
APPL

Weight

(EXCLUDE COM)

Copyright Oracle Corporation, 1998. All rights reserved.

Using Value Security


You can specify who can use particular segment values by defining flexfield value
security rules.
For example, the slide shows a security rule disallowing use of the value COM from
the Category value set. The unsecured Category value set allows used of this value.
Define the rules for a particular value set and then associate the rule with the
appropriate responsibility.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-20
Defining Flexfields

Using Shorthand Aliases


.....................................................................................................................................................

Using Shorthand Aliases


Using Shorthand Aliases
Sales Information
3754

Transaction

Big Manufacturing

Custpmer

1211 State

Address
City

Dallas

State TX

Zip

75219

Country USA

COM-876-LTN

Item

Item Alias
Description:
Tan Monitor COM-876-LTN
Hard Drive COM-535-15G
Laser Printer COM-788-630

Part Tan Monitor

needs work

List
of
Aliases

Copyright Oracle Corporation, 1998. All rights reserved.

Using Shorthand Aliases to Speed Data Entry


Allow users to enter data faster and more easily with shorthand aliases. An alias is a
label for a particular combination of key flexfield segment values. Give aliases to
combinations that are entered frequently. Then just enter the alias into the flexfield to
automatically populate the values for the segments.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-21

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Planning Decisions
Planning Decisions

Multiple structures?
Resources available?
Qualifiers required?
Dynamic inserts?
Cross validation?
Shorthand aliases?
Value checking?
Value security?

Copyright Oracle Corporation, 1998. All rights reserved.

Planning Decisions
Application Question
Does the application support different
segment structures?
How many segment columns are
available?
What flexfield qualifiers does this
flexfield use or need?
Are dynamic inserts feasible?
Should cross-validation be enabled?
Should shorthand flexfield entry be
enabled?
Which value sets are available?
Which segments should use flexfield
value security?

e
l
c

O
e

What segments are needed?

s
U

Do segments correspond to each needed


qualifier?
Who can create new combinations?
Is protection from invalid combinations
needed?
Are many combinations used repeatedly?

&
l
a

rn

e
t
In

y
l
n

Related Question
How many structures are needed?

I
A
O

How should the segments be validated?


Are some segment values privileged or
applicable only for some users?

a
r
O

.....................................................................................................................................................
5-22
Defining Flexfields

Designing the Flexfield


.....................................................................................................................................................

Designing the Flexfield


Design the Key Flexfield Layout

Title

SalesDescription:
Information
Description:

Order

Category COM

Structure

Item

876

Color

LTN

of
segments

Segment separator

Prompts

Value sets
COM

Values

FURN
APPL

Copyright Oracle Corporation, 1998. All rights reserved.

Designing Key Flexfield Layout


Design the structures needed and the segments for each structure:
Identify the structure titles.
Plan the number and order of segments.
Identify the segment separator.
Determine the value sets and values to be used.
Plan the window prompts.

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-23

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Designing the Segments


Designing Segments

Enabled or Displayed
Required
Validated
Secured

Copyright Oracle Corporation, 1998. All rights reserved.

Designing Key Flexfield Segments


Decide how each segment of the key flexfield should behave and what values to allow
in each segment.

y
l
n

O
e

Enabled or Displayed Can users see this segment? Disabled segments are not
displayed. If the segment does not display, use a default value to populate it.

s
U

Required Can users leave the segment without entering a value? Most key flexfield
segments require a value.

I
A
O

Validation Most key flexfield segments provide a list of values. Use a predefined
value set, or design a new one for this segment. Not using a value set is equivalent to
using a validation type of None, character format, width same as underlying segment
column, uppercase allowed, and no right justification or zero fill.

&
l
a

Value Security

n
r
te

Should security rules for the value set apply to this segment?

n
I
e

Related Segments Link segments with ranges of Low and High to enforce a
relationship between them.

l
c
a

r
O

.....................................................................................................................................................
5-24
Defining Flexfields

Specifying Segment Defaults


.....................................................................................................................................................

Specifying Segment Defaults


Specifying Default Values

Default Type

Default Value

Constant

Any literal value

Current Date

Current time

Current time

Current time or current date/time

Field

Default Value field value

Profile

Value of profile in Default Value

Segment

Value in prior segment

SQL Statement

Result of SQL query

Copyright Oracle Corporation, 1998. All rights reserved.

Specifying Segment Defaults


Default
Type
Constant
Current Date
Current Time

Default Value

Example

The constant specified.


The data at the time of entry.
The Date/Time at the time of entry.

USA

Field

The value in the specified field. Use


the format block:field
The value of the specified profile
option. Use the application name of
the profile option.
The value returned by the specified
SQL statement. The statement must
return a single value. $PROFILES$
and $FLEX$ can be used in the
statement.
The value returned by the specified
previous segment.

Profile

&
l
a

SQL
Statement

Segment

l
c
a

n
I
e

r
O

n
r
te

I
A
O

y
l
n

Result

O
e

s
U

ORDER:LINE

USA
MAY 01, 1998
14:30:00
MAY 01, 1998
3

GL_SET_OF_
BOOKS_ID

101

SELECT
NAME FROM
EMP WHERE
JOB=CEO

Jones

Company

01

.....................................................................................................................................................
Defining Flexfields
5-25

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Planning Values
Planning Key Flexfield Values

Plan values for independent and independent


value sets.

Group values by ranges to allow easier security


and cross-validation.

Identify values to be used with segment qualifiers.

Copyright Oracle Corporation, 1998. All rights reserved.

Planning Values for Use with Key Flexfields


Plan the values for the independent and dependent value sets created for this key
flexfield. Choose values logically and systematically. Grouping values together
logically makes defining security and validation rules much easier.

y
l
n

O
e

Oracle General Ledger Values Information


Certain applications (especially Oracle General Ledger) require special handling of
values:
Oracle General Ledger applications require that segment qualifiers be assigned to
some values used by the Accounting flexfield.
Oracle General Ledger applications can create hierarchies of values using rollup
groups and parent-child relationships for processing and reporting.
The Oracle General Ledger courses provide more details.

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-26
Defining Flexfields

Practice 5-2
.....................................................................................................................................................

Practice 5-2
Practice Overview

Designing a key flexfield

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
5-27

Lesson 5: Planning Key Flexfields


.....................................................................................................................................................

Planning Key Flexfields: Summary


Summary

Key flexfields are required to pass information to


Oracle Applications.

Some key flexfields have qualifiers that must be


defined.

Key flexfields have additional optional features


that can be used when appropriate.

Copyright Oracle Corporation, 1998. All rights reserved.

Summary
Key flexfields are used to build identifiers required by Oracle Applications. Key
flexfields allow the user to provide information needed by Oracle Applications while
still structuring that information to reflect a particular business environment.
Key flexfields have additional requirements and options that descriptive flexfields do
not have:
By using qualifiers in key flexfields you can require that certain segments and
certain values be identified for processing.
You can allow security checking and integrity checking.
You can define aliases to speed data entry.
You can enter key flexfield value combinations from different windows, if allowed.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
5-28
Defining Flexfields

6
.................................

Defining Key Flexfields

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Lesson 6: Defining Key Flexfields


.....................................................................................................................................................

Objectives
Objectives
After completing this lesson, you should be able to
do the following:
Select the appropriate key flexfield to define
Define structure information for the key flexfield
Define segment attributes as planned
Define flexfield qualifiers
Define segment qualifiers
Implement optional features as needed

Copyright Oracle Corporation, 1996. All rights reserved.

Lesson Topics
At the end of this lesson, you should be able to:
Select the appropriate key flexfield to define
Define structure information for the key flexfield
Define segments attributes as planned
Define flexfield qualifiers
Define segment qualifiers
Implement optional features as needed

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
6-2
Defining Flexfields

Defining Key Flexfields: Overview


.....................................................................................................................................................

Defining Key Flexfields: Overview


Overview
Defining a key flexfield structure
Specifying flexfield qualifiers if needed
Specifying segment qualifiers if needed
Using optional key flexfield features

Copyright Oracle Corporation, 1996. All rights reserved.

Lesson Overview
The previous lesson discussed the procedure for planning a key flexfield. This covers
the mechanics of the definition process.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
6-3

Lesson 6: Defining Key Flexfields


.....................................................................................................................................................

Defining Key Flexfields


Definition Procedure
Define new value sets if needed.
Define the key flexfield structure.
Define the structure segments, including qualifiers.
Freeze and compile definition.
Define value set values, including qualifiers.

Copyright Oracle Corporation, 1996. All rights reserved.

Defining Key Flexfields: Procedure


Use the following procedure to define a key flexfield:
Define new value sets if needed.
Define key flexfield structure.
Define the structure segments, including qualifiers.
Freeze and compile definition.
Define value set values, including any qualifiers.

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
6-4
Defining Flexfields

Defining Value Sets


.....................................................................................................................................................

Defining Value Sets

Defining Value Sets


(N)>Application>Validation>Sets
Define a value set for each segment of the key flexfield.
Use independent, dependent, or table-validated value sets to use a pop-up list of
values.
Define the maximum size to be no larger than the size of the underlying table segment
column.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
6-5

Lesson 6: Defining Key Flexfields


.....................................................................................................................................................

Accessing the Key Flexfield Definition

Accessing the Key Flexfield Definition


(N)>Application>Flexfield>Key>Segments>(M) Query>Find
Use the Key Flexfields Segments window to find the flexfield definition you want to
modify.
Before you can modify the definition, you must unfreeze it.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
6-6
Defining Flexfields

Specifying Flexfield Behavior


.....................................................................................................................................................

Specifying Flexfield Behavior

Specifying the Key Flexfield Behavior


(N)>Application>Flexfield>Key>Segments

y
l
n

Segment Separator Specify a segment separator character. Segment separators are


especially important for key flexfields since their values are often displayed
concatenated.
Freeze Rollup Groups

O
e

Rollup groups are used by the Accounting flexfield.

s
U

Allow Dynamic Inserts This allows new key value combinations to be dynamically
created and inserted into the table.
Cross-Validate Segments
combinations.

I
A
O

This enables cross-checking of segment value

&
l
a

Enabled This enables shorthand entry of frequently used value combinations.


When you have defined the flexfield level attributes, click the Segments button to
continue defining individual segments for this structure.

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
6-7

Lesson 6: Defining Key Flexfields


.....................................................................................................................................................

Defining Segment Attributes

Defining Segment Attributes


(N)>Application>Flexfield>Key>Segments>(B )Segments
Use the Segment Summary window to define most of the segment attributes.
Number

This specifies the sequence in which the fields will appear on the window.

y
l
n

Name The name by which this segment is know within Oracle Applications. Name
the segment intuitively. Other segments may refer to this one for validation
information. Also, the view generated uses the segment names for its column names.
Window Prompt
the default.

O
e

s
U

The prompt that will appear on the window. The segment name is

I
A
O

Column Specify the SEGMENT column in the underlying base table that contains
this segments data. A pop-up list shows the SEGMENT columns that are still
available for use.
Displayed

&
l
a

n
r
te

If you choose to not display a segment, specify a default to populate it.

Enabled This flags the segment as available for use.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
6-8
Defining Flexfields

Defining Validation and Size Attributes


.....................................................................................................................................................

Defining Validation and Size Attributes

Defining Validation and Size Attributes


(N)>Application>Flexfield>Key>Segments>(B ) Segments>(B) Open
Validation Information
Use the Validation block fields to specify value set information.
Choose a predefined value set with a list of values or design one for this particular
segment with the Value Sets Window.
Specify default information if you need to populate the segment with a default
value.
Determine whether security rules should apply to this value set for this segment.

y
l
n

O
e

I
A
O

s
U

Size Specifications
Display Size determines the field size on the flexfield. Specify a display size the
same as the maximum segment size to avoid scrolling.
Keep prompts small for neater reports.
Click the Flexfield Qualifiers button to determine whether this flexfield has any
qualifiers to be assigned.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
6-9

Lesson 6: Defining Key Flexfields


.....................................................................................................................................................

Defining Segment Qualifiers

Defining Segment Qualifiers


(N)>Application>Flexfield>Key>Segments>(B) Segments>Open>
(B) Flexfield Qualifiers
Assign qualifiers to segments as appropriate for this flexfield. Not all flexfields use
qualifiers with segments. The Accounting flexfield is an important user of segment
qualifiers.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
6-10
Defining Flexfields

Freezing and Compiling the Definition


.....................................................................................................................................................

Freezing and Compiling the Definition

Freezing and Compiling the Definition


(N)>Application>Flexfield>Key>Segments
Save after freezing to automatically compile the flexfield definition.
Submit the request to build the structure view by freezing; submit the request to
rebuild the flexfield view by closing the window.
Freeze and compile after making any changes to the definition. Changes take place
immediately.
You see your changes immediately. Other users must exit the system or change
responsibilities.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
6-11

Lesson 6: Defining Key Flexfields


.....................................................................................................................................................

Defining Value Set Values

Defining Value Set Values


(N)>Application>Validation>Values>(T)List of Values>select value set
>(B)OK>(B)Find
Create values for the independent and dependent value sets created for the new key
flexfield structure. Access the value sets by specifying the flexfield segments using
them.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
6-12
Defining Flexfields

Defining Value Qualifiers


.....................................................................................................................................................

Defining Value Qualifiers

Defining Value Qualifiers


(N)>Application>Validation>Values>(T)List of Values>select value set
>(B)OK>(B)Find>(A)Hierarchy, Qualifiers>tab to Qualifiers field
Specify additional qualifiers at the value level when appropriate. For example, Allow
Budgeting is an Accounting flexfield segment qualifier.To define segment qualifiers for
Accounting flexfield values, change to the Hierarchy, Qualifiers alternate region and
click in the Qualifiers field. This opens the Segment Qualifiers window.
Whenever possible do not change a value, change its description. If reuse is not
possible, disable unused values, do not delete them.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
6-13

Lesson 6: Defining Key Flexfields


.....................................................................................................................................................

Defining Value Hierarchies

Defining Value Hierarchies


(N)>Application>Validation>Values>(T)List of Values>select value set
>(B)OK>(B)Find>(A)Hierarchy, Qualifiers>(B)View Hierarchies
Use the special value hierarchy information to define child value ranges and rollup
groups for the Accounting Flexfield.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
6-14
Defining Flexfields

Practice 6-1
.....................................................................................................................................................

Practice 6-1
Practice Overview
Defining an accounting flexfield

Copyright Oracle Corporation, 1996. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
6-15

Lesson 6: Defining Key Flexfields


.....................................................................................................................................................

Defining Key Flexfields: Summary


Defining Key Flexfields
Summary
Define your key flexfield according to your
previously developed plan.
Define flexfield qualifiers and segment qualifiers if
required by the flexfield.
Use key flexfield options where appropriate.

Copyright Oracle Corporation, 1996. All rights reserved.

Summary
The procedure for defining a key flexfield is similar to that for defining a descriptive
flexfield. However, there are additional attributes for key flexfields that may also need
to be defined. Additionally, key flexfields have several optional features that should be
implemented where appropriate.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
6-16
Defining Flexfields

7
.................................

Using Flexfield Security

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Lesson 7: Using Flexfield Security


.....................................................................................................................................................

Objectives
Objectives
After completing this lesson, you should be able to
do the following:

Explain how flexfield security is accomplished


Identify which flexfields are candidates for security
Design a security plan
Control interactions between security rules
Define security rules
Assign security rules
Enable security

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Objectives
At the end of this lesson, you should be able to:
Explain how flexfield security is accomplished
Identify which flexfields are candidates for security
Design a security plan
Control interactions between security rules
Define security rules
Assign security rules.
Enable security

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
7-2
Defining Flexfields

Using Flexfield Security


.....................................................................................................................................................

Using Flexfield Security


Overview

Using flexfield security


Planning security rules
Implementing security

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Aim
This lesson covers the use of user-defined security rules to control flexfield access to
data.
You create and tie security rules to a value set to specify which entries in a list of
values are available to a user of a specific responsibility. This allows you to control
that users access to data.
You create security rules by defining inclusion or exclusion statements. You combine
these statements to create a security rule. You must carefully consider the interaction
of multiple rules when planning your security.
The actual implementation of security rules is very straightforward.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
7-3

Lesson 7: Using Flexfield Security


.....................................................................................................................................................

Controlling Access to Flexfield Values


Securing Value Set Access

Value
Sets
COM
ELEC

Forms

Responsibilities

Users

Electronics Sales

Warranty
Terms

JDoe
Electronics_Only
security rule

RGarza

VEHC
FURN
APPL

Delivery
Terms

Hshld_Goods_Only
security rule

TNozaki
CChang

Household Sales

Item Type
Value Set

Copyright Oracle Corporation, 1998. All rights reserved.

Specifying Value Security Rules


Responsibilities are used within Oracle Applications to specify what operations a user
can perform. Responsibilities limit the forms and reports a user can access.
Responsibilities are equivalent to job descriptions and therefore usually map onto data
access privileges as well. Users of the same responsibility generally need to see the
same data.

y
l
n

O
e

I
A
O

s
U

Security Rules You can define security rules to restrict users from using flexfields to
enter or display certain data. Once you associate these rules with the appropriate
responsibility, all users of that responsibility are restricted to the values allowed by
that responsibilitys security rule.

&
l
a

Example In the example on the slide, a company has assigned its sales force to
different responsibilities according to the type of items they sell. Two of these
responsibilities are Electronic Sales and Household Sales. A value set called Item
Type lists all the types of items the company sells. In this case, you can easily define a
security rule to restrict the users of a particular responsibility from accessing item
types not appropriate for their responsibility. For example the Hshld_Goods_Only
security rule allows access only to the FURN and APPL item types.

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
7-4
Defining Flexfields

Accomplishing Value Set Security


.....................................................................................................................................................

Accomplishing Value Set Security


Security and Value Sets
Flexfield security restricts values within a value set:

Value sets used by key flexfields segments,


descriptive flexfield segments, and request
parameter are securable.

Only Independent, Dependent, or Tablevalidated


value sets are securable.

List of values displays only approved values.

Security does not restrict nonflexfield data entry.

Some forms allow display of restricted values but


not update.

Copyright Oracle Corporation, 1998. All rights reserved.

How Value Security Works


You can apply security to the value sets used by key flexfield segments, descriptive
flexfields segments, and request parameters.
Security rules have no effect for segments or parameters that use value sets with a
validation type of None, Special, or Pair or for segments without a value set.
Security rules provide data entry and querying control. Once the security rule is
associated with a responsibility, a list of values displays only the values
appropriate to that responsibility.
Some forms permit querying of restricted values but do not permit updating of
restricted values.
Security rules apply only to data entered through the forms on which the flexfield
appears. They do not apply to data created or copied automatically by the
applications themselves. Therefore, be careful when loading data without using
Oracle Application forms.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
7-5

Lesson 7: Using Flexfield Security


.....................................................................................................................................................

Security Rule Elements


Constructing Security Rules

Element

From:

To:

INCLUDE

beginning
segment value

ending
segment value

EXCLUDE

beginning
segment value

ending
segment value

Copyright Oracle Corporation, 1998. All rights reserved.

Security Rule Elements


Security rules are defined in terms of the values in the value set.
Certain values or value ranges are either included or excluded by a rule.
The same rule can specify both values to be included as well as different values to
be excluded.
By default all values are excluded unless explicitly included, and exclusion tests
override inclusion tests.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
7-6
Defining Flexfields

Specifying Acceptable Values


.....................................................................................................................................................

Specifying Acceptable Values


Specifying Acceptable Values
ACCOUNT TYPE value set
Value

Description

1000
1110
1120
1200
1220
1310

Total Assets
Cash
International Cash
Accounts Receivable
Other Receivables
Interest Receivable

CASH ACCOUNTS ONLY security rule


Include

1101 to 1199

Copyright Oracle Corporation, 1998. All rights reserved.

Specifying Security Rules


Whenever possible, restrict access to ranges of values. Plan values carefully to make
security rules easy to define.

y
l
n

O
e

Example Assume you have a value set ACCOUNT TYPE. Since the accounts are
distinguished by the account type number, you can define a rule including all account
types in the 1100 account type number series. This rule can later be assigned to an
appropriate responsibility to restrict users from accessing anything but cash account
types.

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
7-7

Lesson 7: Using Flexfield Security


.....................................................................................................................................................

Combining Rule Elements


Using Multiple Clauses

WESTERN REGION ONLY security rule


INCLUDE
INCLUDE
INCLUDE

CA
OR
WA

CA
OR
WA

INTEREST ACCOUNTS ONLY security rule


INCLUDE

000.00.200.00

000.00.299.00

Copyright Oracle Corporation, 1998. All rights reserved.

Using Multiple Elements


As shown on the previous slides, you define security rules in terms of exclude or
include clauses. You can combine these clauses as necessary to effect the restrictions
you need. A security rule can therefore consist of one clause or many.
You can apply security rules to more than one responsibility, and a single
responsibility can have more than one security rule associated with it. It is not unusual
for several responsibilities to share a broadly defined security rule with some of the
responsibilities also having more restrictive security rules.

y
l
n

O
e

I
A
O

s
U

Example The examples on the slide show two rules: one containing multiple clauses
and one consisting of only one clause.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
7-8
Defining Flexfields

Control Rule Interactions


.....................................................................................................................................................

Control Rule Interactions


Rules with Overlapping Values
Zip Code
One Rule, Three Clauses
INCLUDE 84200 to 84500

(Union)

INCLUDE 84400 to 84700


EXCLUDE 84534 to 84534

84201
84312
84423
84534

84678
84789

Three Rules
84201
84312

INCLUDE 84200 to 84600

(Intersection) 84423
84534
84678
84789

INCLUDE 84400 to 84700


EXCLUDE 84534 to 84534

Copyright Oracle Corporation, 1998. All rights reserved.

Interaction of Security Rules and Elements


Since a responsibility can have multiple security rules for the same value set, it is
important to consider the interaction of security rules.
In a single security rule:
Everything is excluded unless explicitly included.
The clauses have a logical OR relationship to one another so that the result is a
union of all included values.
If a value satisfies the criteria for both an include and an exclude, it is excluded.
In multiple security rules:
More rules restrict more not less. All values must pass all security rules to be
acceptable.
The different rules have a logical AND relationship to one another so that the
intersection of the rules included values applies.
If a value satisfies the criteria for both an include and an exclude, it is excluded.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

Example The slide shows two examples of security rules operating on a value set
consisting of zip code values. The values approved by the different rules are shown in
italics.

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
7-9

Lesson 7: Using Flexfield Security


.....................................................................................................................................................

Rules Without Overlapping Values


Rules Without Overlapping Values
Zip Code
One Rule, Three Clauses
INCLUDE 84200 to 84400

84201
84312
(Union)

INCLUDE 84500 to 84800


EXCLUDE 84534 to 84534

84423
84534

84678
84789

Three Rules
84201
84312
(Intersection) 84423
84534
84678
84789

INCLUDE 84200 to 84400


INCLUDE 84500 to 84800
EXCLUDE 84534 to 84534

Copyright Oracle Corporation, 1998. All rights reserved.

Rule Results Without Overlapping Ranges


If the values specified by the clauses do not overlap, the result sets are different:
The result set for a responsibility with a single security rule with multiple clauses
contains all values that satisfy any of the include clauses. Any excluded values are
removed.
The result set for a responsibility with multiple rules, contains no members if there
are no values that satisfy all the rules.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
7-10
Defining Flexfields

Practice 7-1
.....................................................................................................................................................

Practice 7-1
Practice Overview

Explaining the connection between value sets,


security rules, and responsibilities

Determining security rule interactions


Planning security rules

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
7-11

Lesson 7: Using Flexfield Security


.....................................................................................................................................................

Implementing Value Set Security


Implementing Flexfield Security
1.

Enable security on the value set.

2.

Enable security on the flexfield segments and


request parameters that use this value set.

3.

Define your security rule.

4.

Assign your security rule to a responsibility.

Copyright Oracle Corporation, 1998. All rights reserved.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
7-12
Defining Flexfields

Enabling Security on the Value Set


.....................................................................................................................................................

Enabling Security on the Value Set

Value Sets
(N)>Application>Validation>Set>(M)Query>Find
To enable security on a value set select the Security Available checkbox. You must
enable security on the value set before you attempt to define security rules for that
value set.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
7-13

Lesson 7: Using Flexfield Security


.....................................................................................................................................................

Enabling Segment Security

Segments (Accounting Flexfields)


(N)>Application>Flexfield>Key>(M)Query >Find>Segments>Open
There are many paths to the window shown above. The path shown is available
under the System administrator responsibility.
Select the Enable Security checkbox to turn security on for a flexfield segment.
Compile the flexfield structures after making the change.
If you are changing an existing flexfield definition to add security, you must
unfreeze the flexfield definitions to enable security, then refreeze to compile the
new information.
Users currently logged on will not see the change until they exit or change
responsibilities.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
7-14
Defining Flexfields

Enabling Program Parameter Security


.....................................................................................................................................................

Enabling Program Parameter Security

Concurrent Program Parameters


(N)>Concurrent>Program>Define>Parameters(B)
Remember that concurrent program parameters can use value sets as well. Enable
security for any concurrent program parameters when appropriate.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
7-15

Lesson 7: Using Flexfield Security


.....................................................................................................................................................

Defining Security Rules

Define Security Rules


(N) Security>Responsibility>Value Set>Define

y
l
n

Defining Security Rules


You can use using different menu paths from different responsibilities to reach the
Define Security Rules window. The sample path shown is under the System
Administration responsibility.
To define security information for an existing value set, search for that value sets
definition by its value set name, or by any flexfield segment or concurrent program
parameter that uses that value set. Specify how you wish to search by selecting the
appropriate option. Security must be enabled for the value set, or it will not appear.
Specify include and exclude ranges for values.
An automatic exclude rule excludes all values not explicitly included. Rules
without elements therefore exclude everything.
Without any rules, anyone can see and use any segment value.
On most computers, 0 < Z

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
7-16
Defining Flexfields

Assigning Security Rules


.....................................................................................................................................................

Assigning Security Rules

Assign Security Rules


(N) Security>Responsibility>Value Set>Assign
Assigning Security Rules to Responsibilities
You can reach the Assign Security Rules window by different menu paths. The
path shown is under the System Administration responsibility.
Assign value security for value sets, flexfield segments, or concurrent programs by
selecting the appropriate radio button.
Multiple security rules can be applied to the same responsibility, and the same
security rule can be applied to multiple responsibilities.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
7-17

Lesson 7: Using Flexfield Security


.....................................................................................................................................................

Practice 7-2
Practice Overview

Defining security rules to control data access


Assigning the security rules to a responsibility
Enabling security for a value set and concurrent
program

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


In this practice you are given a scenario and asked to design and define security
measures to restrict data access as required by the scenario. Then you assign the new
security information to a responsibility. Finally, you enable security at the appropriate
levels. See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
7-18
Defining Flexfields

Using Flexfield Security: Summary


.....................................................................................................................................................

Using Flexfield Security: Summary


Summary

Use security rules to control access through a


flexfield.

Security rules are applied to value set.

Security rules are tied to a responsibility.

Security can be enabled for any flexfield segment


or report parameter that uses that value set.

Copyright Oracle Corporation, 1998. All rights reserved.

Summary
You can control the access to data by defining value security rules. These rules list the
allowable values for display or selection through a flexfield segment. The rules are
applied to the value set defined for that flexfield segment. Once you have defined the
rules, you assign them to a responsibility. All users of that responsibility are then
restricted to the approved values when using the flexfields segment.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
7-19

Lesson 7: Using Flexfield Security


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
7-20
Defining Flexfields

8
.................................

Using Cross-Validation
Rules

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Lesson 8: Using Cross-Validation Rules


.....................................................................................................................................................

Objectives
Objectives
After completing this lesson, you should be able to
do the following:

Explain the purpose for cross-validation


Define cross-validation rules
Control the interaction of multiple cross-validation
rules.

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Objectives
At the end of this lesson, you should be able to:
Explain the use of cross-validation to ensure data coherence
Plan cross-validation rules for a key flexfield
Implement cross-validation rules
Review and control the interaction of cross-validation rules

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
8-2
Defining Flexfields

Using Cross-Validation Rules: Overview


.....................................................................................................................................................

Using Cross-Validation Rules: Overview


Overview

Designing cross-validation rules


Defining and enabling cross-validation checking

Copyright Oracle Corporation, 1998. All rights reserved.

Overview
Cross-validation rules allow you to control the combination of values entered for a key
flexfield. This lesson describes how cross-validation works, and how it is implemented

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
8-3

Lesson 8: Using Cross-Validation Rules


.....................................................................................................................................................

Using Cross-Validation
Cross-Validating Values
Country Value Set
USA United Stated
UK United Kingdom

Asset
Location
Flexfield

State Value Set

City Value Set

CA California
NY New York
TX Texas

Los Angeles
London
New York
Houston

__ Asset Location _____________


Country
State
City

UK

United Kingdom

CA

California

HOUSTAN

Houston California United Kingdom not allowed

Copyright Oracle Corporation, 1998. All rights reserved.

Using Cross-Validation to Enforce Data Integrity


You can create rules specifying the allowable value combinations for multiple segment
key flexfields. In this way you can avoid the generation of illogical or inappropriate
key values. Cross-validation rules apply only to key flexfields.
The slide shows an Asset Location flexfield with three fields for country, state, and city
information. Since Asset Location is a key flexfield, you could define a crossvalidation rule to be sure that no one tried to specify a US state value for the UK. Note
that you could also specify cross-validation rules to ensure that each city value was
placed in the correct state.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
8-4
Defining Flexfields

Designing Cross-Validation Rules


.....................................................................................................................................................

Designing Cross-Validation Rules


Cross-Validation Rule Syntax

Type

From:

To:

INCLUDE

value1.value2.value3

value4.value5.value6

EXCLUDE

value1.value2.value3

value4.value5.value6

Copyright Oracle Corporation, 1998. All rights reserved.

Designing Rule Elements


Cross-validation rules consist of an Include element that includes all possible
combinations, and one or more Exclude elements that restrict various segment value
combinations. To make maintenance easier, use many simple rules rather than a few
complex rules. To pass validation, a value combination must be included and not be
excluded by any of the Exclude elements. Rules are not retroactive, they apply only to
segment value combinations entered after they are defined and enabled.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
8-5

Lesson 8: Using Cross-Validation Rules


.....................................................................................................................................................

Data Type and Format Restrictions


Data Type Specifications and CrossValidation Rules
Account Value Set
Format Type: Char
Upper case Only (A-Z)

Accounting Key Flexfield


Company

Branch

Account

Cost Center

Cross Validation Rule


INCLUDE 00.000.0000.0000
EXCLUDE 00.000.2000.0000

TO ZZ.ZZZ.ZZZZ.ZZZZ
TO ZZ.ZZZ.2999.ZZZZ

Copyright Oracle Corporation, 1998. All rights reserved.

Specifying Data Type and Format in Cross-Validation Rules


Cross-validation rules recognize any value characteristics specified for the value sets
the segments use, such as Format Type, Right-Justify and Zero-Fill, Numbers Only,
and Uppercase Only. Note that the Accounting flexfield does not use NULL values.
The Cross-Validation Rules window enforces the correct collating order for the
platform.
For most platforms (ASCII) 0 < 000 < Z < ZZZ
For some platforms (EBCDIC) A < AAA < 9 < 999

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
8-6
Defining Flexfields

Practice 8-1
.....................................................................................................................................................

Practice 8-1
Practice Overview

Interpreting the effects of cross-validation rules


Designing cross-validation rules

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
8-7

Lesson 8: Using Cross-Validation Rules


.....................................................................................................................................................

Preparing for Cross-Validation

Preparing the Flexfield Definition for Cross-Validation


(N)>Application>Flexfield>Key>CrossValidation
Before you can add cross-validation rules to an existing flexfield definition, you must
unfreeze it. After defining the cross-validation rules, you must refreeze and recompile
the flexfield definition for the new validation rules to take effect.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
8-8
Defining Flexfields

Defining Cross-Validation Rules


.....................................................................................................................................................

Defining Cross-Validation Rules

Defining Cross-Validation Rules and Error Messages


(N)>Application>Flexfield>Key>CrossValidation>From
Because cross-validation rules can be defined from within multiple applications, the
path to the definition screen depends on which application you are using.

y
l
n

O
e

Define an Error Message and an Error Segment Enter a rule name and
description for each cross-validation rule. Specify the error message to display and the
segment where the cursor should move when a user enters an invalid combination. Use
the segment where the error probably occurred. Enter optional start and end dates for
your rule. You can also use these fields to disable a rule.

I
A
O

s
U

Specify at Least One INCLUDE Element Unspecified values are always


excluded, so every rule needs at least one Include statement. Otherwise no
combinations will ever pass validation. As shown in the example, you can use the popup window to define which combinations to exclude. Exclude statements override
Include statements. There can be multiple statements and each statement can specify
values for multiple flexfield segments.

&
l
a

n
r
te

n
I
e

Change the Flexfield Definition You must exit and sign on again or change
responsibilities to see any changes.

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
8-9

Lesson 8: Using Cross-Validation Rules


.....................................................................................................................................................

Cross-Validation Maintenance Reports


Cross-Validation Reports

Cross-Validation Rules Listing Report


Cross-Validation Rule Violation Report

Copyright Oracle Corporation, 1998. All rights reserved.

Maintaining Cross-Validation Rules


To minimize maintenance, plan cross-validation rules when first setting up the key
flexfield. If later changes are necessary, review existing rules to ensure accurate and
consistent validation. Disable previously existing combinations that are no longer
valid according to the new rules.

y
l
n

O
e

s
U

Using Reports to Maintain Cross-Validation Rules


The Cross-Validation Rule Violation Report offers a listing of all the previously
created flexfield combinations that violate the cross-validation rules for a given
structure. The report program can also disable the existing combinations that
violate the new rules.
The Cross-Validation Rules Listing report lists all the cross-validation rules that
exist for a particular flexfield structure.

&
l
a

I
A
O

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
8-10
Defining Flexfields

Comparing Cross-Validation and Security Rules


.....................................................................................................................................................

Comparing Cross-Validation and Security Rules


Cross-Validation and Security

Value Security

Cross-Validation
Applies to all users.

Applies only to users of the


chosen Responsibility.

Affects only key flexfields.

Affects key, descriptive


flexfields as well as report
parameters.

Applies across an entire


key flexfield structure.

Applies only to the value


set used.

Copyright Oracle Corporation, 1998. All rights reserved.

Interaction of Cross-Validation and Value Security Rules


Both cross-validation and value security control the data that a user can enter. The
slide shows a comparison of the scope and action of each.
Cross-Validation
Applies to all users regardless of responsibility
Affects only key flexfields
Applies across an entire key flexfield structure
Value Security Rules
Apply only to users of the chosen responsibility
Can affect key and descriptive flexfields as well as program parameters.
Apply only to the value set used by a flexfield segment or program parameter.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
8-11

Lesson 8: Using Cross-Validation Rules


.....................................................................................................................................................

Practice 8-2
Practice Overview

Defining cross-validation rules


Enabling cross-validation checking

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
8-12
Defining Flexfields

Using Cross-Validation Rules: Summary


.....................................................................................................................................................

Using Cross-Validation Rules: Summary


Summary

Cross-validation rules control combinations of


segment values.

Cross validation rules specify the segment values


to be either included or excluded.

Cross validation rules can be combined as


needed.

Copyright Oracle Corporation, 1998. All rights reserved.

Summary
Cross-validation rules are used to restrict invalid combinations of segment values.
Rules are defined by specifying the value combinations that are either allowed
(included) or disallowed (excluded). Cross-validation rules are not tied to a
responsibility like security rules.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
8-13

Lesson 8: Using Cross-Validation Rules


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
8-14
Defining Flexfields

9
.................................

Creating Shorthand
Aliases

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Lesson 9: Creating Shorthand Aliases


.....................................................................................................................................................

Objectives
Objectives
After completing this lesson, you should be able to
do the following:

Identify candidates for shorthand entry


Plan useful aliases
Enable shorthand entry
Define a shorthand alias

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Objectives
At the end of this lesson, you should be able to:
Identify candidates for shorthand entry
Plan useful aliases
Enable shorthand entry
Define a shorthand alias

&
l
a

y
l
n

O
e

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
9-2
Defining Flexfields

Shorthand Aliases
.....................................................................................................................................................

Shorthand Aliases
Overview

Identifying candidates for aliases.


Defining and enabling shorthand entry.

Copyright Oracle Corporation, 1998. All rights reserved.

Overview
Shorthand aliases allow you to label certain groupings of values for a multisegment
flexfield. Whenever you need one of these groupings of values, you can use the alias
for that grouping to enter the entire group.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
9-3

Lesson 9: Creating Shorthand Aliases


.....................................................................................................................................................

Using Shorthand Aliases


Using Shorthand Aliases
Find Asset ______________________________
Book
Location

Employee Name

Employee Number
5.
USA-NY-New York

1.
Alias Window

Alias Table

New York

4.

2.
3.

USA

NY

New York

USA

CA

San Francisco

USA

IL

Chicago

UK

London

Copyright Oracle Corporation, 1998. All rights reserved.

Using Shorthand Aliases to Speed Data Entry


Whenever you notice that you are frequently entering the same combination of values
into a multisegment flexfield, you should consider defining an alias for that value
combination. You can then use the alias to generate the complete set of values for the
flexfield.
Select an alias from a pop-up list of possible aliases for the flexfield. You can also
enter the alias name directly in the alias window.
Entering a shorthand alias automatically inserts the values for that alias into the key
flexfield.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
9-4
Defining Flexfields

Full and Partial Aliases


.....................................................................................................................................................

Full and Partial Aliases


Using Full and Partial Aliases
Flexfield definition:
Country
State
City

Full
aliases
(value for
every
segment)

Flexfield definition

Partial
aliases
(some
segments
empty)

Country
State
City
Address

USA
NY
New York
USA
CA
San Francisco
USA
NY
New York
USA
CA
San Francisco

Copyright Oracle Corporation, 1998. All rights reserved.

Using Full and Partial Aliases


An alias can represent a complete flexfield combination or a set of partial segment
values:
If most combinations vary only in a single segment, create an alias with that
segment blank and values specified for the remaining segments.
If the alias represents a complete combination, once the alias name has been
selected or entered, the shorthand window closes and the cursor moves to the next
field.
If the alias represents a partial flexfield value, the full flexfield window pops up
with the cursor on the first empty segment.
Pressing [Return] in a blank shorthand entry window also pops up the full flexfield
window.
Users can override values generated by aliases as appropriate.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
9-5

Lesson 9: Creating Shorthand Aliases


.....................................................................................................................................................

Key Flexfields Using Aliases


Typical Key Flexfields Using Aliases
Oracle General Ledger

Oracle Payroll

Cost Allocation

Accounting
Oracle Assets

Oracle Receivables

Asset Category
Sales Tax Location

Asset Location
Oracle Inventory

System Items
Item Categories
Copyright Oracle Corporation, 1998. All rights reserved.

Typical Key Flexfields Using Aliases


Since aliases are used to speed up the entry of often-used value combinations, certain
key flexfields in Oracle Applications are especially suited for alias entry.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
9-6
Defining Flexfields

Defining an Alias Template


.....................................................................................................................................................

Defining an Alias Template

Defining Your Alias


(N)>Application>Flexfield>Key>Aliases
You define your alias in the Shorthand Aliases window. Use the Shorthand region to
define the prompt and size of your alias window.
Use the Alias Description alternate region to specify the alias name and a description
if you wish. Use the Template field to define the actual values that make up your alias.
If your alias needs a particular value at a particular location within the key value, enter
the value at the appropriate place in the template. If your alias does not need a
particular value for a location, you can simply leave that position empty. You should,
however, enter the separators between fields. Having two separators next to each other
with no intervening value is acceptable.
Any values you define must pass any value set qualification as well as any crossvalidation rules.
Define multiple aliases for the same flexfield if necessary.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
9-7

Lesson 9: Creating Shorthand Aliases


.....................................................................................................................................................

Recompile the Flexfield

Recompiling the Flexfield Definition


(N)>Application>Flexfield>Key>Segments>(M)Query>Find
After you have specified any new aliases for a flexfield, you must recompile the
flexfield definition to implement the new aliases. To recompile the definition:
Unfreeze the definition
Compile the definition

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
9-8
Defining Flexfields

Flexfield: Shorthand Entry Profile Options


.....................................................................................................................................................

Flexfield: Shorthand Entry Profile Options


Flexfields: Shorthand Entry

Query
Not Enabled

New Entries Only


Query and New
Entry

X
_

All Entries
Always

Add

Update

X
X

Copyright Oracle Corporation, 1998. All rights reserved.

Flexfields: Shorthand Entry Values


The Shorthand Entry Profile Option controls the behavior of aliases at the user level.
The user has the ability to update this option as appropriate.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
9-9

Lesson 9: Creating Shorthand Aliases


.....................................................................................................................................................

Flexfields: Show Full Value Profile Option


Flexfields: Show Full Value

If alias specifies values for all segments,

No

Does not display full flexfield

Yes

Displays full flexfield


with cursor in last segment

Copyright Oracle Corporation, 1998. All rights reserved.

Flexfields: Show Full Value Profile Option


The Show Full Value Profile Option allows the user to turn off the full display of a key
flexfield whenever the user specifies an alias with values for all segments of the
flexfield.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
9-10
Defining Flexfields

Modifying Aliases
.....................................................................................................................................................

Modifying Aliases
Modifying Existing Alias Definitions
You may need to modify existing alias definitions
after:

Changing the order of flexfield segments


Adding a new segment
Disabling a segment
Changing a segment length

Copyright Oracle Corporation, 1998. All rights reserved.

Modifying Alias Definitions


Since aliases are tied to the structure of the flexfield, any change to the flexfield
structure must be reflected in any aliases providing values for that flexfield. Some of
the typical modifications that also require changes to aliases are shown in the slide.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
9-11

Lesson 9: Creating Shorthand Aliases


.....................................................................................................................................................

Practice 9-1
Practice Overview

Defining and using a shorthand alias

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
9-12
Defining Flexfields

Using Shorthand Aliases Summary


.....................................................................................................................................................

Using Shorthand Aliases Summary


Using Shorthand Aliases
Summary

Identifying candidates for aliases


Defining and enabling shorthand alias entry

Copyright Oracle Corporation, 1998. All rights reserved.

Summary
Short aliases provide a way to speed entry of frequently used value combinations. Any
key flexfield is a candidate for shorthand alias entry. This lesson covered the use of
shorthand aliases in Oracle Applications.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
9-13

Lesson 9: Creating Shorthand Aliases


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
9-14
Defining Flexfields

10
.................................

Using Advanced
Validation Capabilities

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Lesson 10: Using Advanced Validation Capabilities


.....................................................................................................................................................

Objectives
Objectives
After completing this lesson, you should be able to
do the following:

Use values retrieved from application tables for


validating input

Reference profile options when validating input


Use another field on the same form for validation
Use a value from a previously used value set for
validation

Copyright Oracle Corporation, 1998. All rights reserved.

Lesson Topics
A previous lesson discussed creating and using value sets to check user input. In that
lesson, you performed a practice in which you defined value sets of the validation
types None, Independent, and Dependent.
In this lesson, you will learn how to use values stored in applications tables for
validation. You will also learn how to restrict the set of values that is returned from the
table.
At the end of this lesson, you should be able to:
Use values retrieved from application tables for validating input
Reference profile option values when validating input
Use a value from another field on the same form for validation
Use the value from a previously used value set for validation

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
10-2
Defining Flexfields

Using Advanced Validation Capabilities: Overview


.....................................................................................................................................................

Using Advanced Validation Capabilities: Overview


Overview

Using table validated value sets


Using profile option values for validating
Using the value from a prior field on a form
Using the value from a prior value set

Copyright Oracle Corporation, 1998. All rights reserved.

Overview
There are several advanced techniques you can use when defining value sets for
validating input. These techniques use values obtained from a location other than a list
specifically defined for the value set. These locations include
Values retrieved from an application table
The current value for a particular profile option
A value used earlier in a field on the form
A value used earlier in another value set

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
10-3

Lesson 10: Using Advanced Validation Capabilities


.....................................................................................................................................................

Advanced Validation Types


Advanced Validation Operations

Use values from application tables.


Use Profile option values for validation.
Use values from other fields on the same form.
Use cascading dependencies.

Copyright Oracle Corporation, 1998. All rights reserved.

Using Advanced Validation Capabilities


Besides obtaining values from an application table, you can obtain other values for
validation from:
Current profile options
A prior field on the same form
A prior value set used by a segment on the same form

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
10-4
Defining Flexfields

Using Application Table Values


.....................................................................................................................................................

Using Application Table Values


Table-Validated Value Sets
Cities_West
Value Set
__ Customer Display ______
Customer
City

WHERE
REGION =
Western

Acme Computers

Region

San Jose
Western

Name

City

Acme Computers
Customer North Bay Foods
Midwest Grain
Table
Southern Milling
Rocky Mountain Mining

Region

San Jose
Boston
Chicago
Charleston
Denver

Western
Eastern
Eastern
Southern
Western

Copyright Oracle Corporation, 1998. All rights reserved.

Using Existing Values in Application Tables for Validation


Use the values stored in application tables to provide values to flexfield segments
and report parameters.
You can use an SQL WHERE clause to restrict the set of values returned.
Remember the LongList feature for large tables.
Dependent value sets cannot use a table-validated value set as their Independent
value set.

y
l
n

O
e

I
A
O

s
U

Avoiding Double Maintenance


Values stored in application tables are maintained by the application.
Table validation is especially useful when values already exist in feeder systems.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
10-5

Lesson 10: Using Advanced Validation Capabilities


.....................................................................................................................................................

Defining a Table-Validated Value Set

Defining a Table-Validated Value Set


(N)>Application>Validation>Set>(B) Edit Information
Match the format options to the values stored in the table when defining tablevalidated value sets. Specify which table and which columns to use for this value set in
the Validation Table Information window.

y
l
n

O
e

s
U

Value Column Specify the name, type, and size of the column containing the values
to be used for validating. The list of values limits itself to columns matching the
format choices made in the Value Sets window.
Meaning Column
column.

I
A
O

This column contains the descriptions for the values in the Value

&
l
a

n
r
te

Hidden ID Column This contains undisplayed values, for example, an application


ID number corresponding to the displayed application name. Many Oracle
Applications key flexfields do not allow the use of the hidden ID column

n
I
e

Additional Columns Any additional columns to display. You can use a column alias
to provide a title for the column. Include a width indicator for the column. For
example: user_formname Form Title(30), application_name Application
Name(35)

l
c
a

r
O

.....................................................................................................................................................
10-6
Defining Flexfields

Restricting the Values Retrieved


.....................................................................................................................................................

Restricting the Values Retrieved

Use an SQL WHERE Clause to Restrict Values


(N)>Application>Validation>Set>(B) Edit Information
Not all the values stored in the table may be appropriate for your value set. Use an
SQL WHERE statement to restrict the set of values returned from the table.
You can also use an ORDER BY statement to control the order in which the values are
returned.

y
l
n

O
e

I
A
O

s
U

Limitations
Do not use WHERE clauses with the Accounting flexfield.
Do not use HAVING or GROUP BY clauses.
Do not use UNION, INTERSECT, MINUS, PLUS, or other set operators except in
a subquery.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
10-7

Lesson 10: Using Advanced Validation Capabilities


.....................................................................................................................................................

Using Multiple Tables for Validation

Using Information from More Than One Table


(N)>Application>Validation>Set>(B) Edit Information
Specify more than one name in the table name field, and use the JOIN statement in
the WHERE clause to use columns from multiple tables.
Use regular SQL syntax to specify the table join.
Remember to list names for each table in the Table name field. No value is
required in the Table Application field.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
10-8
Defining Flexfields

Practice 10-1
.....................................................................................................................................................

Practice 10-1
Practice Overview

Using application table values for validation

Copyright Oracle Corporation, 1998. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
10-9

Lesson 10: Using Advanced Validation Capabilities


.....................................................................................................................................................

Using Other Table Validation Options


Other Advanced Validation Options

$PROFILES$ References the current value


of a profile option

:Block.field

References the value of an earlier


appearing field on the same form

$FLEX$

References the value from a value set


used earlier on the same form

Copyright Oracle Corporation, 1998. All rights reserved.

Other Advanced Validation Options

y
l
n

Using $PROFILES$ You can reference the current value of a profile option in a
WHERE clause by prefixing the name of the profile option with $PROFILES$, e.g.,
:$PROFILES$.profile_option_name

O
e

s
U

Using :Block.field You can test against the value of a prior field on the same form in
a WHERE clause by referring to the field using the format Block_name.field_name. To
find out the block and field names, click in the field and then select
Help>Tool>Examine from the menu bar. This displays the block name and the
field name for the selected field.

&
l
a

I
A
O

Using $FLEX$ You can refer to the current value of a previously used value set on
the same form by using $FLEX$.value_set_name.

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
10-10
Defining Flexfields

Using $PROFILES$
.....................................................................................................................................................

Using $PROFILES$

Using $PROFILES$ to Refer to a Profile Option Value


(N)>Application>Validation>Set>(B) Edit Information
Use this keyword in a WHERE clause to use a profile option value.
Use the profile option name, not the end-user name.
WHERE SET_OF_BOOKS_ID = :$PROFILES$.GL_SET_OF_BOOKS_ID

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
10-11

Lesson 10: Using Advanced Validation Capabilities


.....................................................................................................................................................

Using :Block.field

Using :Block.field to Refer to a Field on the Base Window


(N)>Customers>Standard(M) Help>Tools>Examine
Using :block.field is different from using a descriptive flexfield reference field in
that the flexfield structure does not change based on the different :block.field
values.
Use this value set only with flexfields on windows that have the same block.field
available. If the list of values cannot find the correct field, the segment cannot
accept any value as valid. Do not use this value set with flexfields appearing on
other windows or with report parameters.
:block.field is the Oracle Forms internal name of a field on the descriptive flexfield
window.
This argument requires the same :block.field on every window where a value set
based on this validation table could be used. For example, if the flexfield whose
segment uses block.field validation appears on seven different windows, the same
block.field must also be present on those seven forms.
If sharing value sets among multiple descriptive flexfields, all windows that use
any of those flexfields must have this block.field.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
10-12
Defining Flexfields

Using $FLEX$
.....................................................................................................................................................

Using $FLEX$

Using $FLEX$ to Refer to a Value Used in a Previous Value Set


(N)>Application>Validation>Set>(B) Edit Information
Use $FLEX$.value_set_name to reference the value in a previous segment of the
same flexfield structure.
Value_set_name refers to a value set used by a prior segment in the flexfield.
If two segments use the same value set, the value from the closest segment is used.
The flexfield segment or report parameter always uses the value from the Value
column (not the Meaning or Hidden columns).
Because Value_set_name is case-sensitive, you must ensure that the name in the
WHERE clause exactly matches the value set name defined.
Use only letters, numbers, and underscores in value set names if you want to use
them with $FLEX$.
Do not user quotes, spaces, or other special characters in these value set names.
The value set must point to a previous segment in the same flexfield structure. For
descriptive flexfield context-sensitive segments, the value set must point to the
previous segment in the same context-sensitive structure.
Multiple $FLEX$.value_set_name statements can be used in the same WHERE
clause.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
10-13

Lesson 10: Using Advanced Validation Capabilities


.....................................................................................................................................................

Using Cascading Dependencies


Cascading Dependencies Using $FLEX$
MAKER_VALUES
MAKER_TABLES
MAKER_NAME

_ Stock On Hand Display ___


Maker
Model
Color

MODEL_VALUES
MODEL_TABLE
MODEL_NAME

WHERE MAKER_NAME =
$FLEX$.MAKER_VALUES
COLOR_VALUES
COLOR_TABLE
COLOR_NAME

WHERE MAKER_NAME =
$FLEX$.MAKER_VALUES
AND
MODEL_NAME =
$FLEX$.MODEL_VALUES
Copyright Oracle Corporation, 1998. All rights reserved.

Using Cascading Dependencies


You can use the $FLEX$ keyword to create chains of validation checks called
cascading dependencies.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
10-14
Defining Flexfields

Using Special Value Sets


.....................................................................................................................................................

Using Special Value Sets

Using Passing an Entire Flexfield Structure as a Value


Many report parameters use special value sets to pass a key flexfield combination as a
report parameter.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
10-15

Lesson 10: Using Advanced Validation Capabilities


.....................................................................................................................................................

Using Pair Value Sets

Using Pair Value Sets


Pair value sets use two segments to pass a range flexfield.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
10-16
Defining Flexfields

Using Advanced Validation Capabilities: Summary


.....................................................................................................................................................

Using Advanced Validation Capabilities: Summary


Summary

Value sets can use values from application tables


for validation.

Value sets can use values from profile options for


validation.

Value sets can use values from a previously used


field or value set for validation.

Copyright Oracle Corporation, 1998. All rights reserved.

Summary
Some value sets (for example, Independent and Dependent) have lists of approved
values explicitly defined. Other types of value sets, however, can use values from other
locations for validation. Using values from an application table is one example of these
alternate locations. The current value of a profile option can also be used. The value
from a previously appearing field on a form can be referenced as well. Finally, the
value from a previously used value set can be used by all subsequent value sets.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
10-17

Lesson 10: Using Advanced Validation Capabilities


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
10-18
Defining Flexfields

11
.................................

Displaying Flexfield
Structure Data

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Lesson 11: Displaying Flexfield Structure Data


.....................................................................................................................................................

Objectives
Objectives
After completing this lesson, you should be able to
do the following:
Generate descriptive and key flexfield views
Identify descriptive and key flexfield view columns
Use views to retrieve flexfield structure information

Copyright Oracle Corporation, 1996. All rights reserved.

Lesson Objectives
At the end of this lesson, you should be able to:
Generate descriptive flexfield and key flexfield views
Identify descriptive flexfield and key flexfield view columns
Use views to retrieve structure information about flexfields

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
11-2
Defining Flexfields

Displaying Flexfield Structure Data: Overview


.....................................................................................................................................................

Displaying Flexfield Structure Data: Overview


Overview
Using views to display flexfield structures and data.

Copyright Oracle Corporation, 1996. All rights reserved.

Overview
There are several views that are generated automatically when you compile a key or
flexfield. You can use these views to inspect the structure of your flexfields and any
data they contain.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
11-3

Lesson 11: Displaying Flexfield Structure Data


.....................................................................................................................................................

Obtaining Structure Information About Flexfields


Flexfield Views

Descriptive flexfields
Descriptive flexfield view

Key flexfields
Key flexfield concatenated segments view
Key flexfield structure view

Copyright Oracle Corporation, 1996. All rights reserved.

Viewing Flexfield Structural Data


Oracle Applications provides several views you can use to report on flexfields data.
When you freeze and compile a flexfield structure, Oracle Applications automatically
generates one or more database views of the appropriate flexfield tables:
For descriptive flexfields, a view containing all segments for all contexts of the
flexfield.
For key flexfields, a concatenated view containing all the structure names and
combinations for the key flexfield.
A separate key flexfield view for each structure.
These views make custom reporting simpler by providing view columns that
correspond directly to your flexfield segments.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
11-4
Defining Flexfields

Descriptive Flexfield Views


.....................................................................................................................................................

Descriptive Flexfield Views

Viewing Descriptive Flexfield Structure Information


(N)>Application>Flexfield>Descriptive>Segments>(B) Compile
For descriptive flexfields, Oracle Applications generates a view named
Table_name_DFV, where Table_name is the name of the underlying base application
containing the ATTRIBUTE columns storing the descriptive flexfield data.
The view generated contains a column for every segment of every context.
A structure column in the view allows for differentiation among rows for different
structures.
The view uses each structures segment names as view columns. If segments in
different contexts use the same name, they will share the same view column. The
context prompt is used as the name of the structure column.
The view also shows the concatenated segment values in the flexfield as a single
column in the view.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
11-5

Lesson 11: Displaying Flexfield Structure Data


.....................................................................................................................................................

Displaying the Descriptive Flexfield View


SQL> desc apps.fnd_currencies_dfv;
Name
Null?
Type
------------------------------- -------- ---ROW_ID
ROWID
PROMPT
VARCHAR2(80)
USAGE
VARCHAR2(150)
PERIOD
VARCHAR2(150)
SOURCE
VARCHAR2(150)
CONCATENATED_SEGMENTS
VARCHAR2(684)

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
11-6
Defining Flexfields

Using the Descriptive Flexfield View


.....................................................................................................................................................

Using the Descriptive Flexfield View


SQL> select prompt, usage, period, source
2 from apps.fnd_currencies_dfv
3 where usage is not null;
PROMPT
USAGE
PERIOD
SOURCE
-----------------------------------------------------------European Currencies
Reporting
Quarterly Manual
European Currencies
Transaction
Daily
Download
European Currencies
Reporting
Monthly
Manual
European Currencies
Reporting
Non-European Currencies
Reporting
Non-European Currencies

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
11-7

Lesson 11: Displaying Flexfield Structure Data


.....................................................................................................................................................

Key Flexfield Views

Using Key Flexfield Views


(N)>Application>Flexfield>Key>Segments
For a key flexfield, Oracle Applications generates a view containing two columns that
hold the concatenated segment values.

y
l
n

Concatenated Segments View


The view name is the code combination table name plus _KFV.
The view contains all structure names and combinations in the flexfield. A
structure column allows for differentiation between structures.
Request to build the view by saving the structure and exiting the Key Flexfield
Segments window.

O
e

I
A
O

s
U

Structure Views
You can choose to define a view of a particular structure when defining a key
flexfield by specifying a name for the view. If you do not specify a view name,
Oracle Applications does not generate a view for that structure.
The structure view contains a column for each segment in the structure.
The view uses the structures segment names as the view column names.
You request the view by saving a frozen structure in the Key Flexfield Segments
window.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
11-8
Defining Flexfields

Viewing the Concatenated Segments View


.....................................................................................................................................................

Viewing the Concatenated Segments View


The Concatenated Segments view is created automatically whenever you compile a
key flexfield definition. In addition to all the columns from the underlying table, the
Concatenated Segments view has two additional columns, the
CONCATENATED_SEGMENTS column and the
PADDED_CONCATENATED_SEGMENTS column. These two columns both hold
the concatenated segment values for structure.
SQL> desc apps.fa_categories_kfv;
Name
Null?
Type
------------------------------- -------- ---ROW_ID
ROWID
CATEGORY_ID NOT NULL NUMBER(15)
CONCATENATED_SEGMENTS
VARCHAR2(61)
PADDED_CONCATENATED_SEGMENTS
VARCHAR2(41)
SUMMARY_FLAG
NOT NULL VARCHAR2(1)
ENABLED_FLAG
NOT NULL VARCHAR2(1)
OWNED_LEASED
NOT NULL VARCHAR2(6)
LAST_UPDATE_DATE
NOT NULL DATE
LAST_UPDATED_BY
NOT NULL NUMBER(15)
CATEGORY_TYPE
NOT NULL VARCHAR2(30)
CAPITALIZE_FLAG
NOT NULL VARCHAR2(3)
DESCRIPTION
VARCHAR2(40)
SEGMENT1
VARCHAR2(30)
SEGMENT2
VARCHAR2(30)
. . .
. . .

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
11-9

Lesson 11: Displaying Flexfield Structure Data


.....................................................................................................................................................

Querying the Concatenated Segments View


SQL> select concatenated_segments from apps.fa_categories_kfv;
CONCATENATED_SEGMENTS
----------------------------------------------------------------VEHICLE-LEASED STANDARD
LAND-OCCUPIED
BUILDING-OFFICE
BUILDING-MANUFACTURING
COMPUTER-PC
FURNITURE-DESKS
MACHINE-FABRICATE
TENANT IMPROVEMENT-REMOVABLE
VEHICLE-OWNED LUXURY
VEHICLE-OWNED STANDARD
VEHICLE-OWNED HEAVY
SQL> select padded_concatenated_segments from
apps.fa_categories_kfv;
PADDED_CONCATENATED_SEGMENTS
----------------------------------------VEHICLE
-LEASED STANDARD
LAND
-OCCUPIED
BUILDING
-OFFICE
BUILDING
-MANUFACTURING
COMPUTER
-PC
FURNITURE
-DESKS
MACHINE
-FABRICATE
TENANT IMPROVEMENT -REMOVABLE
VEHICLE
-OWNED LUXURY
VEHICLE
-OWNED STANDARD
VEHICLE
-OWNED HEAVY

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
11-10
Defining Flexfields

Creating a Structure View


.....................................................................................................................................................

Creating a Structure View

Creating a Structure View


(N)>Application>Flexfield>Key>Segments>(B) Compile
You can create a view for each structure defined for your key flexfield by providing a
view name before compiling the flexfield definition. Structure views are optional. If
you do not provide a name, a view is not created.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
11-11

Lesson 11: Displaying Flexfield Structure Data


.....................................................................................................................................................

Using a Structure View


In addition to all the columns in the underlying table, a structure view has a column for
each field in the structure. These columns use the segment names.
SQL> desc apps.adb_accounting_kview;
Name
Null?
Type
------------------------------- -------- ---ROW_ID
ROWID
CODE_COMBINATION_ID
NOT NULL NUMBER(15)
COMPANY
VARCHAR2(25)
BRANCH
VARCHAR2(25)
ACCOUNT
VARCHAR2(25)
COST_CENTER
VARCHAR2(25)
PRODUCT
VARCHAR2(25)
GL_ACCOUNT_TYPE
NOT NULL VARCHAR2(1)
DETAIL_BUDGETING_ALLOWED
NOT NULL VARCHAR2(1)
DETAIL_POSTING_ALLOWED
NOT NULL VARCHAR2(1)
DESCRIPTION
VARCHAR2(240)
TEMPLATE_ID
NUMBER(15)
ALLOCATION_CREATE_FLAG
VARCHAR2(1)
START_DATE_ACTIVE
DATE
END_DATE_ACTIVE
DATE
ATTRIBUTE1
VARCHAR2(150)
ATTRIBUTE2
VARCHAR2(150)
ATTRIBUTE3
VARCHAR2(150)
ATTRIBUTE4
VARCHAR2(150)
. . .
. . .

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
11-12
Defining Flexfields

Querying a Key Structure View


.....................................................................................................................................................

Querying a Key Structure View


The following output shows
SQL> col company format a10
SQL> col branch format a10
SQL> col account format a10
SQL> col cost_center format a10
SQL> col product format a10
SQL> select company, branch, cost_center, account, product from
apps.adb_accounting_kview;
COMPANY
BRANCH
COST_CENTE ACCOUNT
PRODUCT
---------- ---------- ---------- ---------- ---------01
170
0000
1110
000
01
000
2270
1110
000
01
000
2260
1110
000
01
999
2080
1110
000
01
000
0000
1100
000
01
510
0000
6420
000
01
000
0000
6420
000
01
155
1030
2120
210
01
T
T
6500
T
01
999
9999
9999
000
01
000
0000
0000
000
01
000
0000
2890
000
01
000
0000
1890
000
01
260
1230
6320
000
01
T
T
4200
T
01
T
T
4300
T
01
T
T
4400
T
01
T
T
4500
T
01
T
T
7100
T
01
T
T
7200
T
01
T
T
7300
T

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
11-13

Lesson 11: Displaying Flexfield Structure Data


.....................................................................................................................................................

Segment Naming Conventions


Naming Considerations
Before generating views, check that segment names
are unique:
Do not use special characters and _ to differentiate
between names.
Do not use SQL reserved words.
Do not name a descriptive segment the same as a
context prompt.
Key segment names cannot have the same name
as another column in the code combination table.

Copyright Oracle Corporation, 1996. All rights reserved.

Segment Naming Conventions


The flexfield view generator cannot create a view if two or more segment names map
to identical view column names unless segments are in different contexts of the same
descriptive flexfield.

y
l
n

O
e

Specify Unique Segment Names


The view generator uses segment names as column names and changes all spaces
and special characters to underscores. Ensure that segment names are still unique
after this correction.
Avoid using SQL reserved words as segment names.

&
l
a

I
A
O

s
U

Descriptive Flexfields
Avoid naming segments after context prompts because context prompts are used as
the view column name for the context columns.
Ensure that global names are unique.

n
r
te

n
I
e

Key Flexfields
Since the key flexfield view includes nonflexfield columns, segment names should not
match any other nonflexfield columns in the code combination table.

l
c
a

r
O

.....................................................................................................................................................
11-14
Defining Flexfields

Practice 11-1
.....................................................................................................................................................

Practice 11-1
Practice Overview
Explaining views available for inspecting flexfield
definitions
Using views to retrieve information about flexfields
and flexfield values

Copyright Oracle Corporation, 1996. All rights reserved.

Performing This Practice


See Appendix A for instructions and solutions for this practice.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
11-15

Lesson 11: Displaying Flexfield Structure Data


.....................................................................................................................................................

Displaying Flexfield Structure Data: Summary


Summary
A descriptive flexfield view is automatically
generated when you define a descriptive flexfield.
A key flexfield view showing the values
concatenated is generated when you define a key
flexfield.
You can optionally request a structure view be
generated for a key flexfield.

Copyright Oracle Corporation, 1996. All rights reserved.

Summary
Various views are generated when you compile a flexfield. You can use these views to
display information about the structure of your flexfields.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
11-16
Defining Flexfields

A
................................

Practice Instructions and


Solutions

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 1-1
1. You can extend and customize the processing of Oracle Applications by using
customizable fields called ____________________________________________.
2. What are flexfields comprised of? ___________________________________.
3. The fields that appear on a flexfield are combined in a grouping called a
__________________________________________________________________.
4. List two ways flexfields allow you to customize the operation of Oracle
Applications.
____________________________________________________________________
____________________________________________________________________

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-2
Defining Flexfields

Practice 1-1
.....................................................................................................................................................

5. Select the appropriate name from the list to label the numbered elements in the
diagram below.
________
Flexfield title
________
Value set
________
Descriptive flexfield indicator
________
Flexfield segments
________
Value set values
________
Flexfield window prompts
________
Value descriptions

_____ Sales Information _______


Transaction:
Customer:
Item:

Payment Type:

3987
Jane Doe

COM-876-LTN
3

____Item Details_________

____Item Information___
Computer

Category: COM
Item:

Type:

Monitor

876

COM

O
e

Light tan

Color: LTN

6
2

y
l
n

Computer

Sales Rep: Jane Reed

COM
APPL
FURN

Computer
Appliance
Furniture

I
A
O

s
U

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-3

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 1-1 Solutions


1. You can extend and customize the processing of Oracle Applications by using
customizable fields called __flexfields___________________________________.
2. What are flexfields comprised of ______segments_______________________.
3. The fields that appear on a flexfield are combined in a grouping called a
____________structure________________________________________________.
4. List two ways flexfields allow you to customize the operation of Oracle
Applications.
______Define the structure of required identifiers__________________________
____Gather additional information_______________________________________

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-4
Defining Flexfields

Practice 1-1 Solutions


.....................................................................................................................................................

5. Select the appropriate name from the list to label the numbered elements in the
diagram below.
___3_____
Flexfield title
___5_____
Value set
___1_____
Descriptive flexfield indicator
___2_____
Flexfield segments
___7_____
Value set values
___6_____
Flexfield window prompts
___4_____
Value descriptions
_____ Sales Information _______
Transaction:
Customer:
Item:

Payment Type:

3987
Jane Doe

COM-876-LTN
3

____Item Details_________

____Item Information___
Category: COM
Item:

876

Computer

Type:

Color: LTN

Monitor

COM

Computer

y
l
n

Sales Rep: Jane Reed

Light tan
6

COM
APPL
FURN

Computer
Appliance
Furniture

AI

&
l
a

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-5

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 1-2
1. List the two types of flexfields used by Oracle Applications.
_______________________________
_______________________________
2. List two key flexfields used by Oracle Applications.
________________________________
________________________________
3. List two descriptive flexfields used by Oracle Applications.
________________________________
________________________________
4.A phone number has multiple parts. Does that make it an intelligent key?
________________________________
5. Give an example of an identifier at your business for which you will define a key
flexfield.
________________________________
6. If possible, give an example of information you gather by using a descriptive
flexfield.
_________________________________________________________________
7.Which of the two types of flexfields is optional?
__________________________________________________________________

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-6
Defining Flexfields

Practice 1-2 Solutions


.....................................................................................................................................................

Practice 1-2 Solutions


1. List the two types of flexfields used by Oracle Applications.
_____Key______________________________
_____Descriptive________________________
2. List two key flexfields used by Oracle Applications.
____Accounting Flexfield____________________________
____Item Categories________________________________
(Any of the other key flexfields listed on the slide dealing with Oracle
Applications key flexfields)
3. List two descriptive flexfields used by Oracle Applications.
____Accounting Calendar: Periods____________________________
____Asset Category_________________________________________
(Any of the other descriptive flexfields listed on the slide dealing with Oracle
Applications descriptive flexfields, or any the student may have obtained directly
from the application)

y
l
n

4.A phone number has multiple parts. Does that make it an intelligent key?
___No, not all segments contain meaningful information._____________________
5. Give an example of an identifier at your business for which you will define a key
flexfield.
____Answers will vary._______________________________
6. If possible, give an example of information you gather by using a descriptive
flexfield.
____Answers will vary._________________________________________________
7.Which of the two types of flexfields is optional?
____Descriptive_______________________________________________________

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-7

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 2-1
1. Briefly explain how the value set can control the values used in a flexfield segment.
____________________________________________________________________
____________________________________________________________________
_____________________________________________________________________
2. Which validation type would be appropriate to use for the following data:
Customer zipcodes __________________________________________________
The ID numbers of your salespeople ____________________________________
The weight of various standard inventory items ____________________________
Department number _________________________________________________
3. Does a Dependent validation type provide a list of values to the user? What about a
validation type of None?

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-8
Defining Flexfields

Practice 2-1 Solutions


.....................................................................................................................................................

Practice 2-1 Solutions


1. Briefly explain how the value set can control the values used in a flexfield segment.
A value set is a definition of the values acceptable for a flexfield segment. As such,
it specifies the minimum requirements that data must meet. This includes data
type, length, and other such attributes. Additionally, you can provide a value set
with a list of approved values. In this case only values from the approved list can
be entered or displayed in the segment.
2. Which validation type would be appropriate to use for the following data:
Customer zipcodes
None, character, numbers only
The ID numbers of your salespeople
Table, character, numbers only
The weight of various standard inventory items
None, character
Department numbers
Table, character, numbers only
Answers to the above questions may vary. There may not be a single correct
answer.
3. Does a Dependent validation type provide a list of values to the user? What about a
validation type of None?
Dependent value sets consist of several groups of values with each group
associated with a particular value from an Independent value set.
None type value sets perform minimal value checking. They do not have a list of
approved values.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-9

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 2-2
Use the sample values given below to propose an applicable Format Type. There may
be several possible answers.
000123 ___________________________________________________________
01-JAN-1998_______________________________________________________
1.234 _____________________________________________________________
COM ___________________________________________________________

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-10
Defining Flexfields

Practice 2-2 Solutions


.....................................................................................................................................................

Practice 2-2 Solutions


Use the sample values given below to propose an applicable Format Type. There may
be several possible answers.
000123 ______Character, Left-justify, Zero-fill__________________________
01-JAN-92 ___Standard Date_________________________________________
1.234 _______Numeric, length 4, precision 3 ___________________________
COM ______Character, Uppercase Only______________________________

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-11

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 2-3
Scenario
Your company has decided to implement an employee referral bonus program. To do
so, it will need to track the start date of the newly hired employee as well as some
information on the employee who referred the new hire. This information will
eventually be gathered using a descriptive flexfield on a personnel application form.
But first you need to create the value sets necessary to validate the data entered.
Practice Notes
Since many students access the system and create structures during this class, you
need a way to distinguish between the structures created by you and your
classmates. Therefore, you will be assigned a number by your instructor. Use this
number as a prefix wherever you see XXX_ included in the name of something
you are defining. This will ensure the definitions you create are unique.
Flexfield definitions can be created under many different responsibilities.
However, the system administration responsibility has access to all functions
needed for all practices.
1. Value Set Descriptions
Your new employee referral flexfield will gather five items of information:
The new employees hire date
The department number of the referring employee
The ID number of the referring employees manager
The name of the referring employee
The number of the referring employee
Each of these items of information needs to be validated. Use the following
descriptions to plan the necessary value sets:
1 The new hire date cannot be determined ahead of time and so cannot be validated
using a list of values. However, you should make sure a date value is entered. Call
this value set XXX_Hiredate.
2 Currently, not all departments within the company participate in this program, so
you need to create a value set containing the department numbers for the
participating departments. Departments have a four-character ID. Call your value
set XXX_Department.
3 There are multiple managers for each department participating in the bonus
program. Each manager has a four-character ID number. Create a value set to

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-12
Defining Flexfields

Practice 2-3
.....................................................................................................................................................

contain the ID numbers of the managers in the departments participating in the


program (Hint: the department numbers for the participating departments are
contained in the XXX_Department value set). Dependent value sets must have a
default value defined for each group of dependent values. Use XXXX as your
default value, and use Unassigned as the description for your default value. Call
your value set XXX_Manager.
4 The name of the referring employee will be entered in the flexfield manually.
Create a value set that allows alphabetic input. The length of the field should be 40
characters. Call your value set XXX_Employee.
5 The employee number will also be entered manually. Create a value set that allows
numbers only input. The length of the field should be 4. Call this value set
XXX_Emp_Number.
2. Planning Your Value Sets
Use the table below when defining your value sets. The values for some of the value
set attributes have already been specified for you. You need to decide the values for the
remaining attributes. Some of the attributes are not applicable to this practice.
Value Set Attribute
Value Set Name:
Description:
Security Enabled:
Enable Longlist:
Format Type:
Maximum Size:
Precision:
Min Value:
Max Value:
Validation Type:
Value Set Name:
Description:
Security Enabled:
Enable Longlist:
Format Type:
Maximum Size:
Precision:
Min Value:
Max Value:

Value
XXX_Hiredate
your description
Y
Y

y
l
n

O
e

XXX_Department
your description
Y
Y

&
l
a

n
r
te

I
A
O

s
U

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-13

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Value Set Attribute


Validation Type:
Value Set Name:
Description:
Security Enabled:
Enable Longlist:
Format Type:
Maximum Size:
Precision:
Min Value:
Max Value:
Validation Type:
Value Set Name:
Description:
Security Enabled:
Enable Longlist:
Format Type:
Maximum Size:
Precision:
Min Value:
Max Value:
Validation Type:
Value Set Name:
Description:
Security Enabled:
Enable Longlist:
Format Type:
Maximum Size:
Precision:
Min Value:
Max Value:
Validation Type:

Value
XXX_Manager
your description
Y
Y

XXX_Employee
your description
Y
Y

XXX_Emp_Number
your description
Y
Y

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

3. Defining Your Value Sets


Once you have planned your value sets, use the windows and procedures described in
this lesson to define your new value sets.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-14
Defining Flexfields

Practice 2-3
.....................................................................................................................................................

4. Defining Values for Your Value Sets


You need to explicitly define the appropriate values for the XXX_Department and the
XXX_Managers value sets. The chart below shows you the department numbers for
the participating departments and the managers for each of those departments. Use this
chart to define the values for the two value sets.
XXX_Department Value Set Values
Department
Department Name
Number
3004
Sales

7667

Development

9553

Training

XXX_Manager Value Set Values


Manager
Manager Name
Number
3021
Velasquez
4335
Menchu
5539
Nguyen
1119
Brown
2056
Nagayama
1795
Patel
1108
Dumas
7753
Chang
6294
Schwartz

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-15

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 2-3 Solution


Scenario
Your company has decided to implement an employee referral bonus program. To do
so, it will need to track the start date of the newly hired employee as well as some
information on the employee who referred the new hire. This information will
eventually be gathered using a descriptive flexfield on a personnel application form.
But first you need to create the value sets necessary to validate the data entered.
Practice Notes
Since many students access the system and create structures during this class, you
need a way to distinguish between the structures created by you and your
classmates. Therefore, you will be assigned a number by your instructor. Use this
number as a prefix wherever you see XXX_ included in the name of something
you are defining. This will ensure the definitions you create are unique.
Flexfield definitions can be created under many different responsibilities.
However, the system administration responsibility has access to all functions
needed for all practices.
1. Value Set Descriptions
Your new employee referral flexfield will gather five items of information:
The new employees hire date
The department number of the referring employee
The ID number of the referring employees manager
The name of the referring employee
The number of the referring employee
Each of these items of information needs to be validated. Use the following
descriptions to plan the necessary value sets.
1 The new hire date cannot be determined ahead of time and so cannot be validated
using a list of values. However, you should make sure a date value is entered. Call
this value set XXX_Hiredate.
2 Currently, not all departments within the company participate in this program, so
you need to create a value set containing the department numbers for the
participating departments. Departments have a four-character ID. Call your value
set XXX_Department.
3 There are multiple managers for each department participating in the bonus
program. Each manager has a four-character ID number. Create a value set to

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-16
Defining Flexfields

Practice 2-3 Solution


.....................................................................................................................................................

contain the ID numbers of the managers in the departments participating in the


program (Hint: the department numbers for the participating departments are
contained in the XXX_Department value set). Dependent value sets must have a
default value defined for each group of dependent values. Use XXXX as your
default value, and use Unassigned as the description for your default value. Call
your value set XXX_Manager.
4 The name of the referring employee will be entered in the flexfield manually.
Create a value set that allows alphabetic input. The length of the field should be 40
characters. Call your value set XXX_Employee.
5 The employee number will also be entered manually. Create a value set that allows
numbers only input. The length of the field should be 4. Call this value set
XXX_Emp_Number.
2. Planning Your Value Sets
Use the table below when defining your value sets. The values for some of the value
set attributes have already been specified for you. You need to decide the values for the
remaining attributes. Some of the attributes are not applicable to this practice.
Value Set Attribute
Value Set Name:
Description:
Security Enabled:
Enable Longlist:
Format Type:
Maximum Size:
Precision:
Min Value:
Max Value:
Validation Type:
Value Set Name:
Description:
Security Enabled:
Enable Longlist:
Format Type:
Maximum Size:
Precision:
Min Value:
Max Value:

Value
XXX_Hiredate
your description
Y
Y

y
l
n

O
e

XXX_Department
your description
Y
Y

&
l
a

n
r
te

I
A
O

s
U

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-17

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Value Set Attribute


Validation Type:
Value Set Name:
Description:
Security Enabled:
Enable Longlist:
Format Type:
Maximum Size:
Precision:
Min Value:
Max Value:
Validation Type:
Value Set Name:
Description:
Security Enabled:
Enable Longlist:
Format Type:
Maximum Size:
Precision:
Min Value:
Max Value:
Validation Type:
Value Set Name:
Description:
Security Enabled:
Enable Longlist:
Format Type:
Maximum Size:
Precision:
Min Value:
Max Value:
Validation Type:

Value
XXX_Manager
your description
Y
Y

XXX_Employee
your description
Y
Y

XXX_Emp_Number
your description
Y
Y

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

3. Defining Your Value Sets


Once you have planned your value sets, use the windows and procedures described in
this lesson to define your new value sets.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-18
Defining Flexfields

Practice 2-3 Solution


.....................................................................................................................................................

Task 1: Defining XXX_Hiredate


1. Navigate to the Value Sets window.
System Administrator (N)>Application>Validation>Sets
2. Enter the value set information you have planned. Your window should look
similar to the window below.

3. Save your work when finished.

y
l
n

Task 2: Defining XXX_Department


1. Navigate to the Value Sets window.
System Administration (N)>Application>Validation>Sets
2. Enter the value set information you have planned. Your window should look
similar to the window below.

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-19

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

3. Save your work when finished.


Task 3: Defining XXX_Manager
1. Navigate to the Value Sets window.
System Administration (N)>Application>Validation>Sets
2. Enter the value set information you have planned. Your window should look
similar to the window below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

3. Click the Edit Information button.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-20
Defining Flexfields

Practice 2-3 Solution


.....................................................................................................................................................

4.Click the LOV button on the toolbar to display a list of Independent Value Sets.
Select the appropriate parent value set.
5. When you return to the Dependent Value Set Information window, the parent
value set you selected appears. Enter XXX as the default value and Unassigned as
the description. Your window should like similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

6. Save your work

Task 4: Defining XXX_Employee


1. Navigate to the Value Sets window.
System Administration (N)>Application>Validation>Sets

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-21

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

2. Enter the value set information you have planned. Your window should look
similar to the window below.

3. Save your work.


Task 5: Defining XXX_Emp_Number
1. Navigate to the Value Sets window.
System Administration (N)>Application>Validation>Sets

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-22
Defining Flexfields

Practice 2-3 Solution


.....................................................................................................................................................

2. Enter the value set information you have planned. Your window should look
similar to the window below.

3. Save your work.


4. Defining Values for Your Value Sets
You need to explicitly define the appropriate values for the XXX_Department and the
XXX_Managers value sets. The chart below shows you the department numbers for
the participating departments and the managers for each of those departments. Use this
chart to define the values for the two value sets.
XXX_Department Value Set Values
Department
Department Name
Number
3004
Sales

7667

Development

9553

Training

n
I
e

n
r
te

O
e

XXX_Manager Value Set Values


Manager
Manager Name
Number
3021
Velasquez
4335
Menchu
5539
Nguyen
1119
Brown
2056
Nagayama
1795
Patel
1108
Dumas
7753
Chang
6294
Schwartz

&
l
a

y
l
n

I
A
O

s
U

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-23

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Task 1: Defining Department Value Set Values


1. Navigate to the Find Value Set window.
System Administrator (N)>Application>Validation>Values
2. Click the LOV button on the toolbar to display a list of all the value sets.

3. Select the XXX_Department Value set and then click the Find button.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-24
Defining Flexfields

Practice 2-3 Solution


.....................................................................................................................................................

4. On the resulting Segment Values window enter the values for this value set as
specified in the practice directions. Your window should look similar to the one
below.

y
l
n

O
e

5. Save your work.

&
l
a

I
A
O

s
U

n
r
te

Task 2: Defining XXX_Manager Value Set Values


1. Use the same steps you used above to define the XXX_Manager value set.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-25

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

2. Since the XXX_Manager value set is a Dependent type value set, you need to
specify an independent value for each group of dependent values you define.
Click in the Independent value field and click the LOV button on the toolbar to
display a list of the values for the Independent value set (XXX_Department)
associated with this dependent value set (XXX_Manager).

3. On the resulting Segment Values window, you see that the default value you
defined previously shows up as the first value for that segment. Continue defining
the managers for this department as outlined in the practice directions. When
you finish your window should look similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-26
Defining Flexfields

Practice 2-3 Solution


.....................................................................................................................................................

4. Save your work.


5. Use the same procedure to define the managers for the remaining two
departments.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-27

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 3-1
In this practice you determine the user name and the resources available for a
descriptive flexfield within the Oracle Receivables application.
1. Navigate to the Payment Methods alternate regions of the Customers - Standard
form
Oracle Receivables responsibility:
(N) Customers>Standard>Payment Methods (alternate region)
2. Notice the descriptive flexfield on the right side of the form. Use the procedures
discussed to determine:
The user name of this descriptive flexfield
__________________________________________________________________
The number of ATTRIBUTE columns available for use
__________________________________________________________________

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-28
Defining Flexfields

Practice 3-1 Solution


.....................................................................................................................................................

Practice 3-1 Solution


In this practice you determine the user name and the resources available for a
descriptive flexfield within the Oracle Receivables application.
1. Navigate to the Payment Methods alternate regions of the Customers - Standard
form.
Oracle Receivables responsibility:
(N) Customers>Standard>Payment Methods (alternate region)
1. Use the navigation path to the window below.

y
l
n

O
e

s
U

2. Notice the descriptive flexfield on the right side of the form. Use the procedures
discussed to determine:
The user name of this descriptive flexfield
__________________________________________________________________
The number of ATTRIBUTE columns available for use
__________________________________________________________________
2. Click in the Payment Method Name field. Select Help>Tools> Examine.
Your window should look similar to the window below.

&
l
a

I
A
O

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-29

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

3. Note that the Block name is CUST_PAYMETH.


4. Click the down button to display a list of block names available for this form.
Your window should look similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

5. Select the $DESCRIPTIVE_FLEXFIELD$ block.

l
c
a

r
O

.....................................................................................................................................................
A-30
Defining Flexfields

Practice 3-1 Solution


.....................................................................................................................................................

6. Click the down button for the Field to display a list of descriptive flexfields for
this form. Your window should look similar to the one shown below.

7. Scroll to the entry for CUST_PAYMETH and select the entry. The user name
for the descriptive flexfield appears in the Value area of the Examine Field and
Variable Values window. Your window should look similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-31

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

8. Make a note of the user name.


9. Navigate to the Descriptive Flexfield Segments window.
Oracle Receivables (N)>Setup>Financials>Flexfield>Descriptive>
Segments
10. Click in the Application field to display a list of descriptive flexfields by
application.
11. Scroll to the Oracle Receivables descriptive flexfield called Customer
Payment Method Information and select it. Your window should look similar to
the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-32
Defining Flexfields

Practice 3-1 Solution


.....................................................................................................................................................

12. On the resulting Descriptive Flexfields Segments window, click the Segments
button. This takes you to the Segments Summary window.
13. Click in the Column field and click the LOV button on the toolbar to display a
list of selectable columns for use. Your window should look similar to the one
below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-33

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

14. Since this display is sorted by column name, you can easily see the number of
available columns you have to use.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-34
Defining Flexfields

Practice 3-2
.....................................................................................................................................................

Practice 3-2
This lesson uses a sample scenario that assumes a business wishes to gather additional
payment information for all the types of sales transactions it performs. In this practice,
you are given a list of the various items of information and asked to organize them
according to the process presented so far.
You should first decide the possible types of payment arrangements assuming the
items of information given. (Hint: There are four). You then need to decide which
information should be gathered for all payment types and which information is
relevant only for certain payment types.
Information to Be Gathered
Credit card number
Check number
Down payment amount
Loan account number
Sales transaction number
Store number
Credit card expiration date
Drivers license number (or other additional ID)
Payment terms (e.g., 30 days, not interest)
Store department number
Cash amount tendered

y
l
n

O
e

s
U

Payment Types:
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

&
l
a

I
A
O

Common Items of Information


________________________________
________________________________
________________________________

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-35

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Payment-Type Related Items of Information


Payment Type 1: ______________________________________________________
Items:

Payment Type 2: _______________________________________________________


Items:

Payment Type 3: _______________________________________________________


Items:

y
l
n

O
e

s
U

Payment Type 4: _______________________________________________________


Items:

&
l
a

I
A
O

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-36
Defining Flexfields

Practice 3-2 Solution


.....................................................................................................................................................

Practice 3-2 Solution


This lesson uses a sample scenario that assumes a business wishes to gather additional
payment information for all the types of sales transactions it performs. In this practice,
you are given a list of the various items of information and asked to organize them
according to the process presented so far.
You should first decide the possible types of payment arrangements assuming the
items of information given. (Hint: There are four). You then need to decide which
information should be gathered for all payment types and which information is
relevant only for certain payment types.
Information to Be Gathered
Credit card number
Check number
Down payment amount
Loan account number
Sales transaction number
Store number
Credit card expiration date
Drivers license number (or other additional ID)
Payment terms (e.g., 30 days, not interest)
Store department number
Cash amount tendered

y
l
n

O
e

s
U

Payment Types:
____Payment by cash__________________________________________________
____Payment by check_________________________________________________
____Payment by financing______________________________________________
____Payment by credit card_____________________________________________

&
l
a

I
A
O

Common Items of Information


____Store number___________________________________
____Department number_____________________________
____Transaction number_____________________________

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-37

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Payment-Type Related Items of Information


Payment Type 1: ____Cash payment ______________________________________
Items:
Cash amount tendered

Payment Type 2: ____Credit card payment ________________________________


Items:
Credit card number
Credit card expiration date

Payment Type 3: ____Check payment _____________________________________


Items:

y
l
n

Check number
Additional ID number

O
e

s
U

Payment Type 4: ___Finance payment_____________________________________


Items:
Loan account number
Down payment amount
Payment terms

&
l
a

I
A
O

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-38
Defining Flexfields

Practice 3-3
.....................................................................................................................................................

Practice 3-3
In Practice 3-2, you organized payment-related information according to usage and
determined which items of information were common to all typement types and which
were specific to a particular payment type.
In this practice, design the layout of all the flexfield structures necessary to process the
payment information being captured. Design a structure for each payment type,
showing the global segments and the context-sensitive segments. Assume that you can
use the Payment Type field on the base window as a reference field.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-39

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 3-3 Solution


In Practice 3-2, you organized payment-related information according to usage and
determined which items of information were common to all typement types and which
were specific to a particular payment type.
In this practice, design the layout of all the flexfield structures necessary to process the
payment information being captured. Design a structure for each payment type,
showing the global segments and the context-sensitive segments. Assume that you can
use the Payment Type field on the base window as a reference field.
Store Number:
Department number:
Transaction number:

Store Number:
Department number:
Transaction number:

Cash tendered:

Credit card number:


Expiration date:

y
l
n

O
e

Store Number:
Department number:
Transaction number:
Check number:
Additional ID:

n
I
e

n
r
te

&
l
a

I
A
O

s
U

Store Number:
Department number:
Transaction number:
Down payment
amount:
Payment terms:
Loan account number:

l
c
a

r
O

.....................................................................................................................................................
A-40
Defining Flexfields

Practice 4-1
.....................................................................................................................................................

Practice 4-1
Scenario
You company is investigating implementing a plan to encourage employees to make
greater use of the local mass transit systems. However, since it is still in the planning
stage, it needs information on how each employee commutes to work. You will gather
information by using a descriptive flexfield.
Practice Note
Since no two people can define the same descriptive flexfield, your instructor will
assign you a descriptive flexfield to use during your practice. You will also be told the
navigation path to that flexfield. Do not worry about the real-world relevance of the
descriptive flexfield you are assigned to the scenario of the workshop.
Defining the Header Information
This flexfield will gather the following three items of information about each
employee:
The employee name
The employee number
Estimated distance travelled
Use the chart below to define your descriptive flexfield header information.

y
l
n

Application
Title
Segment Separator

Supplied by your instructor


Supplied by your instructor
N/A

O
e

s
U

In this practice, your descriptive flexfield consists of only global segments so no


context-related information is required. Be sure to turn off context processing by
clearing the Override Allowed and Display Context checkboxs.

I
A
O

Defining Global Segments


After you have defined your initial descriptive flexfield definitions, you must define
the information on the segments that make up your descriptive flexfield. Use the
following chart to define the three segments for your flexfield. Remember to define
these segments for the Global Data Elements structure.
When you have entered and saved your definitions, freeze your definition and compile
the flexfield.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-41

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Segment Attribute
Number
Name
Description:
LOV Prompt:
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size
Number
Name
Description
LOV Prompt
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size
Number
Name
Description
LOV Prompt
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size

Attribute Value
1
Employee Number
your description
N/A
Employee Number:
ATTRIBUTE1
XXX_Emp_Number
Y
Y
4
2
Employee Name
your description
N/A
Employee Name:
ATTRIBUTE2
XXX_Employee
Y
Y
40
3
Commute Distance
your description
N/A
Commute Distance:
ATTRIBUTE3
N/A
Y
Y
10

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-42
Defining Flexfields

Practice 4-1
.....................................................................................................................................................

Testing Your Flexfield


Once you have defined your descriptive flexfield, use the navigate path given to access
the window on which your flexfield appears. Open the flexfield and enter data.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-43

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 4-1 Solution


Scenario
You company is investigating implementing a plan to encourage employees to make
greater use of the local mass transit systems. However, since it is still in the planning
stage, it needs information on how each employee commutes to work. You will gather
this information by using a descriptive flexfield.
Practice Note
Since no two people can define the same descriptive flexfield, your instructor will
assign you a descriptive flexfield to use during your practice. You will also be told the
navigation path to that flexfield. Do not worry about the real-world relevance of the
descriptive flexfield you are assigned to the scenario of the workshop.
Defining the Header Information
This flexfield will gather the following three items of information about each
employee:
The employee name
The employee number
Estimated distance travelled
Use the chart below to define your descriptive flexfield header information.
Application
Title
Segment Separator

y
l
n

Supplied by your instructor


Supplied by your instructor
N/A

O
e

s
U

In this practice, your descriptive flexfield consists of only global segments so no


context-related information is required. Be sure to turn off context processing by
clearing the Override Allowed checkbox.
Solution
1. Navigate to the Descriptive Flexfield Segments window.
(N)>Application>Flexfield>Descriptive>Segments
2. Use the Application and Flexfield name to find the descriptive flexfield
definition for the descriptive flexfield you are assigned. Since you are not defining
any context structures for this practice, at this point your window should look
similar to the one below, except that it will reflect your assigned flexfield (this
practice solution uses the Currencies descriptive flexfield of the Application
Object Library application).

&
l
a

I
A
O

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-44
Defining Flexfields

Practice 4-1 Solution


.....................................................................................................................................................

3. The Global Data Elements structure should already be highlighted. Click the
Segments button to go to the Segments Summary window.
Defining Global Segments
After you have defined your initial descriptive flexfield definitions, you must define
the information on the segments that make up your descriptive flexfield. Use the
following chart to define the three segments for your flexfield. Remember to define
these segments for the Global Data Elements structure.
When you have entered and saved your definitions, freeze your definition and compile
the flexfield.

y
l
n

O
e

Segment Attribute
Number
Name
Description:
LOV Prompt:
Window Prompt
Column
Value Set
Displayed
Enabled

r
O

&
l
a

n
r
te

n
I
e

l
c
a

I
A
O

Attribute Value
1
Employee Number
your description
Number:
Employee Number:
ATTRIBUTE1
XXX_Emp_Number
Y
Y

s
U

.....................................................................................................................................................
Defining Flexfields
A-45

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Segment Attribute
Display Size
Number
Name
Description
LOV Prompt
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size
Number
Name
Description
LOV Prompt
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size

Attribute Value
4
2
Employee Name
your description
Name:
Employee Name:
ATTRIBUTE2
XXX_Employee
Y
Y
40
3
Commute Distance
your description
Distance
Commute Distance:
ATTRIBUTE3
N/A
Y
Y
10

y
l
n

O
e

Solution
1. While on the Segments Summary window, enter the segment information as
specified in the chart above. When you are finished, your window should look
similar to the one below.

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-46
Defining Flexfields

Practice 4-1 Solution


.....................................................................................................................................................

2. Your instructions specify a display size for the field. You can check the display
size on the Segments window. Highlight the segment you wish to check and click
the Open button. This will take you to the Segments window, which shows
detailed information about that segment.
3. Your window should look similar to the one below. The display size values are
specified in the lower left corner.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-47

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

4. When you have finished defining your descriptive flexfield information, save
your work.
5. Freeze the definition and compile the flexfield definition.
Testing Your Flexfield
Once you have defined your descriptive flexfield, use the navigate path given to access
the window on which your flexfield appears. Open the flexfield and test the segments.
Solution
1. Use the navigation path at end of this appendix to navigate to the form
containing your flexfield. Open the flexfield and test the segments. Your window
should look similar to the one below:

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-48
Defining Flexfields

Practice 4-2
.....................................................................................................................................................

Practice 4-2
Scenario
After using your existing descriptive flexfield for a while, you decide that the
information you are obtaining is not really sufficient for your planning purposes. You
decide to expand the flexfield to gather more information on the different commuting
methods used by each employee.
1. Modifying the Existing Flexfield Definition
This modified flexfield will contain all the fields of the previous flexfield. However,
you will add one more global segment and create three different contexts to document
additional information about the commuting habits of employees.
Adding the New Global Segment You need to add an additional global segment
called Time Spent. This segment will track the amount of time the employee spends
commuting. Use the chart below to define your new segment for the Global Data
Elements structure.
Segment Attribute
Number
Name
Description:
LOV Prompt:
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size

Attribute Value
4
Time Spent
your description
Time Spent
Time Spent:
ATTRIBUTE4
N/A
Y
Y
10

&
l
a

I
A
O

y
l
n

O
e

s
U

Creating the New Contexts To gather information about each employees


commute, you need to create three context structures. Call these structures:
Walk/Bike
Drive
Mass Transit

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-49

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Context Descriptions
Walk/Bike. Since the Walk/Bike context needs to be selectable as a possible
commute method, it must be defined as a context structure. However, other than
simply documenting that the employee uses this method, it does not need to track
any additional information and therefore does not need any segments defined for
it.
Drive. The Drive context stores two additional items of information: whether the
employee participates in a carpool and the estimated gas used per week.
Use the chart below to plan these two segments.
Context
Drive

Segment Attribute
Number
Name
Description:
LOV Prompt:
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size
Number
Name
Description
LOV Prompt
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size

&
l
a

n
r
te

Attribute Value
10
Car Pool Y/N
your description
Car Pool:
Car Pool:
N/A
Y
Y
3
20
Gas
your description
Estimated Gas:
Estimated Gas:

I
A
O

y
l
n

O
e

s
U

N/A
Y
Y
10

Mass Transit. The mass transit context stores two items of information: the type of
mass transit used and the amount spent on fares for each method. Use the chart
below when planning the segments for this structure.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-50
Defining Flexfields

Practice 4-2
.....................................................................................................................................................

Mass Transit

Number
Name
Description:
LOV Prompt:
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size
Number
Name
Description:
LOV Prompt:
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size

10
Transit Type
your description
Transit Type:
Transit Type:
N/A
Y
Y
10
20
Total Weekly Fare
your description
Total Fare: $
Total Fare: $
N/A
Y
Y
5

y
l
n

Determining ATTRIBUTE Columns You will notice that the attribute value for
Column was left empty in the charts above. Although each global segment needs an
ATTRIBUTE column of its own, context-sensitive columns can share columns.
Use the chart below and design a layout that will accommodate all the segments listed
above in the least number of columns (you should not need all the spaces on the chart).
The global segments have already been filled in. Also note that you dont need an
ATTRIBUTE column to store the context values since they are stored in a column
called CONTEXT.

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-51

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Column Name
CONTEXT
ATTRIBUTE1
ATTRIBUTE2
ATTRIBUTE3
ATTRIBUTE4
ATTRIBUTE5

Segment Name
Walk/Bike
Employee Name
Employee Number
Commute Distance
Time Spent

Segment Name
Drive
Employee Name
Employee Number
Commute Distance
Time Spent

Segment Name
Mass Transit
Employee Name
Employee Number
Commute Distance
Time Spent

ATTRIBUTE6
ATTRIBUTE7
ATTRIBUTE8

2. Defining Your New Contexts


After you have allocated your segments among the ATTRIBUTE columns, you are
ready to define your new context-sensitive structures. Use all the information you have
so far to define the structures required to implement this flexfield. Use the context
prompt Select Commute Type: and specify the Drive context as the default. Allow the
user to switch between contexts. Remember to unfreeze the definition before making
any changes. Also remember to save your definitions and freeze and compile them
when you are finished.

y
l
n

O
e

s
U

3. Testing Your Flexfield


When you have finished defining your structures, navigate to the window and test your
new descriptive flexfield.

&
l
a

I
A
O

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-52
Defining Flexfields

Practice 4-2 Solution


.....................................................................................................................................................

Practice 4-2 Solution


Scenario
After using your existing descriptive flexfield for a while, you decide that the
information you are obtaining is not really sufficient for your planning purposes. You
decide to expand the flexfield to gather more information on the different commuting
methods used by each employee.
1. Modifying the Existing Flexfield Definition
This modified flexfield will contain all the fields of the previous flexfield. However,
you will add one more global segment and create three different contexts to document
additional information about the commuting habits of employees.
Adding the New Global Segment You need to add an additional global segment
called Time Spent. This segment will track the amount of time the employee spends
commuting. Use the chart below to define your new segment for the Global Data
Elements structure.
Segment Attribute
Number
Name
Description:
LOV Prompt:
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size

Attribute Value
4
Time Spent
your description
Time Spent
Time Spent:
ATTRIBUTE4
N/A
Y
Y
10

&
l
a

I
A
O

y
l
n

O
e

s
U

Creating the New Contexts To gather information about each employees


commute, you need to create three context structures. Call these structures:
Walk/Bike
Drive
Mass Transit

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-53

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Context Descriptions
Walk/Bike. Since the Walk/Bike context needs to be selectable as a possible
commute method, it must be defined as a context structure. However, other than
simply documenting that the employee uses this method, it does not need to track
any additional information and therefore does not need any segments defined for
it.
Drive. The Drive context stores two additional items of information: whether the
employee participates in a carpool and the estimated gas used per week.
Use the chart below to plan these two segments.
Context
Drive

Segment Attribute
Number
Name
Description:
LOV Prompt:
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size
Number
Name
Description
LOV Prompt
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size

&
l
a

n
r
te

Attribute Value
10
Car Pool Y/N
your description
Car Pool:
Car Pool:
N/A
Y
Y
3
20
Gas
your description
Estimated Gas:
Estimated Gas:

I
A
O

y
l
n

O
e

s
U

N/A
Y
Y
10

Mass Transit. The mass transit context stores two items of information: the type of
mass transit used and the amount spent on fares for each method. Use the chart
below when planning the segments for this structure.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-54
Defining Flexfields

Practice 4-2 Solution


.....................................................................................................................................................

Mass Transit

Number
Name
Description:
LOV Prompt:
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size
Number
Name
Description:
LOV Prompt:
Window Prompt
Column
Value Set
Displayed
Enabled
Display Size

10
Transit Type
your description
Transit Type:
Transit Type:
N/A
Y
Y
10
20
Total Weekly Fare
your description
Total Fare: $
Total Fare: $
N/A
Y
Y
5

y
l
n

O
e

Determining ATTRIBUTE Columns You will notice that the attribute value for
Column was left empty in the charts above. Although each global segment needs an
ATTRIBUTE column of its own, context-sensitive columns can share columns.
Use the chart below and design a layout that will accommodate all the segments listed
above in the least number of columns (you should not need all the spaces on the chart).
The global segments have already been filled in. Also note that you dont need an
ATTRIBUTE column to store the context values since they are stored in a column
called CONTEXT.

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-55

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Column Name
CONTEXT
ATTRIBUTE1
ATTRIBUTE2
ATTRIBUTE3
ATTRIBUTE4
ATTRIBUTE5

Segment Name
Walk/Bike
Employee Name
Employee Number
Commute Distance
Time Spent

ATTRIBUTE6

Segment Name
Drive
Employee Name
Employee Number
Commute Distance
Time Spent
Carpool Y/N

Segment Name
Mass Transit
Employee Name
Employee Number
Commute Distance
Time Spent
Transit Type

Estimated Gas

Total Weekly Fare

ATTRIBUTE7
ATTRIBUTE8

2. Defining Your New Contexts


After you have allocated your segments among the ATTRIBUTE columns, you are
ready to define your new context-sensitive structures. Use all the information you have
so far to define the structures required to implement this flexfield. Use the context
prompt Select Commute Type: and specify the Drive context as the default. Allow the
user to switch between contexts. Remember to unfreeze the definition before making
any changes. Also remember to save your definitions and freeze and compile them
when you are finished.
Solution
1. Access and unfreeze your definition. When you have finished, your window
should look similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-56
Defining Flexfields

Practice 4-2 Solution


.....................................................................................................................................................

2. You need to add an additional segment to the Global Data Elements structure.
This is the Time Spent segment. Select the Global Data Elements structure and
click the Segments button.
3. On the resulting window, add the information for the Time Spent field. When
you have finished, your window should look similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-57

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

4. Save your work and go back to the Descriptive Segments window.


5. You can add all three context structures on the same window. Specify the
context structure information as specified in the practice directions. When you
have finished, your window should look similar to the one below.

y
l
n

6. Save your work.


7. Define the segments for the Drive context by selecting that structure and
clicking the Segments button. This takes you to the Segments window.
8. Enter the segment information as specified in the chart for that structure.
When you have finished, your window should look similar to the one below.

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-58
Defining Flexfields

Practice 4-2 Solution


.....................................................................................................................................................

9. Save your work.


10. Return to the Descriptive Flexfield Segments window.
11. Define the segments for the Mass Transit context by selecting that structure
and clicking the Segments button. This takes you to the Segments window.
12. Enter the segment information as specified in the chart for that structure.
When you have finished, your window should look similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-59

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

13. When you have defined your context-sensitive structures, define the context
information as specified in the practice directions. When you have finished, your
window should look similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

14. Save your work.


15. Freeze and compile your definition.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-60
Defining Flexfields

Practice 4-2 Solution


.....................................................................................................................................................

3.Testing Your Flexfield


When you have finished defining your structures, navigate to the window and test your
new descriptive flexfield.
16. Use the navigation path to navigate to the window on which your descriptive
flexfield appears.
17. Open the flexfield and test the different contexts. Your window should look
similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-61

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 5-1
1. Identify the following as a characteristic of a key flexfield, descriptive flexfield, or
both.
Characteristic
Extension of a standard window
Sometimes requires identifiable segments
No restrictions on structure
Use is required by the application
Provides unique identifiers

Key

Descriptive

Both

2. Identify one key flexfield used by the following applications:


Oracle Assets: _________________________________________________________
Oracle Receivables: ____________________________________________________
Oracle General Ledger: _________________________________________________
Oracle Inventory: ______________________________________________________

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-62
Defining Flexfields

Practice 5-1 Solution


.....................................................................................................................................................

Practice 5-1 Solution


1. Identify the following as a characteristic of a key flexfield, descriptive flexfield, or
both.
Characteristic
Extension of a standard window
Sometimes requires identifiable segments
No restrictions on structure
Use is required by the application
Provides unique identifiers

Key

Descriptive

Both
X

X
X
X
X

2. Identify one key flexfield used by the following applications:


Oracle Assets: __________Asset Key Flexfield _____________________________
Oracle Receivables: ______Territory Flexfield ______________________________
Oracle General Ledger: ___Accounting Flexfield ____________________________
Oracle Inventory: _______System Items Flexfield __________________________

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-63

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 5-2
Scenario
You have decided that you need to implement a new structure of the Accounting
Flexfield to meet your users business needs. Since careful planning and
documentation is necessary to ensure an effective implementation, you sit down with
your users to decide what key flexfield setup is best for them.
The Accounting Flexfield specifies accounting codes, where such a code is composed
of several pieces. The flexfield has a maximum of 30 segments, each having a width of
25. There are three unique, required qualifiers:
Balancing segment
Cost center segment
Natural account segment
For this practice, use the worksheet on the following page to design an accounting
flexfield structure. You will not actually implement this plan, so you do not have to
plan unique names as with the prior practices. Some of the questions you need to
decide are:
What will you call your Accounting Flexfield structure?
How many segments will be in your structure?
What will the name of the segments be?
Which segment will be assigned which qualifier?
Will you allow cross-validation?
What value sets will you use?
Will you use security on any segments?
Hint: If you are unfamiliar with the Accounting Flexfield, plan a structure with four
segments called Company, Cost Center, Account, Subaccount. Make the Company the
balancing segment, the Cost Center segment the cost center segment, Account the
natural account segment.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-64
Defining Flexfields

Practice 5-2
.....................................................................................................................................................

Overall Key Flexfield Worksheet


Date:
Notes:
Key Flexfield Title
Available Columns

Cross Validation

Freeze Rollups

Dynamic Inserts

Number of
Segments

Segment Separator

View Name

Enabled

Flexfield Structure Name

Page
of
Flexfield Code

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-65

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 5-2 Solution


This practice will have multiple correct solutions. Its purpose was to force you to
specify values for all the necessary attribtues of your flexfield and to decide which of
the optional features you will implement. Therefore, your answers may be different
from those of your neighbor. Your instructor may ask you to present your completed
design to the class for discussion.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-66
Defining Flexfields

Practice 5-3
.....................................................................................................................................................

Practice 5-3
In the previous practice, you planned the structure-level attributes for a hypothetical
Accounting flexfield. In completing that practice, one of the attributes you decided
was the number of segments for your structure. In this practice, you will design the
segment-level attributes for each of the segments needed by your Accounting flexfield
structure. Some of the questions you need to answer are:
What will each segments name be?
Will the segment have a default value?
Which column will store the segments data?
What is the maximum size of the data to be stored?
How big should the display field for the segment be?
Should the segment be secured?

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-67

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Key Flexfield Structure Worksheet (with Flexfield Qualifiers)


Date:
Page
Note:
of
Key Flexfield Title

Segment Name

Prompt

Column

Value Set
Max. Size

No.

Number of Segments

Display Size

Structure Name

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

Key Flexfield Structure Worksheet (with Flexfield Qualifiers)


Date:
Page
Note:
of

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-68
Defining Flexfields

Practice 5-3
.....................................................................................................................................................

Key Flexfield Structure Worksheet (with Flexfield Qualifiers)


Key Flexfield Title

Default

Qualifiers

Displayed

Name

Required

No.

Number of Segments

Security Enabled

Structure Name

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-69

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 5-3 Solution


This practice will have multiple correct solutions. Its purpose was to force you to
specify the attributes for each of the segments you previously identified for your
Accounting Flexfield. Therefore, your answers may be different from those of your
neighbor. Your instructor may ask you to present your completed design to the class
for discussion.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-70
Defining Flexfields

Practice 6-1
.....................................................................................................................................................

Practice 6-1
In this practice you use the specifications given to define an Accounting key flexfield
structure with its value sets and values. You also define all qualifiers needed.

N N N n/a
N N N n/a
N N N n/a

Min Value

n/a
n/a
n/a

Right Justify

Numbers only

2
3
4

Upper case

Precision

Y N Char
Y N Char
Y N Char

Max Size

XXX_CO
XXX_Cost
XXX_Account

LongList

Format
Type
Security

Name

Max Value

1. Defining Accounting Flexfield Value Sets


In step 2 you will define your new Accounting flexfield structure. In your Accounting
flexfield definition you will need to declare a value set for each segment you define.
You cannot reference a value set that does not exist. Therefore you must define your
value sets first. Use the information in the chart below to define the attributes of each
value set. Any attributes not mentioned in the chart can be left to default. Remember
to save each of your value set definitions.

n/a
n/a
n/a

Validation
Type

Independent
Independent
Independent

y
l
n

2. Defining the Accounting Flexfield Structure


Once your value sets exist, you can define your new Accounting flexfield structure.
First find the existing Accounting flexfield definition. The Accounting flexfield is
associated with the Oracle General Ledger application. Unfreeze the definition before
you make any changes.
Use the information in the charts below to specify the structure attributes. Use your
student number wherever the entries show XXX_. This will make all the entries you
create unique. Remember to freeze your definition and recompile the flexfield
structure when you are finished.

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-71

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Flexfield Attributes
Application
Key Flexfield Title
Structure Title
Allow Dynamic Insertion
Cross-Validate Segments
Segment Separator

Oracle General Ledger


Accounting Flexfield
XXX_Accounting
Y
Y
-

20
30

Window
Prompt

Segment1

XXX_CO

CO

Company

Balancing

Segment2

XXX_Cost

CC

Cost Center

Segment3

XXX_Account

ACCT

Cost
Center
Account

Column

LOV Prompt

Value Set

Number

Name

10

Display Size

Structure Attributes

XXX_Co
mpany
XXX_Cost
Center
XXX_Acc
ount

Qualifier

Account

y
l
n

Define your segments and their attributes as specified in the table below. Remember to
specify the flexfield qualifiers as instructed in the chart above. You cannot
successfully compile your structure otherwise.
Make all segments displayed and required. Enable security on the Company segment.
There are three flexfield qualifiers you must specify for your definition to be complete.
You must declare which segment is the balancing segment, which segment is the cost
center segment, and which segment is the natural account segment. Usethe
information in the chart above to define the appropriate flexfield qualifier for each
segment.

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-72
Defining Flexfields

Practice 6-1
.....................................................................................................................................................

3. Defining Accounting Flexfield Value Set Values


Since each value set you defined in the previous step was an independent validation
type, you must also define the values each value set contains. For the Accounting
flexfield, it is also important to specify the segment qualifier for the values for the
Account segment.
Use the information in the charts below to define all the values you need for your
Accounting flexfield.
Value Set
Name
XXX_CO

Value

Description

00
01
02

Corporate
US Operations
Asia Pacific Operations

Value Set
Name
XXX_Cost

Value

Description

A01
A02
A03
A04

A01 Cost Center


A02 Cost Center
A03 Cost Center
A04 Cost Center

Value

Description

1000
1200
2000
3310
4010
4020
5010
5020

Cash
Accounts Receivable
Accounts Payable
Retained Earnings
Interest Income
Sales Income
Travel Expense
Office Expense

Value Set
Name
XXX_Account

n
r
te

&
l
a

Account Type Segment


Qualifier
n/a
n/a
n/a

Account Type Segment


Qualifier
n/a
n/a
n/a
n/a

y
l
n

O
e

Account Type Segment


Qualifier

I
A
O

s
U

Asset
Asset
Liability
Ownership/Stock
Revenue
Revenue
Expense
Expense

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-73

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

For values defined for the natural account segment, you must assign sement qualifiers.
One important qualifier for each value is the type of account indicator. Use the
specifications in the chart above and define an account indicator for each account
value you define.
4. Testing Your New Accounting Flexfield
To test your new flexfield, use the following steps:
1. In the General Ledger (Vision Operations) responsibility, navigate to the Set of
Books window:
(N)>Setup>Financials>Books>Define
2. Click in the Chart of Accounts field and display the list of values.
3. Select your flexfield structure from the list.
4. Click in the Retained Earnings field in the Accounts block and click the LOV button
on the toolbar. Your flexfield structure should appear. For each segment, use the list of
values display to check the values.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-74
Defining Flexfields

Practice 6-1 Solution


.....................................................................................................................................................

Practice 6-1 Solution


In this practice you will use the specifications given to define an Accounting key
flexfield structure, with its value sets and values. You also define all qualifiers needed.

N N N n/a
N N N n/a
N N N n/a

Min Value

n/a
n/a
n/a

Right Justify

Numbers only

2
3
4

Upper case

Precision

Y N Char
Y N Char
Y N Char

Max Size

XXX_CO
XXX_Cost
XXX_Account

LongList

Format
Type
Security

Name

Max Value

1. Defining Accounting Flexfield Value Sets


In step 2 you will define your new Accounting flexfield structure. In your Accounting
flexfield definition you will need to declare a value set for each segment you define.
You cannot reference a value set that does not exist. Therefore you must define your
value sets first. Use the information in the chart below to define the attributes of each
value set. Any attributes not mentioned in the chart can be left to default. Remember
to save each of your value set definitions.

n/a
n/a
n/a

Validation
Type

Independent
Independent
Independent

y
l
n

Solution
1. Navigate to the Value Sets window.
Oracle System Administrator (N)>Application>Validation>Set
2. Enter the specifications for the XXX_CO value set. When you have finished,
your window should look similar to the one below.

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-75

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

3. Save your work.


4. Enter the specifications for the XXX_Cost value set. When you have finished,
your window should look similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-76
Defining Flexfields

Practice 6-1 Solution


.....................................................................................................................................................

5. Save your work.


6. Enter the specifications for the XXX_Account value set. When you have
finished, your window should look similar to the one below.

y
l
n

O
e

&
l
a

7. Save your work.

I
A
O

s
U

2. Defining the Accounting Flexfield Structure


Once your value sets exist, you can define your new Accounting flexfield structure.
First find the existing Accounting flexfield definition. The Accounting flexfield is
associated with the Oracle General Ledger application. Unfreeze the definition before
you make any changes.

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-77

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Solution
1. Navigate to the Key Flexfield Segments window
(N)>Application>Flexfield>Key>Segments
2. Click in the Application field to display of key flexfields. Select the Oracle
General Ledger Accounting Flexfield. The resulting window should look similar
to the one below. (There may be several structures.)

y
l
n

Use the information in the charts below to specify the structure attributes. Use your
student number wherever the entries show XXX_. This will make all the entries you
create unique. Remember to freeze your definition and recompile the flexfield
structure when you are finished.

O
e

Flexfield Attributes
Application
Key Flexfield Title
Structure Title
Allow Dynamic Insertion
Cross-Validate Segments
Segment Separator

Oracle General Ledger


Accounting Flexfield
XXX_Accounting
Y
Y
-

&
l
a

n
r
te

I
A
O

s
U

n
I
e

Solution

l
c
a

r
O

.....................................................................................................................................................
A-78
Defining Flexfields

Practice 6-1 Solution


.....................................................................................................................................................

1. Unfreeze the definition and enter the structure attributes as specified in the
chart above. You may need to add a new line in the Structures area to define your
new structure. When you have finished, your window should look similar to the
one below:

10

Column

Display Size

Value Set

Number

Name

20

XXX_Co
mpany
XXX_Cost
Center
XXX_Acc
ount

30

Segment1

XXX_CO

Segment2

XXX_Cost

Segment3

XXX_Account

&
l
a

AI

O
3

LOV Prompt

Structure Attributes
Define your segments and their attributes as specified in the table below. Remember to

CO

Window
Prompt

O
e

s
U

CC

ACCT

y
l
n

Qualifier

Company

Balancing

Cost
Center
Account

Cost Center
Account

n
r
te

n
I
e

specify the flexfield qualifiers as instructed in the chart above. You cannot
successfully compile your structure otherwise.
Make all segments displayed and required. Enable security on the Account segment.

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-79

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Solution
1. While on the Key Flexfield Segments window, highlight your new structure and
select the Segments buttons. This takes you to the Segments Summary window.
2. Use the information in the chart above to define the three segments of your
accounting flexfield. When you have finished, your window should look similar to
the one below.

y
l
n

3. To change the display size and enable security for a segment, you will have to
select the Open button to go to the Segments window. On this window you can
change the Display Size and select the Security Enabled field. After you enable
security for the Account segment, your window should look similar to the one
below.

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-80
Defining Flexfields

Practice 6-1 Solution


.....................................................................................................................................................

There are three flexfield qualifiers you must specify for your definition to be complete.
You must declare which segment is the balancing segment, which segment is the cost
center segment, and which segment is the natural account segment. Use the
information in the chart above to define the appropriate flexfield qualifier for each
segment.
Solution
While on the Segments window click the Flexfield Qualifiers button to select the
appropriate qualifier for that segment. The example below shows the Flexfield
Qualifiers window. You associate a qualifier with a segment by selecting the
Enabled checkbox.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-81

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

3. Defining Accounting Flexfield Value Set Values


Since each value set you defined in the previous step was an independent validation
type, you must also define the values each value set contains. For the Accounting
flexfield, it is also important to specify the segment qualifier for the values for the
Account segment.
Use the information in the charts below to define all the values you need for your
Accounting flexfield.
Value Set
Name
XXX_CO

Value

Description

00
01
02

Corporate
US Operations
Asia Pacific Operations

Value Set
Name
XXX_Cost

Value

Description

A01
A02
A03
A04

A01 Cost Center


A02 Cost Center
A03 Cost Center
A04 Cost Center

Value

Description

Account Type Segment


Qualifier

1000
1200
2000
3310
4010
4020
5010
5020

Cash
Accounts Receivable
Accounts Payable
Retained Earnings
Interest Income
Sales Income
Travel Expense
Office Expense

Asset
Asset
Liability
Ownership/Stock
Revenue
Revenue
Expense
Expense

Value Set
Name
XXX_Account

n
r
te

&
l
a

Account Type Segment


Qualifier
n/a
n/a
n/a

Account Type Segment


Qualifier
n/a
n/a
n/a
n/a

y
l
n

O
e

I
A
O

s
U

n
I
e

Task 1: Defining Values for the XXX_Co Value Set


1. Navigate to the Find Value Set window
(N)>Application>Validation>Values

l
c
a

r
O

.....................................................................................................................................................
A-82
Defining Flexfields

Practice 6-1 Solution


.....................................................................................................................................................

2. Click in the Name field and click the LOV button on the Toolbar to display a
list of existing value sets.
3. Select the XXX_Co value set you defined earlier.
4. Click the Find button.
5. On the resulting window, define the values for the XXX_Co value set as
specified in the practice directions. When you have finished, your window should
look similar to the one below.

y
l
n

O
e

6. Save your work

s
U

Task 2: Defining Values for the XXX_Cost Center Value Set


1. Navigate to the Find Value Set window.
(N)>Application>Validation>Values

&
l
a

I
A
O

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-83

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

2. Click in the Name field and click the LOV button on the Toolbar to display a
list of existing value sets.
3. Select the XXX_Cost Center value set you defined earlier.
4. Click the Find button.
5. On the resulting window, define the values for the XXX_Cost Center value set
as specified in the practice directions. When you have finished, your window
should look similar to the one below.

y
l
n

O
e

6. Save your work.

s
U

Task 3: Defining Values for the XXX_Account Value Set


1. Navigate to the Find Value Set window.
(N)>Application>Validation>Values
2. Click in the Name field and click the LOV button on the Toolbar to display a
list of existing value sets.
3. Select the XXX_Cost Center value set you defined earlier.
4. Click the Find button.
5. On the resulting window, define the values for the XXX_Cost Center value set
as specified in the practice directions. When you have finished, your window
should look similar to the one below.

&
l
a

I
A
O

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-84
Defining Flexfields

Practice 6-1 Solution


.....................................................................................................................................................

For values defined for the natural account segment, you must assign segment
qualifiers. One important qualifier for each value is the type of account indicator. Use
the specifications in the chart above and define an account indicator for each account
value you define.

y
l
n

Solution
1. When defining each value, tab to the right until the account type window
opens. Use the specifications in the practice directions to indicate the account
type. An example of one type of account is shown in the window below.

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-85

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

2. Save your work.


4. Testing Your New Accounting Flexfield
To test your new flexfield, use the following steps:
1. In the General Ledger (Vision Operations) responsibility, navigate to the Set of
Books window:
(N)>Setup>Financials>Books>Define
2. Click in the Chart of Accounts field and display the list of values.
3. Select your flexfield structure from the list.
4. Click in the Retained Earnings field in the Accounts block and click the LOV button
on the toolbar. Your flexfield structure should appear. For each segment, use the list of
values display to check the values.
Your window should look similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-86
Defining Flexfields

Practice 7-1
.....................................................................................................................................................

Practice 7-1
1. Not all types of value sets can be secured by using security rules. Name two types of
value sets that are unsecurable.
____________________________________________________________________
2. Circle the values from the list of zipcodes that are acceptable to the two security
rules stated below.
Rule One
Include
Exclude

From value
94000
94410

To value
94425
94410

Zipcode
94023
94331
94045
94425
94467
94501

y
l
n

3. Using the same list of zipcode values, draw the result set for the following
combination of rules.
Rule Two
Include
Exclude
Rule Three
Include
Exclude

From value
94000
94410
From value
94420
94460

&
l
a

O
e

I
A
O

s
U

To value
94425
94410
To value
94500
94469

Resulting codes: ____________________________________________________

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-87

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 7-1 Solution


1. Not all types of value sets can be secured by using security rules. Name two types of
value sets that are unsecurable.
_______None, Special, Pair_____________________________________________
2. Circle the values from the list of zipcodes that are acceptable to the two security
rules stated below.
Rule One
Include
Exclude

From value
94000
94410

To value
94425
94410

Zipcode
94023
94331
94045
94425
94467
94501

3. Using the same list of zipcode values, draw the result set for the following
combination of rules.
Rule Two
Include
Exclude

From value
94000
94410
From value
94420
94460

Rule Three
Include
Exclude

&
l
a

I
A
O

y
l
n

O
e

s
U

To value
94425
94410
To value
94500
94469

Resulting codes: ______94425___________________________________________

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-88
Defining Flexfields

Practice 7-2
.....................................................................................................................................................

Practice 7-2
In a previous practice you defined an Accounting flexfield including its value sets and
values. In this practice, you will define security for the XXX_Account value set. This
rule should will restrict you from accessing the cash account (account value 1000).
1. Call your rule Cash Rule. Give your rule a description and appropriate message.
You should be able to accomplish your restriction with two rules.
Save your work.
2. Assign your rule to the GL Manager responsibility.
3. Make sure security is enabled on both XXX_Account value set and the
XXX_Account segment of your Accounting flexfield structure.
4. Change responsibilities to the targeted responsibility. Go to the Set of Books
window, and open the Accounting flexfield using the navigation path given in the
lesson on defining a key flexfield. Note that account value 1000 does not appear. Enter
1000 directly into the Account field and try to close the window. What happens?

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-89

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 7-2 Solution


In a previous practice you defined an Accounting flexfield including its value sets and
values. In this practice, you will define security for the XXX_Account value set. This
rule should will restrict you from accessing the cash account (account value 1000).
1. Call your rule Cash Rule. Give your rule a description and appropriate message.
You should be able to accomplish your restriction with two rules.
Solution:
1. Navigate to the Define Security Rules window for the value set you are
securing.
System Administrator (N)>Security>Responsibility>Value Set>Define
Enter your value set name or select the Name field and click the LOV to select it
from a list of names.
2. Enter the security rule information as specified in the practice instructions.
When you have finished, your window should look similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

3. Save your work.


2. Assign your rule to the GL Manager responsibility.

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-90
Defining Flexfields

Practice 7-2 Solution


.....................................................................................................................................................

Solution:
1. When you have successfully defined your security rule, click the Assign button.
2. Click the LOV button on the Toolbar to select Oracle General Ledger as the
Application, General Ledger, Vision Operations (USA) as the Responsibility, and
Cash Rule as the Name. Supply a description and message if you wish. When you
are finished, your window should look similar to the one below.

y
l
n

3. Make sure security is enabled on both XXX_Account value set and the
XXX_Account segment of your Accounting flexfield structure.
Solution:
1. To check the value set, navigate to the Value Sets window.
System Administrator (N)>Application>Validation>Set
2. Find your value set definition and check that the Security Enabled checkbox is
selected.
3. To check the flexfield segment, navigate to the Key Flexfields Segments
window.
System Administrator (N)>Application>Flexfield>Key>Segments
4. Find the definition for the Accounting Flexfield.
5. Highlight your structure and click the Segments button.
6. Highlight the segment you are securing and click the Open button. On the
Segments window, check that the Security Enabled checkbox is selected.

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-91

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

4. Change responsibilities to the targeted responsibility. Go to the Set of Books


window, and open the Accounting flexfield using the navigation path given in the
lesson on defining a key flexfield. Note that account value 1000 does not appear. Enter
1000 directly into the Account field and try to close the window. What happens?
Solution:
1. Navigate to the Set of Books window.
General Ledger Vision Operations (USA) (N)>Setup>Financials>Books
>Define
2. Click in the Chart of Accounts field. Click the LOV button on the Toolbar to
display a list of Accounting flexfields. Select your Accounting Flexfield structure.
3. Click in one of the fields in the Accounts region.
4. Click the LOV button on the Toolbar to open the flexfield. Select values for
Company and Cost Center. When you display the account numbers available,
your should not see 1000. If you try to enter 1000 directly you should see an error
message similar to the one shown below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-92
Defining Flexfields

Practice 8-1
.....................................................................................................................................................

Practice 8-1
1.A slide in this lesson explains the concept of cross-validation by showing a form that
does not allow the city of Houston be placed in California, or California to placed in
the United Kingdom. Use the space below and define the rules needed to restrict this
combination.
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
2. In a previous lesson you defined an Accounting flexfield, including its value sets
and values. Refer back to the charts you used in that practice and design a crossvalidation rule that does not allow account 3310 to be used with cost center A01. Use
the space below to construct your rules.
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-93

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 8-1 Solution


1.A slide in this lesson explains the concept of cross-validation by showing a form that
does not allow the city of Houston be placed in California, or California to be placed in
the United Kingdom. Use the space below and define the rules needed to restrict this
combination.
_____Include 000.00.0000000000 to ZZZ.ZZ.ZZZZZZZZZZ _________________
_____Exclude UK.CA. to UK.CA. ______________________________________
_____Exclude .CA.HOUSTON to CA.HOUSTON __________________________
2. In a previous lesson you defined an Accounting flexfield, including its value sets
and values. Refer back to the charts you used in that practice and design a crossvalidation rule that will not allow account 3310 to be used with cost center A01. Use
the space below to construct your rules.
___Include 00.000.0000 to ZZ.ZZZ.ZZZZ _________________________________
___Exclude .A01.3310 to .A01.3310 ______________________________________
_____________________________________________________________________

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-94
Defining Flexfields

Practice 8-2
.....................................................................................................................................................

Practice 8-2
In the previous practice you designed a cross-validation rule to not allow account
number 3310 to be used with cost center A01. In this practice you define that rule and
test it.
Defining a Cross-Validation Rule
1. Locate your Accounting flexfield definition and check that cross-validation is
enabled for your structure. If it is not, enable it, freeze the definition, and recompile.
2. Navigate to the Cross-Validation Rules window.
(N)>Application>Flexfields>Key>CrossValidation
3. Call your rule Cross-Validation Practice 8-2. Give your rule a description if you
wish.
4. Ensure that the error message that follows is generated, and that the cursor is placed
in the Account segment.
Error Message: Please do not use Account number 3310 with Cost Center A01
5. Save your work.
Testing Your Rule
1. Navigate to the Set of Books window.
(N)>Setup>Financials>Books
2. Use the list of values for the Chart of Accounts field to select your Accounting
flexfield structure.
3. Click in the Retained Earnings field.
4. When the flexfield opens, enter the restricted value combination and click OK.
5. Your error message should appear. Click OK.
6. You should be back in the flexfield with your cursor in the Account segment.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-95

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 8-2 Solution


In the previous practice you designed a cross-validation rule to not allow account
number 3310 to be used with cost center A01. In this practice you define that rule and
test it.
Defining a Cross-Validation Rule
1. Locate your Accounting flexfield definition and check that cross-validation is
enabled for your structure. If it is not, enable it, freeze the definition, and recompile.
System Administrator (N)>Application>Flexfield>Key
Check that the Cross-Validation checkbox is selected.
2. Navigate to the Cross-Validation Rules window.
(N)>Application>Flexfields>Key>CrossValidation
3. Call your rule Cross-Validation Practice 8-2. Give your rule a description if you
wish.
4. Ensure that the error message that follows is generated, and that the cursor is placed
in the Account segment.
Error Message: Please do not use Account number 3310 with Cost Center A01
Solution:
Follow the navigation path given and enter the cross-validation rule information
as specified. When you have finished, your window should look similar to the
following.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-96
Defining Flexfields

Practice 8-2 Solution


.....................................................................................................................................................

5. Save your work.


Testing Your Rule
1. Navigate to the Set of Books window.
(N)>Setup>Financials>Books
2. Use the list of values for the Chart of Accounts field to select your Accounting
flexfield structure.
3. Click in the Retained Earnings field.
4. When the flexfield opens, enter the restricted value combination and click OK.
5. Your error message should appear, and your window should look similar to the one
below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-97

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 9-1
While working with your new Accounting flexfield definition, you notice that you
repeatedly enter several flexfield combinations. Specifically, you enter many
transactions against the Accounts Payable account 2000.
1. Define a shorthand alias called Payable that will populate your flexfield with the
following combination of values:
Company:01
Cost CenterA01
Account:2000
Specify a Max Alias Size of 15. Save your new alias definition.
2. Navigate to the Set of Books window and open your Accounting flexfield to test
your alias.
3. Optional: Create three more aliases for the Accounts Receivable account 1200. You
can use this account with any Cost Center.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-98
Defining Flexfields

Practice 9-1 Solution


.....................................................................................................................................................

Practice 9-1 Solution


While working with your new Accounting flexfield definition, you notice that you
repeatedly enter several flexfield combinations. Specifically, you enter many
transactions against the Accounts Payable account 2000.
1. Define a shorthand alias called Payables that will populate your flexfield with the
following combination of values:
Company:01
Cost Center: A01
Account:2000
Specify a Max Alias Size of 15. Save your new alias definition.
Solution
1. Navigate to the Shorthand Aliases window.
System Administrator (N)>Application>Flexfield>Key>Aliases
2. Find the definition for your Accounting Flexfield structure.
3. Enter the alias definition information as instructed. You can enter the
concatenated alias value directly, or click in the Template field, and click the
LOV button on the toolbar to open the Accounting Flexfield, where you can
specify the combination of values for your alias.
2. Navigate to the Set of Books window and open your Accounting flexfield to test
your alias.
When you have triggered your alias, your window should look similar to the one
below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-99

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

3. Optional: Create three more aliases for the Accounts Receivable account 1200. You
can use this account with any Cost Center.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-100
Defining Flexfields

Practice 10-1
.....................................................................................................................................................

Practice 10-1
Scenario
In a previous lesson, you created the value sets needed for an employee referral
program. At that time, you created an XXX_Employee value set with a None
validation type. That information is actually available from a Human Resources
application table called PER_ALL_PEOPLE_F. In this practice, you will create a new
value set definition that can query the application table for the existing information for
validation.
Value Set Specifications
Table needed: To validate the EMPLOYEE_NUMBER of the referring employee
you need to access the PER_ALL_PEOPLE_F table owned by the Oracle Human
Resources application.You will create a value set that queries this table for valid
employee numbers.
Columns needed: Because the EMPLOYEE_NUMBER column contains the value
you need to check, use this column for the Value field. But to make it easier to
associate an employee number with the employee, use the FULL_NAME field as the
Meaning field to provide an explanation of employee number value.

y
l
n

Data restrictions needed: This table contains entries for both active and inactive
employees. Inactive employees are not eligible for the referral program, so you will
need to restrict the list of values to display only active employees. You can test
whether the employee is active by checking that the CURRENT_EMPLOYEE_FLAG
is set to Y.
Enter WHERE CURRENT_EMPLOYEE_FLAG = Y in the Where/Order By area.
Call this value set XXX_Employee_Table.

O
e

I
A
O

s
U

Defining Your Value Sets


When defining this value set, use the format type Char with a length of 30. Select
Table as the validation type. Click the Edit Information button takes you to the
Validation Table Information window. You can use list of values displays on the Table
Application, Table Name, Value, and Meaning fields to select the entries specified
above. You do not need an ID column.
Enter the SQL WHERE clause in the Where/Order By area.
Save your definition.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-101

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Testing Your New Value Set


To test your new value set, access the descriptive flexfield you defined earlier.
Unfreeze the definition so you can make changes. Change the XXX_Employee value
set you used to your new XXX_Employee_Table value set.
Save, freeze, and recompile the definition.
Navigate to the flexfield and open the descriptive flexfield. You should see a list of
values indicator when you enter the segment that uses your new value set definition.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-102
Defining Flexfields

Practice 10-1 Solution


.....................................................................................................................................................

Practice 10-1 Solution


Scenario
In a previous lesson, you created the value sets needed for an employee referral
program. At that time, you created an XXX_Employee value set with a None
validation type. That information is actually available from a Human Resources
application table called PER_ALL_PEOPLE_F. In this practice, you will create a new
value set definition that can query the application table for the existing information for
validation.
Value Set Specifications
Table needed: To validate the EMPLOYEE_NUMBER of the referring employee
you need to access the PER_ALL_PEOPLE_F table owned by the Oracle Human
Resources application.You will create a value set that queries this table for valid
employee numbers.
Columns needed: Because the EMPLOYEE_NUMBER column contains the value
you need to check, use this column for the Value field. But to make it easier to
associate an employee number with the employee, use the FULL_NAME field as the
Meaning field to provide an explanation of employee number value.

y
l
n

Data restrictions needed: This table contains entries for both active and inactive
employees. Inactive employees are not eligible for the referral program, so you will
need to restrict the list of values to display only active employees. You can test
whether the employee is active by checking that the CURRENT_EMPLOYEE_FLAG
is set to Y.
Enter WHERE CURRENT_EMPLOYEE_FLAG = Y in the Where/Order By area.
Call this value set XXX_Employee_Table.

O
e

I
A
O

s
U

Defining Your Value Sets


When defining this value set, use the format type Char with a length of 30. Select
Table as the validation type. Clicking the Edit Information button will take you to the
Validation Table Information window. You can use list of values displays on the Table
Application, Table Name, Value, and Meaning fields to select the entries specified
above. You do not need an ID column.
Enter the SQL WHERE clause in the Where/Order By area.
Save your definition.

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-103

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Solution:
1. Navigate to the Value Sets window.
(N)>Application>Validation>Set
2. Enter the value set information as specified in the practice directions. Your
window should look similar to the one below.

3. Click the Edit Information button.


4. On the Validation Table Information window, enter the table-related
information as specified in your practice directions. Your window should look
similar to the one below.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-104
Defining Flexfields

Practice 10-1 Solution


.....................................................................................................................................................

Testing Your New Value Set


To test your new value set, access the descriptive flexfield you defined earlier.
Unfreeze the definition so you can make changes. Change the XXX_Employee value
set you used to your new XXX_Employee_Table value set.
Save, freeze, and recompile the definition.
Navigate to the flexfield and open the descriptive flexfield. You should see a list of
values indicator when you enter the segment that uses your new value set definition.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-105

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

Practice 11-1
1. What is the difference between the CONCATENATED_SEGMENTS display and
the PADDED_CONCATENATED_SEGMENTS display?
2. What is the main difference between a key flexfield concatenated segment view
display and a key flexfield structure view display?
3. Key flexfield structure views are not generated automatically like key flexfield
concatenated segment views are. How do you cause a key flexfield structure view to
be created?
4. (Optional) If possible within the classroom environment, use the instructions given
to you by your instructor to perform the following tasks.
Use an SQL+ DESCRIBE statement on the view that was generated for the
flexfield you created in the lesson on defining descriptive flexfields. You may need
to reaccess the definition and recompile the flexfield to find out the name of the
view.
Access the descriptive flexfield and enter several rows of data. Create an SQL
SELECT statement in SQL+ to view the columns of your descriptive flexfield
view.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-106
Defining Flexfields

Practice 11-1 Solution


.....................................................................................................................................................

Practice 11-1 Solution


1. What is the difference between the CONCATENATED_SEGMENTS display and
the PADDED_CONCATENATED_SEGMENTS display?
The CONCATENATED_SEGMENTS display shows the key flexfield values as a
single column with the actual values concatenated but divided by the segment
separator character.
The PADDED_CONCATENATED_SEGMENTS display shows the flexfield
values evenly spaced in columns padded with blanks.
2. What is the main difference between a key flexfield concatenated segment view
display and a key flexfield structure view display?
The key flexfield concatedated segment view shows the key flexfield as a single
column while the structure view shows each segment as a separate column with
the segment name used as the column heading.
3. Key flexfield structure views are not generated automatically like key flexfield
concatenated segment views are. How do you cause a key flexfield structure view to
be created?
You specify a view name when you define the flexfield structure. When you
compile the flexfield definition, the view is created.
4. (Optional) If possible within the classroom environment, use the instructions given
to you by your instructor to perform the following tasks.
Use an SQL+ DESCRIBE statement on the view that was generated for the
flexfield you created in the lesson on defining descriptive flexfields. You may need
to reaccess the definition and recompile the flexfield to determine the name of the
view.
Access the descriptive flexfield and enter several rows of data. Create an SQL
SELECT statement in SQL+ to view the columns of your descriptive flexfield
view.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
A-107

Appendix A: Practice Instructions and Solutions


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
A-108
Defining Flexfields

B
................................

Navigation Paths and


Additional Queries

y
l
n

O
e

&
l
a

n
r
te

r
O

l
c
a

n
I
e

I
A
O

s
U

Appendix B: Navigation Paths and Additional Queries


.....................................................................................................................................................

Descriptive Flexfield Navigation Paths


The chart on the following pages lists descriptive flexfields and navigation paths for
three applications. Each of these descriptive flexfields has 10 or more ATTRIBUTE
columns available for definition. Use these flexfields in the practices where you define
a descriptive flexfield.

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
B-2
Defining Flexfields

Descriptive Flexfield Navigation Paths


.....................................................................................................................................................
Title

Path

Application Object Library Flexfields (System Adminstrator responsibility)


Currencies

Application/Currency

Define Sequences

Application/Document/Define

Sequence Assignments

Application/Document/Assign

General Ledger Flexfields (General Ledger, Vision Operations (USA) )


Budgetary Control Group: Group
Budgetary Control Group: Rules

Budgets/Define/Controls (Header area descriptive flexfield)


Budgets/Define/Controls (Budgetary Control Rules area
descriptive flexfield)

Conversion Rate Types

Setup/Currencies/Rates/Types

Define Budget Org: Assignment Ranges

Budgets/Define/Organization/Ranges(B)

Define Budget Organization:Organization

Budgets/Define/Organization

Define Recurring Journal: Batch


Define Recurring Journal:Journal Entry

Journals/Define/Recurring
Journals/Define/Recurring (enter dummy name) Journal Entry
Block

Define Recurring Journal:Line

Journals/Define/Recurring (enter dummy name) Lines(B) Account


Description block

Enter Journals:Batches
Enter Journals: Journals

Journals/Enter/closel find screen/New Batch (B)


Journals/Enter/close find screen/New Batch(B)/Journals(B)/More
Details(B)

Enter Journals: Lines

Journals/Enter/cancel Find screen/New Batch(B)/Journals(B)

Sets of Books

Setup/Financials/Books/Define

Accounts Receivable Flexfields (Receivables, Vision Operations (USA) )


Address Information
Customers/Standard (enter dummy record)
Addresses(AR)/New(B)

O
e

Aging Bucket line Information


AutoCash Hierarchies Information

Set up/Collections/Aging Buckets


Set up/Receipts/AutoCash Rule Sets/enter dummy
name/Automatic Matching Rule block
Set up/Receipts/AutoCash Rule Sets/enter dummy
name/AutoCash Rules block

AutoCash Rules Information

I
A
O

s
U

Batch Information

Receipts/Batches/Batch Type = Automatic

Collector Information

Set up/Collections/Collectors

Call Topic Information


Contact Information

Collections/Customer Call/Topics(B)

Contact Role Information

e
t
In

Dunning Letter Information

&
l
a

rn

Credit Profile Class Information


Customer Information

y
l
n

Customers/Standard/Contacts: Roles (AR)/Contact Name block


Customers/Standard/Contacts: Roles (AR)/Contact Role block
Customers/Profile Classes (use bottom, far right flexfield)
Customers/Standard
Set Up/Print/Dunning Letters

Dunning Letter Set Information

Set Up/Print/Dunning Letter Sets

Dunning Letter Sequence Information

Set Up/Print/Dunning Letter Sets/Letter Sequence block

e
l
c

a
r
O

.....................................................................................................................................................
Defining Flexfields
B-3

Appendix B: Navigation Paths and Additional Queries


.....................................................................................................................................................
Cash Management (Cash Management, Vision Operations (USA) )
Transaction Codes

Setup/Bank Transaction Codes/select an entry

System Parameters

Setup/System Parameters

Forecast Template Headers

Cash Forecasting/Forecast Templates/close Find screen


Cash Forecasting/Forecast Templates/close Find
screen/Columns(B)

Forecase Template Columns


Forecast Template Rows
Statement Headers

Cash Forecasting/Forecast Templates/close Find screen/Rows(B)

Statement Lines

Bank Reconciliation/Bank Statements/close Find screen/New(B)


Bank Reconciliation/Bank Statements/close Find
screen/New(B)/Lines(B)

Bank Statement Headers Interface

Bank Reconciliation/Bank Statement Interface

Oracle Assets
Book Controls

Setup/Asset System/Book Controls

Calendar Types

Setup/Asset System/Calendars

Convention Types

Setup/Asset System/Prorate Conventions

Fiscal Year

Setup/Asset System/Fiscal Years

Locations

Setup/Asset Systems/Locations

ITC Rates

Setup/Depreciation/ITC Rates

ITC Recapture Rates

Setup/Depreciation/ITC Recapture Rates

Mass Changes

Mass Transactions/Changes

Mass Tax Adjustments

Tax/Mass Depreciation Adjustments

Mass Revaluations

Mass Transactions/Revaluations

Mass Retirements

Mass Transactions/Retirements

Mass Transfers

Mass Transactions/Transfers/select a book

Price Index Values

Setup/Asset System/Price Indexes/lower dff

Price Indexes

Setup/Asset System/Price Indexes/upper dff

System Controls

Setup/Asset System/System Controls

&
l
a

I
A
O

y
l
n

O
e

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
B-4
Defining Flexfields

Key Flexfield Application Tables


.....................................................................................................................................................

Key Flexfield Application Tables


The SQLPlus query shows the Oracle Applications key flexfields and the tables in
which they store their code combinations.
SQL> select id_flex_name, application_table_name from
apps.fnd_id_flexs
2

order by application_id;

ID_FLEX_NAME

APPLICATION_TABLE_NAME

------------------------------ ---------------------- -------Accounting Flexfield

GL_CODE_COMBINATIONS

Category Flexfield

FA_CATEGORIES

Asset Key Flexfield

FA_ASSET_KEYWORDS

Location Flexfield

FA_LOCATIONS

Oracle Service Item Flexfield MTL_SYSTEM_ITEMS


Territory Flexfield

RA_TERRITORIES

Sales Tax Location Flexfield AR_LOCATION_COMBINATIONS


Item Categories

MTL_CATEGORIES

Account Aliases

MTL_GENERIC_DISPOSITIONS

Item Catalogs

MTL_ITEM_CATALOG_GROUPS

Sales Orders

MTL_SALES_ORDERS

System Items

MTL_SYSTEM_ITEMS

Stock Locators

MTL_ITEM_LOCATIONS

Grade Flexfield

PER_GRADE_DEFINITIONS

Job Flexfield

PER_JOB_DEFINITIONS

I
A
O

y
l
n

O
e

s
U

Personal Analysis Flexfield PER_ANALYSIS_CRITERIA


Position Flexfield

PER_POSITION_DEFINITIONS

&
l
a

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
B-5

Appendix B: Navigation Paths and Additional Queries


.....................................................................................................................................................

Descriptive Flexfield Application Tables


The SQLPlus query displayed below can be used to determine the application base
table where a descriptive flexfield stores its data. Since there are several hundred
descriptive flexfields available for use, the display below shows only a partial list for
one application (Oracle General Ledger - application ID 101).
It also does not display any descriptive flexfields used with SRS.
> select title, application_table_name from
2 apps.fnd_descriptive_flexs
3 where application_id = 101 and
4 title not like $SRS$%
5 order by title;
TITLE
---------------------------------------Accounting Calendar: Calendar
Accounting Calendar: Periods
AutoPost Criteria
Budget Types
Budget Versions
Budgetary Control Group: Group
Budgetary Control Group: Rules
Chart of Accounts
Conversion Rate Types
Daily Rates
Define Budget
Define Budget Org: Assignment Ranges
Define Budget Organization: Assignments
Define Budget Organization: Organization
Define Recurring Journal: Batch
Define Recurring Journal: Formula
Define Recurring Journal: Journal Entry
Define Recurring Journal: Line
Enter Journals: Batch Transaction Code
Enter Journals: Batches
Enter Journals: Captured Information
Enter Journals: Journal Transaction Code
Enter Journals: Journals
Enter Journals: Line Transaction Code
Enter Journals: Lines
Enter Journals: Tax Information
Enter Journals: Value Added Tax
Entity Budgets
GL Accounts
Government Trans Codes: Account Pairs
Government Transaction Codes: Code
Historical Rates
Intercompany Accounts
Journal Categories
Journal Sources
Lookup Codes
Open and Close Periods

APPLICATION_TABLE_NAME
---------------------------GL_PERIOD_SETS
GL_PERIODS
GL_AUTOMATIC_POSTING_OPTIONS
GL_BUDGET_TYPES
GL_BUDGET_VERSIONS
GL_BC_OPTIONS
GL_BC_OPTION_DETAILS
GL_CHARTS_OF_ACCOUNTS
GL_DAILY_CONVERSION_TYPES
GL_DAILY_CONVERSION_RATES
GL_BUDGETS
GL_BUDGET_ASSIGNMENT_RANGES
GL_BUDGET_ASSIGNMENTS
GL_BUDGET_ENTITIES
GL_RECURRING_BATCHES
GL_RECURRING_LINE_CALC_RULES
GL_RECURRING_HEADERS
GL_RECURRING_LINES
GL_JE_BATCHES
GL_JE_BATCHES
GL_CAPTURED_INFO
GL_JE_HEADERS
GL_JE_HEADERS
GL_JE_LINES
GL_JE_LINES
GL_JE_LINES
GL_TAX_CODES
GL_ENTITY_BUDGETS
GL_CODE_COMBINATIONS
GL_USSGL_ACCOUNT_PAIRS
GL_USSGL_TRANSACTION_CODES
GL_HISTORICAL_RATES
GL_INTERCOMPANY_ACCOUNTS
GL_JE_CATEGORIES
GL_JE_SOURCES
GL_LOOKUPS
GL_PERIOD_STATUSES

&
l
a

n
r
te

n
I
e

y
l
n

O
e

I
A
O

s
U

l
c
a

r
O

.....................................................................................................................................................
B-6
Defining Flexfields

Value Set Usage By Descriptive Flexfields


.....................................................................................................................................................

Value Set Usage By Descriptive Flexfields


One of the recommendations mentioned in the lesson on Value Sets was to use existing
value sets whenever possible. The lesson also mentioned to be careful about changing
value sets since they could by multiple flexfields.
The SQLPlus query below generates a report that shows which segments of which
structures of which descriptive flexfields use that value set. This is a partial report and
does not show any information for flexfields used with SRS.
SQL> col value set for a40
SQL> col flexfield for a40
SQL> col structure for a30
SQL> col column for a32
SQL> break on value set
SQL> select flex_value_set_name "Value Set",
2

descriptive_flexfield_name "Flexfield",

descriptive_flex_context_code "Structure",

end_user_column_name "Column"

from apps.fnd_descr_flex_column_usages a,

6
7

apps.fnd_flex_value_sets b
where a.flex_value_set_id = b.flex_value_set_id and

8
9
10
11

y
l
n

descriptive_flexfield_name not like


$SRS$%

order by flex_value_set_name, descriptive_flexfield_name,

O
e

descriptive_flex_context_code;

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
B-7

Appendix B: Navigation Paths and Additional Queries


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
B-8
Defining Flexfields

Value Set Usage By Descriptive Flexfields


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
B-9

Appendix B: Navigation Paths and Additional Queries


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
B-10
Defining Flexfields

Value Set Usage By Descriptive Flexfields


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
B-11

Appendix B: Navigation Paths and Additional Queries


.....................................................................................................................................................

Value Set Usage by Key Flexfield


One of the recommendations mentioned in the lesson on Value Sets was to use existing
value sets whenever possible. The lesson also mentioned to be careful about changing
value sets since they could by multiple flexfields.
The SQLPlus query below generates a report that shows which segments of which
structures of which key flexfields use that value set. This is a partial report and does
not show any information for flexfields used with SRS.
SQL> select

flex_value_set_name

"Value Set",

id_flex_name

id_flex_structure_name "Structure",

segment_name

from

"Flexfield",
"Segment"

apps.fnd_id_flexs a,

apps.fnd_id_flex_structures b,

apps.fnd_id_flex_segments c,

apps.fnd_flex_value_sets d

where

a.application_id

b.application_id and

10

a.id_flex_code

b.id_flex_code and

11

b.application_id

c.application_id and

12

b.id_flex_code

c.id_flex_code and

13

b.id_flex_num

c.id_flex_num

14

c.flex_value_set_id

15 order by flex_value_set_name, a.id_flex_name,


id_flex_structure_name;

&
l
a

I
A
O

y
l
n

and

O
e

d.flex_value_set_id

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
B-12
Defining Flexfields

Value Set Usage by Key Flexfield


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
Defining Flexfields
B-13

Appendix B: Navigation Paths and Additional Queries


.....................................................................................................................................................

y
l
n

O
e

&
l
a

I
A
O

s
U

n
r
te

n
I
e

l
c
a

r
O

.....................................................................................................................................................
B-14
Defining Flexfields