Вы находитесь на странице: 1из 998

R12 System Administrator

Fundamentals
Student Guide

D49195GC10
Edition 1.0
July 2007
D51755
Copyright © 1996, 2007, Oracle. All rights reserved.

This document contains proprietary information and is protected by copyright and other intellectual property laws. You may copy and
print this document solely for your own use in an Oracle training course. The document may not be modified or altered in any way.
Except where your use constitutes "fair use" under copyright law, you may not use, share, download, upload, copy, print, display,
perform, reproduce, publish, license, post, transmit, or distribute this document in whole or in part without the express authorization
of Oracle.

The information contained in this document is subject to change without notice. If you find any problems in the document, please
report them in writing to: Oracle University, 500 Oracle Parkway, Redwood Shores, California 94065 USA. This document is not
warranted to be error-free.

If this documentation is delivered to the United States Government or anyone using the documentation on behalf of the United
States Government, the following notice is applicable:

U.S. GOVERNMENT RIGHTS


The U.S. Government’s rights to use, modify, reproduce, release, perform, display, or disclose these training materials are restricted
by the terms of the applicable Oracle license agreement and/or the applicable U.S. Government contract.

Oracle, JD Edwards, PeopleSoft, and Siebel are registered trademarks of Oracle Corporation and/or its affiliates. Other names may
be trademarks of their respective owners.

Author

Mildred Wang, Robert Farrington, Clara Jaeckel, Melody Yang

Technical Contributors and Reviewers

Donna Johnson, Leta Davis, Barbara Waddoups, Gary Lemmons, Roman Kratochvil, Roger
Wigenstam, Venkata Vengala, Biju Mohan, Gursat Olgun, Maxine Zasowski, Sunil Ghosh

This book was published using: oracletutor


Table of Contents

Introduction .....................................................................................................................................................1-1
Introduction ...................................................................................................................................................1-3
Course Objectives..........................................................................................................................................1-4
Overview .......................................................................................................................................................1-5
Oracle Applications System Administration .................................................................................................1-6
Oracle Workflow Component........................................................................................................................1-7
Oracle Applications Flexfields Component...................................................................................................1-8
Additional Material........................................................................................................................................1-9
Introduction to Oracle Applications Security ...............................................................................................2-1
Introduction to Oracle Applications Security ................................................................................................2-3
Objectives ......................................................................................................................................................2-4
Successive Layers of Access Control ............................................................................................................2-5
Increasing Flexibility and Scalability ............................................................................................................2-6
Function Security...........................................................................................................................................2-8
Data Security .................................................................................................................................................2-9
Oracle User Management Layers of Access Control.....................................................................................2-11
Role Based Access Control (RBAC) .............................................................................................................2-12
Delegated Administration..............................................................................................................................2-14
Registration Processes ...................................................................................................................................2-16
Self Service and Approvals ...........................................................................................................................2-18
Summary........................................................................................................................................................2-19
Function Security.............................................................................................................................................3-1
Function Security...........................................................................................................................................3-3
Objectives ......................................................................................................................................................3-4
Overview of Function Security......................................................................................................................3-5
Defining a New Application User .................................................................................................................3-7
Custom Applications .....................................................................................................................................3-8
Defining an Application ................................................................................................................................3-9
Registering an Oracle ID ...............................................................................................................................3-10
Data Groups...................................................................................................................................................3-11
Securing Functions ........................................................................................................................................3-13
Defining a Menu............................................................................................................................................3-14
Identifying Existing Menu Structures...........................................................................................................3-16
Menu Guidelines ...........................................................................................................................................3-17
Creating a Menu ............................................................................................................................................3-18
Modifying an Existing Menu Definition ......................................................................................................3-20
Navigator Menus ...........................................................................................................................................3-21
The Menu Viewer..........................................................................................................................................3-22
Viewing Node Properties in the Menu Viewer..............................................................................................3-23
Adding a Custom Form Function ..................................................................................................................3-24
Using Responsibilities ...................................................................................................................................3-25
Responsibility Components ...........................................................................................................................3-27
Defining a New Responsibility......................................................................................................................3-28
Responsibility Creation Process ....................................................................................................................3-29
Defining a New Responsibility......................................................................................................................3-30
Excluding Functions and Menus ...................................................................................................................3-31
Summary........................................................................................................................................................3-32
Introduction to Data Security.........................................................................................................................4-1
Introduction to Data Security.........................................................................................................................4-3
Objectives ......................................................................................................................................................4-4
Introduction to Data Security.........................................................................................................................4-5

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


i
Data Security Components - Objects.............................................................................................................4-7
Grants ............................................................................................................................................................4-8
Permissions and Permission Sets...................................................................................................................4-9
Data Security Policies....................................................................................................................................4-10
Example of a Data Security Policy ................................................................................................................4-11
Summary........................................................................................................................................................4-12
Introduction to Oracle User Management ....................................................................................................5-1
Introduction to Oracle User Management .....................................................................................................5-3
Objectives ......................................................................................................................................................5-4
What Is Oracle User Management? ...............................................................................................................5-5
Access Control Model ...................................................................................................................................5-6
Successive Layers of Access Control ............................................................................................................5-7
Increased Flexibility and Scalability..............................................................................................................5-8
Function Security...........................................................................................................................................5-9
Responsibilities..............................................................................................................................................5-10
Data Security .................................................................................................................................................5-11
Role Based Access Control (RBAC) .............................................................................................................5-12
Delegated Administration..............................................................................................................................5-13
Delegating to Proxy Users .............................................................................................................................5-15
Provisioning Services ....................................................................................................................................5-16
Self-Service and Approvals ...........................................................................................................................5-18
Login Assistance ...........................................................................................................................................5-19
Summary........................................................................................................................................................5-20
Implementing Oracle User Management.......................................................................................................6-1
Implementing Oracle User Management.......................................................................................................6-3
Objectives ......................................................................................................................................................6-4
Implementing Oracle User Management.......................................................................................................6-5
Steps for Implementing Oracle User Management........................................................................................6-6
Configuring and Testing Oracle User Management ......................................................................................6-9
Introduction to Roles .....................................................................................................................................6-10
Examples of Roles .........................................................................................................................................6-11
Defining Roles: Data Security Policies .........................................................................................................6-12
Defining Roles: Assigning a Single Responsibility and All Its Functions to a Role .....................................6-13
Assigning a Single Responsibility to a Role and Granting Specific Functions to a Role ..............................6-14
Defining Roles: Assigning Multiple Responsibilities to a Role ....................................................................6-15
Role Inheritance Hierarchies .........................................................................................................................6-16
Role Categories .............................................................................................................................................6-17
Assigning Permissions to Roles.....................................................................................................................6-18
Advantages of Roles Over Responsibilities...................................................................................................6-20
Phase II: Define Roles ...................................................................................................................................6-22
Steps for Creating Roles: Define a Role Category ........................................................................................6-23
Steps for Creating Roles: Create a Role within the Role Category ...............................................................6-24
Steps for Creating Roles: Place Role in Role Inheritance Hierarchy.............................................................6-25
Steps for Creating Roles: Assign Permissions to Roles.................................................................................6-26
Steps for Creating Roles: Assign Role to a New Person ...............................................................................6-27
Steps for Creating Roles: Test Role as Customer Administrator...................................................................6-28
Delegated Administration..............................................................................................................................6-29
What Is Delegated Administration?...............................................................................................................6-30
User Administration Privileges......................................................................................................................6-31
User Administration Privileges (cont.) ..........................................................................................................6-32
Role Administration Privileges......................................................................................................................6-33
Seeded Permissions for User Administration ................................................................................................6-34
Managing Roles with Role Administration ...................................................................................................6-35
Seeded Permissions for Role Administration ................................................................................................6-36
Organization Administration Privileges ........................................................................................................6-37
Seeded Permissions for Organization Administration ...................................................................................6-38

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


ii
Delegated Administration vs. Traditional System Administration ................................................................6-39
Phase III: Setting Up Delegated Administration ...........................................................................................6-40
Steps for Implementing Delegated Administration: Set Up User Administration for a Role ........................6-41
Steps for Implementing Delegated Administration .......................................................................................6-42
Registration Processes ...................................................................................................................................6-45
Registration Processes: Core Components ....................................................................................................6-47
Self-Service Account Requests......................................................................................................................6-48
Requests for Additional Access.....................................................................................................................6-49
Account Creation by Administrators .............................................................................................................6-50
Phase IV: Creating Registration Processes ....................................................................................................6-51
Steps for Creating Registration Processes: Provide Required Description Information................................6-52
Steps for Creating Registration Processes: Enter Runtime Execution Information.......................................6-54
Steps for Creating Registration Processes: Enter Eligibility Information......................................................6-55
Steps for Creating Registration Processes: Register Subscriptions to Business Events ................................6-56
Steps for Creating Registration Processes: Optionally Set Profile Options...................................................6-57
Steps for Creating Registration Processes: Optionally Set Login Page UI Attributes...................................6-59
Steps for Creating Registration Processes: Test as Customer Administrator ................................................6-61
Managing Proxy Users ..................................................................................................................................6-62
Self-Service Features.....................................................................................................................................6-64
Login Assistance ...........................................................................................................................................6-66
Summary........................................................................................................................................................6-67
Profile Options .................................................................................................................................................7-1
Managing Profile Options..............................................................................................................................7-3
Objectives ......................................................................................................................................................7-4
Personal Profile Values .................................................................................................................................7-5
System Profile Options - Profile Hierarchy Types ........................................................................................7-6
Profile Hierarchy Levels - Security ...............................................................................................................7-7
Profile Hierarchy Levels – Organization .......................................................................................................7-8
Profile Hierarchy Levels - Server ..................................................................................................................7-9
System Profile Options..................................................................................................................................7-10
Using User Profile Values as Defaults .........................................................................................................7-11
Profile Categories ..........................................................................................................................................7-12
Auditing Related Profile Options ..................................................................................................................7-13
Currency-Related Options .............................................................................................................................7-15
Flexfield-Related Options..............................................................................................................................7-16
Online Reporting-Related Options ................................................................................................................7-18
Personal Output Viewer Options ...................................................................................................................7-19
User-Related Concurrent Request Profile Options ........................................................................................7-20
Security Signon Profile Options ....................................................................................................................7-22
Summary........................................................................................................................................................7-24
Auditing System Resources.............................................................................................................................8-1
Auditing System Resources...........................................................................................................................8-3
Objectives ......................................................................................................................................................8-4
Auditing Oracle Applications ........................................................................................................................8-5
Auditing User Activity ..................................................................................................................................8-6
Signon Audit Profile Option..........................................................................................................................8-7
Signon Audit Reports ....................................................................................................................................8-8
Signon Audit Forms Report...........................................................................................................................8-9
Signon Audit Concurrent Requests Report....................................................................................................8-10
Signon Audit Responsibilities Report............................................................................................................8-11
Signon Audit Unsuccessful Logins Report....................................................................................................8-12
Signon Audit Users Report............................................................................................................................8-13
Purge Audit Records......................................................................................................................................8-14
Monitor Users Window .................................................................................................................................8-15
Auditing Database Changes...........................................................................................................................8-16
Steps for Setting Up AuditTrail.....................................................................................................................8-17

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


iii
Identify Tables and Columns to Audit...........................................................................................................8-18
Create an Audit Group...................................................................................................................................8-19
Audit Tables Window....................................................................................................................................8-20
Identifying the Schema to be Audited ...........................................................................................................8-21
Enabling Audit Processing ............................................................................................................................8-22
Audit Shadow Tables.....................................................................................................................................8-23
Shadow Table Views .....................................................................................................................................8-24
Summary........................................................................................................................................................8-25
Managing Printers...........................................................................................................................................9-1
Managing Printers..........................................................................................................................................9-3
Objectives ......................................................................................................................................................9-4
Oracle Print Definition Components .............................................................................................................9-5
Relationships of the Printer Components ......................................................................................................9-7
Formatting Information .................................................................................................................................9-8
Defining Printers............................................................................................................................................9-10
Finding Existing Printer Types......................................................................................................................9-11
Registering a New Printer..............................................................................................................................9-12
Defining a New Printer Type.........................................................................................................................9-13
Printing with Pasta.........................................................................................................................................9-14
Setup for Basic Printing with Pasta ...............................................................................................................9-15
The pasta.cfg file ...........................................................................................................................................9-16
Modifying an Existing Printer Type to Use Pasta .........................................................................................9-17
Generating Other Formats using the Preprocessing Option...........................................................................9-19
Using Pasta with XML Publisher ..................................................................................................................9-20
Other Customization Materials for Oracle Applications Printing..................................................................9-22
Summary........................................................................................................................................................9-23
Introduction to Oracle Applications Manager..............................................................................................10-1
Introduction to Oracle Applications Manager (OAM) ..................................................................................10-3
Objectives ......................................................................................................................................................10-4
What is Oracle Applications Manager? .........................................................................................................10-5
Benefits of Oracle Applications Manager......................................................................................................10-6
Oracle Applications Manager Integrates with … ..........................................................................................10-7
Application Management Pack for Oracle E-Business Suite.........................................................................10-9
Navigation in OAM .......................................................................................................................................10-10
Applications Dashboard ................................................................................................................................10-11
Site Map.........................................................................................................................................................10-13
Administration...............................................................................................................................................10-14
Monitoring.....................................................................................................................................................10-15
Maintenance ..................................................................................................................................................10-16
Diagnostics and Troubleshooting ..................................................................................................................10-17
Setting Up Oracle Applications Manager......................................................................................................10-18
Summary........................................................................................................................................................10-19
System Monitoring in Oracle Applications Manager...................................................................................11-1
System Monitoring in Oracle Applications Manager ....................................................................................11-3
Objectives ......................................................................................................................................................11-4
System Status Overview................................................................................................................................11-5
System Status – Configuration Changes........................................................................................................11-7
System Status – Web Components Status .....................................................................................................11-8
System Status – System Alerts ......................................................................................................................11-10
System Status – User Initiated Alerts ............................................................................................................11-12
Performance...................................................................................................................................................11-13
Critical Activities...........................................................................................................................................11-15
Critical Activities Setup.................................................................................................................................11-16
System Alerts, Metrics, Logs.........................................................................................................................11-17
Database Initialization (init.ora) Parameters..................................................................................................11-19

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


iv
Business Flows ..............................................................................................................................................11-20
Monitoring Oracle E-Business Suite Security ...............................................................................................11-22
Monitoring E-Business Suite Security Setup - Diagnostic Tests...................................................................11-24
Applications Dashboard - Security ................................................................................................................11-25
Database Status Details .................................................................................................................................11-26
Application Services......................................................................................................................................11-27
Monitoring Forms..........................................................................................................................................11-28
Forms Runaway Processes ............................................................................................................................11-29
Forms Sessions ..............................................................................................................................................11-31
Forms Runtime Processes..............................................................................................................................11-33
Host Management..........................................................................................................................................11-35
Host Management - Status.............................................................................................................................11-37
Host Management - Configuration ................................................................................................................11-38
Setting Up Oracle Applications Manager......................................................................................................11-39
Dashboard Configuration and Alerting Setup................................................................................................11-40
Setting Up Dashboard Configuration and Alerting .......................................................................................11-41
OracleMetaLink Credentials Setup................................................................................................................11-43
Knowledge Base Setup..................................................................................................................................11-44
Concurrent Requests Setup............................................................................................................................11-45
Signon Audit Setup........................................................................................................................................11-46
Summary........................................................................................................................................................11-47
Diagnostics and Troubleshooting with Oracle Applications Manager .......................................................12-1
Oracle Applications Manager - Diagnostics and Troubleshooting ................................................................12-3
Objectives ......................................................................................................................................................12-4
Diagnostics and Troubleshooting in Oracle Applications Manager ..............................................................12-5
Applications Dashboard - Diagnostics ..........................................................................................................12-7
Troubleshooting Wizards...............................................................................................................................12-9
Concurrent Manager Recovery Wizard .........................................................................................................12-11
Service Infrastructure Wizard........................................................................................................................12-13
Generic Collection Service (GCS) and Forms Monitoring Wizard ...............................................................12-14
CP Signature..................................................................................................................................................12-15
Dashboard Collection Wizard........................................................................................................................12-17
Support Cart...................................................................................................................................................12-18
Summary........................................................................................................................................................12-20
Managing Concurrent Programs and Reports .............................................................................................13-1
Managing Concurrent Requests.....................................................................................................................13-3
Objectives ......................................................................................................................................................13-4
Concurrent Requests, Programs, and Managers ............................................................................................13-6
Business Needs for Concurrent Processing ...................................................................................................13-7
Business Needs for Standard Request Submission........................................................................................13-8
Definitions .....................................................................................................................................................13-9
Submit Request Flow.....................................................................................................................................13-11
Submit a New Request ..................................................................................................................................13-12
Using the Parameters Window ......................................................................................................................13-13
Defining a Submission Schedule ...................................................................................................................13-14
Defining Completion Options........................................................................................................................13-16
Request ID .....................................................................................................................................................13-17
Reprinting a Report .......................................................................................................................................13-18
Use the Requests Window to View and Change Requests ............................................................................13-19
How to Use the Requests Window ................................................................................................................13-20
Using the Requests Window..........................................................................................................................13-21
Viewer Options Window ...............................................................................................................................13-23
Canceling a Request ......................................................................................................................................13-24
Holding a Request .........................................................................................................................................13-25
Changing Request Options ............................................................................................................................13-26
Four Phases of a Concurrent Request ............................................................................................................13-27

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


v
Pending Phase................................................................................................................................................13-28
Running Phase ...............................................................................................................................................13-29
Completed Phase ...........................................................................................................................................13-30
Inactive Phase................................................................................................................................................13-31
System Administrator Monitoring Privileges ................................................................................................13-32
Review Log Files...........................................................................................................................................13-33
Managing Log Files and Tables ....................................................................................................................13-34
Purge Request Results ...................................................................................................................................13-35
Grouping Concurrent Programs and Requests...............................................................................................13-36
Creating a Request Group..............................................................................................................................13-38
Using a Request Group with a Code..............................................................................................................13-39
Submitting Requests: Form Compared with Responsibility..........................................................................13-40
Implementing a Coded Request Group..........................................................................................................13-41
Customization Example.................................................................................................................................13-42
Creating the New Form Function ..................................................................................................................13-43
Passable Request Parameters.........................................................................................................................13-44
Adding the Function to the Menu..................................................................................................................13-45
Defining a Request Set ..................................................................................................................................13-46
Request Set Stages.........................................................................................................................................13-47
Stage Status ...................................................................................................................................................13-48
Linking of Stages...........................................................................................................................................13-50
Defining Request Sets Step 1: Enter Request Set Name ...............................................................................13-51
Defining Request Sets Step 2: Define a Stage ...............................................................................................13-53
Defining Request Sets Step 3: Enter Requests for Stage ...............................................................................13-54
Defining Request Sets Step 4: Enter Request Parameter...............................................................................13-55
Defining Request Sets Step 5: Link Stages ...................................................................................................13-56
Submitting a Request Set...............................................................................................................................13-57
User Request Set Privileges...........................................................................................................................13-58
System Administrator Request Set Privileges ...............................................................................................13-59
Summary........................................................................................................................................................13-60
Administering Concurrent Managers............................................................................................................14-1
Administering Concurrent Managers.............................................................................................................14-3
Objectives ......................................................................................................................................................14-4
Concurrent Requests, Programs, and Processes ............................................................................................14-5
Overview of Concurrent Processing ..............................................................................................................14-6
Generic Service Management (GSM)............................................................................................................14-7
Defining a Concurrent Manager ....................................................................................................................14-8
Defining Work Shifts.....................................................................................................................................14-10
Balancing Process Workload Over Time.......................................................................................................14-11
Work Shift Hierarchy ....................................................................................................................................14-12
Concurrent Managers Window: Program Libraries.......................................................................................14-13
Assigning Workshifts to a Manager ..............................................................................................................14-14
Specializing a Concurrent Manager...............................................................................................................14-15
Specializing a Concurrent Manager: Combined Rules ..................................................................................14-16
Specialization Rules ......................................................................................................................................14-17
Action Types .................................................................................................................................................14-18
Combining Multiple Actions Within Rules ...................................................................................................14-19
Concurrent Request Types.............................................................................................................................14-20
Using Request Types .....................................................................................................................................14-21
Conflicts Domains .........................................................................................................................................14-22
Processing Conflicts Domains.......................................................................................................................14-24
Control Functions of Concurrent Managers ..................................................................................................14-25
Internal Monitor and ICM .............................................................................................................................14-27
Defining a Transaction Manager ...................................................................................................................14-28
Viewing Log and Output Files ......................................................................................................................14-29
Managing Parallel Concurrent Processing.....................................................................................................14-30

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


vi
Summary........................................................................................................................................................14-32
Introduction to Oracle Workflow ..................................................................................................................15-1
Introduction to Oracle Workflow ..................................................................................................................15-3
Objectives ......................................................................................................................................................15-4
Enabling E-Business......................................................................................................................................15-5
Inter-Enterprise Business Processes ..............................................................................................................15-6
Traditional Workflow ....................................................................................................................................15-7
Workflow-Driven Business Processes...........................................................................................................15-8
Sample Workflow Process.............................................................................................................................15-10
Event-Based Workflow .................................................................................................................................15-11
Subscription-Based Processing......................................................................................................................15-12
System Integration with Oracle Workflow ....................................................................................................15-13
Business Process-Based Integration ..............................................................................................................15-14
Supported System Integration Types.............................................................................................................15-15
Designing Applications for Change...............................................................................................................15-16
Designing Applications for Integration .........................................................................................................15-19
Oracle Workflow in Oracle E-Business Suite ...............................................................................................15-21
Summary........................................................................................................................................................15-22
Oracle Workflow Components.......................................................................................................................16-1
Oracle Workflow Components ......................................................................................................................16-3
Objectives ......................................................................................................................................................16-4
Oracle Workflow Architecture ......................................................................................................................16-5
Oracle Workflow Components ......................................................................................................................16-9
Workflow Engine ..........................................................................................................................................16-10
Workflow Processes ......................................................................................................................................16-11
Supported Process Constructs........................................................................................................................16-13
Oracle Workflow Builder ..............................................................................................................................16-17
Business Event System Architecture .............................................................................................................16-18
Business Event System Components.............................................................................................................16-19
Advanced Queuing, an Enabling Technology ...............................................................................................16-20
Oracle Database Communication Alternatives..............................................................................................16-21
Accessing Oracle Workflow Web Pages .......................................................................................................16-23
Oracle Workflow Home Pages ......................................................................................................................16-24
Notification System .......................................................................................................................................16-25
Worklist Web Pages ......................................................................................................................................16-26
E-Mail Notifications ......................................................................................................................................16-27
Directory Services .........................................................................................................................................16-28
Status Monitor Web Pages.............................................................................................................................16-29
Workflow Definitions Loader........................................................................................................................16-30
Workflow XML Loader.................................................................................................................................16-31
Workflow Manager........................................................................................................................................16-32
Service Components ......................................................................................................................................16-33
Oracle Workflow Documentation..................................................................................................................16-34
Review Questions ..........................................................................................................................................16-36
Summary........................................................................................................................................................16-37
Setting Up Oracle Workflow ..........................................................................................................................17-1
Setting Up Oracle Workflow .........................................................................................................................17-3
Objectives ......................................................................................................................................................17-4
Required Setup Steps.....................................................................................................................................17-5
Step 1 Setting Global Workflow Preferences ................................................................................................17-6
Step 2 Setting Up an Oracle Workflow Directory Service ............................................................................17-9
Step 3 Running Background Engines ............................................................................................................17-13
Step 4 Configuring the Business Event System.............................................................................................17-16
Step 4 Event Message Communication .........................................................................................................17-17
Step 4 Setting Up Database Links and Queues..............................................................................................17-18

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


vii
Step 4 Checking Database Parameters...........................................................................................................17-19
Step 4 Scheduling Agent Listeners................................................................................................................17-20
Step 4 Scheduling Propagation......................................................................................................................17-23
Step 4 Synchronizing License Statuses .........................................................................................................17-27
Step 4 Cleaning Up the WF_CONTROL Queue...........................................................................................17-28
Step 4 Tuning Performance ...........................................................................................................................17-29
Step 4 Specifying the BPEL Server...............................................................................................................17-31
Optional Setup Steps .....................................................................................................................................17-32
Optional Step 1 Partitioning Workflow Tables .............................................................................................17-34
Optional Step 2 Setting Up Additional Languages........................................................................................17-36
Optional Step 3 Implementing Notification Mailers .....................................................................................17-38
Optional Step 4 Customizing Message Templates ........................................................................................17-41
Optional Step 5 Adding Worklist Functions to User Responsibilities...........................................................17-44
Optional Step 6 Setting the Notification Reassign Mode ..............................................................................17-46
Optional Step 7 Setting Up Notification Handling Options ..........................................................................17-47
Optional Step 8 Setting Up for Electronic Signatures ...................................................................................17-49
Optional Step 9 Customizing the Workflow Web Page Logo .......................................................................17-51
Optional Step 10 Adding Custom Icons ........................................................................................................17-52
Version Compatibility ...................................................................................................................................17-53
Review Questions ..........................................................................................................................................17-54
Summary........................................................................................................................................................17-56
Overview of Flexfields .....................................................................................................................................18-1
Overview of Flexfields ..................................................................................................................................18-3
Objectives ......................................................................................................................................................18-4
Overview .......................................................................................................................................................18-5
Customizing Oracle Applications..................................................................................................................18-6
Flexfield Structures and Flexfield Segments .................................................................................................18-7
Segment Prompts and Value Descriptions.....................................................................................................18-8
Validating Input Using Value Sets ................................................................................................................18-9
Key and Descriptive Flexfields .....................................................................................................................18-10
Key Flexfields ...............................................................................................................................................18-11
Intelligent Keys .............................................................................................................................................18-12
Key Flexfield Example: Accounting Flexfield ..............................................................................................18-14
Oracle Applications Key Flexfields...............................................................................................................18-15
Descriptive Flexfields....................................................................................................................................18-16
Using Reference Fields..................................................................................................................................18-17
Using Different Contexts: Asset Category Flexfield .....................................................................................18-18
Oracle Applications Descriptive Flexfields (Partial) .....................................................................................18-19
Standard Request Submission (SRS) and Flexfields .....................................................................................18-20
Benefits of Flexfields.....................................................................................................................................18-21
Storing Flexfield Data Internally ...................................................................................................................18-22
Implementing a Flexfield Steps ....................................................................................................................18-23
Summary........................................................................................................................................................18-24
Using Value Sets...............................................................................................................................................19-1
Using Value Sets ...........................................................................................................................................19-3
Objectives ......................................................................................................................................................19-4
Overview .......................................................................................................................................................19-5
Validating Input Using Value Sets ................................................................................................................19-6
Planning a Value Set......................................................................................................................................19-7
Types of Value Sets.......................................................................................................................................19-8
Validation Type None ...................................................................................................................................19-10
Independent Value Sets .................................................................................................................................19-11
Dependent Value Sets....................................................................................................................................19-12
Table-Validated Value Sets ...........................................................................................................................19-13
Specialized Validation Types ........................................................................................................................19-14
Translatable Independent Value Sets.............................................................................................................19-15

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


viii
Translatable Dependent Value Sets ...............................................................................................................19-16
Validation Types: Summary ..........................................................................................................................19-17
Planning Value Sets.......................................................................................................................................19-18
Value Set Attributes.......................................................................................................................................19-19
Planning Format Validation...........................................................................................................................19-20
Format Types and Options.............................................................................................................................19-21
Char and Number Format Editing .................................................................................................................19-22
Time, Standard Date, and Standard DateTime Format Editing .....................................................................19-23
Format Interaction .........................................................................................................................................19-24
Formatting Requirements for Translatable Value Sets .................................................................................19-25
Planning Validation Strategy.........................................................................................................................19-26
Planning Value Sets and Their Values ..........................................................................................................19-28
Planning Dependent Value Sets.....................................................................................................................19-29
Defining Value Sets.......................................................................................................................................19-30
Predefined Value Sets....................................................................................................................................19-31
Using Existing Value Sets .............................................................................................................................19-32
Value Set Usage by Key Flexfields ...............................................................................................................19-33
Value Set Usage by Descriptive Flexfields ...................................................................................................19-35
Defining a New Value Set .............................................................................................................................19-36
Defining a Dependent or Translatable Dependent Value Set ........................................................................19-37
Selecting a Value Set for Value Definition ...................................................................................................19-38
Defining Values for a Dependent or Translatable Dependent Value Set.......................................................19-39
Defining Values for a Value Set....................................................................................................................19-40
Modifying Value Definitions.........................................................................................................................19-41
Value Hierarchies ..........................................................................................................................................19-42
Defining Value Hierarchies and Qualifiers....................................................................................................19-44
Summary........................................................................................................................................................19-45
Defining Descriptive Flexfields .......................................................................................................................20-1
Defining Descriptive Flexfields.....................................................................................................................20-3
Objectives ......................................................................................................................................................20-4
Overview .......................................................................................................................................................20-5
Planning a Descriptive Flexfield ...................................................................................................................20-6
Using Descriptive Flexfields .........................................................................................................................20-8
Typical Descriptive Flexfield Information ....................................................................................................20-9
Some Oracle Applications Descriptive Flexfields.........................................................................................20-10
Identifying a Descriptive Flexfield ................................................................................................................20-11
Determining the Descriptive Flexfield Name ................................................................................................20-12
Determining Available Resources .................................................................................................................20-14
Planning Questions ........................................................................................................................................20-15
Identifying Your Information ........................................................................................................................20-16
Grouping Information By Usage ...................................................................................................................20-17
Isolate Common Information.........................................................................................................................20-18
Determine Different Contexts........................................................................................................................20-19
Descriptive Flexfield Components ................................................................................................................20-20
Global Segments............................................................................................................................................20-21
Context-Sensitive Segments ..........................................................................................................................20-22
Distinguishing Between Contexts..................................................................................................................20-23
Reference and Context Fields........................................................................................................................20-24
Using Reference Fields..................................................................................................................................20-25
Identifying Referenceable Columns ..............................................................................................................20-26
Using Context Fields .....................................................................................................................................20-27
Synchronizing the Context Field Value with the Reference Field Value ......................................................20-28
Planning Flexfields: Global Segments Only..................................................................................................20-30
Planning Flexfields: Context Segments Only ...............................................................................................20-31
Planning Flexfields: Global and Context Fields ............................................................................................20-32
Specifying the Flexfield Attributes................................................................................................................20-33

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


ix
Specifying the Context Field Information .....................................................................................................20-34
Specifying the Segment Attributes ................................................................................................................20-36
Storing Descriptive Flexfield Segments ........................................................................................................20-37
Descriptive Flexfield Application Tables ......................................................................................................20-38
Specifying the Segment Detail Attributes .....................................................................................................20-40
Specifying Default Values.............................................................................................................................20-43
Defining a Descriptive Flexfield ...................................................................................................................20-45
Defining Value Sets.......................................................................................................................................20-46
Locating the Flexfield Definition ..................................................................................................................20-47
Defining the Flexfield Header Attributes ......................................................................................................20-48
Defining Segment Attributes .........................................................................................................................20-49
Specifying Validation and Field Sizes...........................................................................................................20-50
Freezing and Compiling the Definition .........................................................................................................20-51
Defining Context Field Information ..............................................................................................................20-52
Defining Context-Sensitive Segments ...........................................................................................................20-54
Defining Values for a Value Set....................................................................................................................20-55
Summary........................................................................................................................................................20-56
Defining Key Flexfields ...................................................................................................................................21-1
Defining Key Flexfields ................................................................................................................................21-3
Objectives ......................................................................................................................................................21-4
Overview .......................................................................................................................................................21-6
Intelligent Keys .............................................................................................................................................21-8
Key Flexfields' Dual Purpose ........................................................................................................................21-9
Oracle Applications Key Flexfields...............................................................................................................21-10
Implementing Key Flexfields ........................................................................................................................21-11
Key Flexfield Structures................................................................................................................................21-12
Code Combinations .......................................................................................................................................21-13
Storing Code Combinations...........................................................................................................................21-14
Key Flexfield Application Tables..................................................................................................................21-15
Key Flexfield Qualifiers ................................................................................................................................21-16
Types of Qualifiers ........................................................................................................................................21-17
Flexfield Qualifiers........................................................................................................................................21-18
Segment Qualifiers ........................................................................................................................................21-20
Other Key Flexfield Options .........................................................................................................................21-21
Allowing Dynamic Insertion .........................................................................................................................21-22
Cross-Validating Values................................................................................................................................21-23
Using Shorthand Aliases ...............................................................................................................................21-24
Securing Value Set Access ............................................................................................................................21-25
Designing the Key Flexfield Layout..............................................................................................................21-26
Designing Segments ......................................................................................................................................21-27
Specifying Default Values.............................................................................................................................21-28
Planning Decisions ........................................................................................................................................21-30
Planning Key Flexfield Values......................................................................................................................21-32
Definition Procedure......................................................................................................................................21-33
Defining Value Sets.......................................................................................................................................21-34
Accessing the Key Flexfield Definition.........................................................................................................21-35
Specifying Flexfield Behavior.......................................................................................................................21-36
Defining Segment Attributes .........................................................................................................................21-37
Defining Validation and Size Attributes........................................................................................................21-38
Defining Flexfield Qualifiers.........................................................................................................................21-39
Freezing and Compiling the Definition .........................................................................................................21-40
Defining Value Set Values ............................................................................................................................21-41
Defining Segment Qualifiers .........................................................................................................................21-42
Cross-Validating Values................................................................................................................................21-43
Cross-Validation Rule Syntax .......................................................................................................................21-44
Data Type Specifications and Cross-Validation Rules ..................................................................................21-45

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


x
Preparing for Cross-Validation......................................................................................................................21-46
Defining Cross-Validation Rules...................................................................................................................21-47
Cross-Validation Reports ..............................................................................................................................21-48
Comparing Cross-Validation and Security Rules ..........................................................................................21-49
Using Shorthand Aliases ...............................................................................................................................21-50
Using Full and Partial Aliases .......................................................................................................................21-51
Typical Key Flexfields Using Aliases ...........................................................................................................21-52
Defining an Alias...........................................................................................................................................21-53
Defining an Alias Template...........................................................................................................................21-54
Recompiling the Flexfield Definition ............................................................................................................21-55
Flexfields: Shorthand Entry Profile Option ...................................................................................................21-56
Flexfields: Show Full Value Profile Option ..................................................................................................21-57
Modifying Existing Alias Definitions............................................................................................................21-58
Securing Value Set Access ............................................................................................................................21-59
Security and Value Sets.................................................................................................................................21-60
Constructing Security Rules ..........................................................................................................................21-61
Specifying Acceptable Values.......................................................................................................................21-62
Using Multiple Clauses .................................................................................................................................21-63
Rules with Overlapping Values .....................................................................................................................21-64
Rules Without Overlapping Values ...............................................................................................................21-65
Implementing Flexfield Security ...................................................................................................................21-66
Enabling Security for a Value Set .................................................................................................................21-67
Enabling Security for a Segment ...................................................................................................................21-68
Enabling Security for a Program Parameter ..................................................................................................21-70
Defining Security Rules.................................................................................................................................21-71
Assigning Security Rules...............................................................................................................................21-72
Defining Key Flexfields Summary ...............................................................................................................21-74
Using Advanced Validation Capabilities .......................................................................................................22-1
Using Advanced Validation Capabilities.......................................................................................................22-3
Objectives ......................................................................................................................................................22-4
Overview .......................................................................................................................................................22-5
Advanced Validation Options........................................................................................................................22-6
Table-Validated Value Sets ...........................................................................................................................22-7
Defining a Table-Validated Value Set...........................................................................................................22-8
Restricting Values Retrieved from a Table....................................................................................................22-9
Limitations on Using SQL WHERE Clauses ................................................................................................22-10
Using Multiple Tables for Validation............................................................................................................22-11
Other Advanced Validation Options..............................................................................................................22-12
Using $PROFILES$ ......................................................................................................................................22-13
Using :block.field ..........................................................................................................................................22-14
Using $FLEX$...............................................................................................................................................22-15
Cascading Dependencies Using $FLEX$......................................................................................................22-16
Using Special Value Sets...............................................................................................................................22-17
Using Pair Value Sets ....................................................................................................................................22-18
Summary........................................................................................................................................................22-19
Appendix - Administering Folders.................................................................................................................23-1
Appendix - Administering Folders ................................................................................................................23-3
Objectives ......................................................................................................................................................23-4
Folders: Definition.........................................................................................................................................23-5
Administering Folders: Topics ......................................................................................................................23-6
Assigning a Default Folder to a Responsibility .............................................................................................23-7
Assigning a Default Folder to a User.............................................................................................................23-8
Assigning Ownership of a Folder ..................................................................................................................23-9
Deleting a Folder Definition..........................................................................................................................23-10
Summary........................................................................................................................................................23-11

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


xi
Appendix - Incorporating a Custom Program..............................................................................................24-1
Appendix - Incorporating a Custom Program................................................................................................24-3
Objectives ......................................................................................................................................................24-4
Using Custom Programs in Oracle Applications ...........................................................................................24-5
Assumptions for Incorporating a New Program ...........................................................................................24-6
Components of a Concurrent Program ..........................................................................................................24-7
Adding a Custom Program to Oracle Applications ......................................................................................24-8
Identifying the Executable.............................................................................................................................24-9
Creating the Concurrent Program ..................................................................................................................24-11
Concurrent Program Parameters Window .....................................................................................................24-13
Associating a Program with a Request Group ...............................................................................................24-15
Submitting the Concurrent Program ..............................................................................................................24-16
Summary........................................................................................................................................................24-17
Appendix - Incorporating Custom Help Files ...............................................................................................25-1
Appendix - Incorporating Custom Help Files................................................................................................25-3
Objectives ......................................................................................................................................................25-4
Customizing Help ..........................................................................................................................................25-5
Oracle Applications Help System Utility ......................................................................................................25-6
Help System Utility Setup: Define Directory Paths.......................................................................................25-7
Downloading Help Files ................................................................................................................................25-8
Identify Help Files for Customization ...........................................................................................................25-9
Identify the Language and Product of the Files ............................................................................................25-10
Downloading Help Files for Editing..............................................................................................................25-11
Linking Help Files .........................................................................................................................................25-12
Special Syntax versus Conventional HTML..................................................................................................25-13
Cross-Application Links................................................................................................................................25-14
Related Topics Links .....................................................................................................................................25-15
Related Topics Links Syntax .........................................................................................................................25-16
Uploading Your New or Changed Help Files................................................................................................25-17
File Upload Steps...........................................................................................................................................25-18
Updating the Search Index.............................................................................................................................25-20
Creating Reports ............................................................................................................................................25-21
Running Reports ............................................................................................................................................25-22
Customizing Help Navigation Trees..............................................................................................................25-23
Help Builder Functions..................................................................................................................................25-24
The Help Builder ...........................................................................................................................................25-25
Opening a Tree for Editing ............................................................................................................................25-26
Adding New Help Files to a Tree ..................................................................................................................25-27
Adding New Nodes to a Tree ........................................................................................................................25-28
For Further Information.................................................................................................................................25-29
Summary........................................................................................................................................................25-30
Guided Demonstrations and Practices...........................................................................................................26-1
Guided Demonstrations and Practices ...........................................................................................................26-3
Practice - Users..........................................................................................................................................26-4
Solution - Users .........................................................................................................................................26-5
Practice - Data Groups...............................................................................................................................26-9
Solution – Data Groups .............................................................................................................................26-11
Practice - Menus ........................................................................................................................................26-13
Solution - Menus .......................................................................................................................................26-16
Practice - Query-Only Forms.....................................................................................................................26-24
Solution - Query-Only Forms ....................................................................................................................26-25
Practice - Responsibilities..........................................................................................................................26-30
Solution - Responsibilities .........................................................................................................................26-32
Guided Demonstration - Data Security Policy Example............................................................................26-36
Guided Demonstration - Creating Role Categories ...................................................................................26-37
Practice - Creating a Role and Placing it in a Role Inheritance Hierarchy ................................................26-38

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


xii
Solution – Creating a Role and Placing it in a Role Inheritance Hierarchy...............................................26-40
Practice - Assigning Permission Sets to the Role ......................................................................................26-42
Solution – Assigning Permission Sets to the Role.....................................................................................26-44
Guided Demonstration - Setting Up Delegated Administration ................................................................26-45
Practice - Testing Delegated Administration.............................................................................................26-47
Solution – Testing Delegated Administration............................................................................................26-49
Practice - Creating a Registration Process for the Role .............................................................................26-51
Solution – Creating a Registration Process for the Role............................................................................26-53
Practice - Testing the Registration Process for the Role............................................................................26-54
Solution – Testing the Registration Process for the Role ..........................................................................26-56
Practice - Profile Options...........................................................................................................................26-58
Solution - Profile Options..........................................................................................................................26-59
Practice - Auditing Resources....................................................................................................................26-61
Solution - Auditing Resources...................................................................................................................26-62
Guided Demonstration - Support Cart .......................................................................................................26-64
Practice - Scheduling Requests..................................................................................................................26-65
Solution - Scheduling Requests .................................................................................................................26-66
Practice - Request Groups .........................................................................................................................26-72
Solution - Request Groups.........................................................................................................................26-74
Practice - Coded Request Groups ..............................................................................................................26-76
Solution - Coded Request Groups .............................................................................................................26-78
Practice - Request Sets Using Wizard .......................................................................................................26-84
Solution - Request Sets Using Wizard.......................................................................................................26-85
Practice - Administering Concurrent Managers.........................................................................................26-87
Solution - Administering Concurrent Managers........................................................................................26-90
Guided Demonstration - Loading and Running a Workflow Process........................................................26-97
Practice - Define a Descriptive Flexfield...................................................................................................26-99
Solution – Define a Descriptive Flexfield .................................................................................................26-104
Practice - Define a Descriptive Flexfield with None Validation ...............................................................26-109
Solution – Define a Descriptive Flexfield with None Validation ..............................................................26-111
Practice - Define a Descriptive Flexfield with Context-Sensitive Segment ..............................................26-115
Solution – Define a Descriptive Flexfield with a Context-Sensitive Segment ..........................................26-118
Practice - Define a Descriptive Flexfield with a Dependent Segment.......................................................26-124
Solution – Define a Descriptive Flexfield with a Dependent Segment......................................................26-127
Practice - Define a Key Flexfield ..............................................................................................................26-131
Solution - Define a Key Flexfield..............................................................................................................26-135
Practice - Security Rules............................................................................................................................26-144
Solution – Security Rules ..........................................................................................................................26-146
Practice - Cross-Validation Rules..............................................................................................................26-148
Solution - Cross-Validations......................................................................................................................26-150
Practice - Shorthand Aliases ......................................................................................................................26-152
Solution – Shorthand Aliases.....................................................................................................................26-153
Practice - Table Validation ........................................................................................................................26-154
Solution – Table Validation.......................................................................................................................26-155
Practice - Cascading Dependencies with $FLEX$ ....................................................................................26-157
Solution – Cascading Dependencies with $FLEX$...................................................................................26-161
Guided Demonstration - Folders................................................................................................................26-166
Practice - Incorporating Custom Programs................................................................................................26-173
Solution - Incorporating Custom Programs ...............................................................................................26-174

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


xiii
Preface
Profile
Before You Begin This Course

• Thorough knowledge of R12 Oracle Applications Navigation

Prerequisites

• There are no prerequisites for this course.

How This Course Is Organized

This is an instructor-led course featuring lecture and hands-on exercises. Online demonstrations
and written practice sessions reinforce the concepts and skills introduced.

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


xv
Related Publications
Oracle Publications
Title Part Number
Oracle Applications System Administrator’s Guide – Security B31451
Oracle Applications System Administrator’s Guide – Configuration B31453
Oracle Applications System Administrator’s Guide – Maintenance B31454
Oracle Workflow Administrator’s Guide B31431

Additional Publications

• System release bulletins

• Installation and user’s guides

• Read-me files

• International Oracle User’s Group (IOUG) articles

• Oracle Magazine

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


xvi
Typographic Conventions
Typographic Conventions in Text
Convention Element Example
Bold italic Glossary term (if The algorithm inserts the new key.
there is a glossary)
Caps and Buttons, Click the Executable button.
lowercase check boxes, Select the Can’t Delete Card check box.
triggers, Assign a When-Validate-Item trigger to the ORD block.
windows Open the Master Schedule window.
Courier new, Code output, Code output: debug.set (‘I”, 300);
case sensitive directory names, Directory: bin (DOS), $FMHOME (UNIX)
(default is filenames, Filename: Locate the init.ora file.
lowercase) passwords, Password: User tiger as your password.
pathnames, Pathname: Open c:\my_docs\projects
URLs, URL: Go to http://www.oracle.com
user input,
User input: Enter 300
usernames
Username: Log on as scott
Initial cap Graphics labels Customer address (but Oracle Payables)
(unless the term is a
proper noun)
Italic Emphasized words Do not save changes to the database.
and phrases, For further information, see Oracle7 Server SQL Language
titles of books and Reference Manual.
courses, Enter user_id@us.oracle.com, where user_id is the
variables name of the user.
Quotation Interface elements Select “Include a reusable module component” and click Finish.
marks with long names
that have only This subject is covered in Unit II, Lesson 3, “Working with
initial caps; Objects.”
lesson and chapter
titles in cross-
references
Uppercase SQL column Use the SELECT command to view information stored in the
names, commands, LAST_NAME
functions, schemas, column of the EMP table.
table names
Arrow Menu paths Select File > Save.
Brackets Key names Press [Enter].
Commas Key sequences Press and release keys one at a time:
[Alternate], [F], [D]
Plus signs Key combinations Press and hold these keys simultaneously: [Ctrl]+[Alt]+[Del]

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


xvii
Typographic Conventions in Code
Convention Element Example
Caps and Oracle Forms When-Validate-Item
lowercase triggers
Lowercase Column names, SELECT last_name
table names FROM s_emp;

Passwords DROP USER scott


IDENTIFIED BY tiger;
PL/SQL objects OG_ACTIVATE_LAYER
(OG_GET_LAYER (‘prod_pie_layer’))

Lowercase Syntax variables CREATE ROLE role


italic
Uppercase SQL commands and SELECT userid
functions FROM emp;

Typographic Conventions in Oracle Application Navigation Paths


This course uses simplified navigation paths, such as the following example, to direct you
through Oracle Applications.

(N) Invoice > Entry > Invoice Batches Summary (M) Query > Find (B) Approve

This simplified path translates to the following:

1. (N) From the Navigator window, select Invoice then Entry then Invoice Batches
Summary.

2. (M) From the menu, select Query then Find.

3. (B) Click the Approve button.

Notations:

(N) = Navigator

(M) = Menu

(T) = Tab

(B) = Button

(I) = Icon

(H) = Hyperlink

(ST) = Sub Tab

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


xviii
Typographical Conventions in Oracle Application Help System Paths
This course uses a “navigation path” convention to represent actions you perform to find
pertinent information in the Oracle Applications Help System.

The following help navigation path, for example—

(Help) General Ledger > Journals > Enter Journals

—represents the following sequence of actions:

1. In the navigation frame of the help system window, expand the General Ledger entry.

2. Under the General Ledger entry, expand Journals.

3. Under Journals, select Enter Journals.

4. Review the Enter Journals topic that appears in the document frame of the help system
window.

Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


xix
Copyright © Oracle Corporation, 2006. All rights reserved.

R12 System Administrator Fundamentals Table of Contents


xx
Introduction
Chapter 1

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction
Chapter 1 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction
Chapter 1 - Page 2
Introduction

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction
Chapter 1 - Page 3
Course Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction
Chapter 1 - Page 4
Overview

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction
Chapter 1 - Page 5
Oracle Applications System Administration

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction
Chapter 1 - Page 6
Oracle Workflow Component

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction
Chapter 1 - Page 7
Oracle Applications Flexfields Component

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction
Chapter 1 - Page 8
Additional Material

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction
Chapter 1 - Page 9
Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction
Chapter 1 - Page 10
Introduction to Oracle
Applications Security
Chapter 2

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 2
Introduction to Oracle Applications Security

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 3
Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 4
Successive Layers of Access Control

Layers of Access Control


Access control with User Management is implemented in successive layers and each builds
upon the one that precedes it. Organizations can optionally uptake the various layers depending
on the degree of automation and scalability they wish to build upon the existing Function and
Data Security models.
There are six layers of access control. The Core Security layers include:
• Function Security
• Data Security
The next four layers are part of Oracle User Management:
• Role Based Access Control
• Delegated Administration
• Registration Processes
• Self Service and Approvals

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 5
Increasing Flexibility and Scalability

Increasing Flexibility and Scalability


In general, Access Control with Oracle User Management begins with basic system
administration tasks and then progresses to more distributed, local modes of administration,
and ultimately enables users to perform some basic, predefined registration tasks on their own.
Details of the various levels of access control and the increasing level of flexibility and
automation are provided later in the course, however the following general guidelines may be
considered for the time being:
System Administrator
Oracle’s Function Security and Data Security mechanisms constitute the base layers, and
contain the traditional system administrative capabilities. Organizations can optionally add
more layers to the system depending on the degree of flexibility they require.
By themselves, Function Security and Data Security limit the scope of Oracle User
Management to basic system administration by granting access to specific menus and to the
data that can be accessed from within those menus.
Local Administrators

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 6
When Role Based Access Control and Delegated Administration are added to the Data Security
and Function Security layers system administration tasks can be distributed to local
administrators who manage a subset of the organization’s users.
End Users
Registration Processes and Self Service and Approvals further distribute system administration
by automating some registration tasks.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 7
Function Security

Function Security
The base layer of access control within Oracle Applications is Function Security. Function
Security restricts user access to the individual menus and menu options within the system. It
can also be used to control access to some specific widget (often, graphical in nature) within a
page. Each of these various elements is represented in the system as a function, which is also
known as a permission. Using the Order Entry page as an example, Function Security could
control whether you have the ability to create a new order, or even access the page.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 8
Data Security

Data Security
The second layer represents Data Security. Working in conjunction with Function Security,
Data Security provides additional access control on the data a user can see and what actions a
user can perform on that data, within Oracle Applications. Note that Data Security is not used
in all Oracle Applications products. Products that do use data security include Oracle Projects,
Quality, and Cash Management.
Data Security Policies restrict the actions or operations that can be performed on a specific
business object (for example, inventory items). Data Security Policies can reflect access to:
• All Instances – All instances of an object represents all rows in the database object. For
example, assume that we have an object “inventory item” in the database. Creating a data
security policy for all instances of our object would result in providing access to every
single inventory item we have catalogued in the database.
• An Instance Set – An instance set is a related set of instances of an object. This
corresponds to a set of rows for the database object. Using our object example, an
instance set could be constructed to include all inventory items with a shelf life of 7 days.
• A Specific Instance – A specific instance generally corresponds to a single row in the
database. A specific instance is generally identified by a primary key value for the object.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 9
Using our example, we could enter a unique serial number for the inventory item. This
would return one and only one inventory item from the database.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 10
Oracle User Management Layers of Access Control

Oracle User Management Layers of Access Control


The next four layers of access control are used in Oracle User Management, an optional
component in the implementation of Oracle Applications.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 11
Role Based Access Control (RBAC)

Role Based Access Control (RBAC)


A role can be configured to consolidate the responsibilities, permissions, function security and
data security polices users require to perform a specific function. This is accomplished with a
one-time setup, in which permissions, responsibilities, and other roles are assigned to the role.
Users are not required to be assigned the lower level permissions directly since permissions are
implicitly inherited based on the roles assigned to the user. When making a mass update in a
production system an organization simply changes the permissions or role inheritance
hierarchy defined for a role. The users assigned that role subsequently inherit the new set of
permissions.
Role Categories
Administrators can create role categories to bundle roles and responsibilities to simplify the
process of searching for roles and responsibilities. For example all sales and marketing related
roles could be included in the Sales & Marketing category.
Role Inheritance Hierarchies
Roles can be included in role inheritance hierarchies that can contain multiple sub-roles and
superior roles. With role inheritance hierarchies a superior role inherits all of the properties of
its sub-role and any of its sub-roles.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 12
Example
Organizations can define roles that closely mirror their business situation. For example, an
organization can create an "Employee" role and assign that role to all of its employees. It can
also create an "External" role and assign that role to customers and suppliers. Further examples
may include specific roles such as "Support Agent", "Sales Rep", "Sales Managers". In these
examples, each role contains a specific level of access privileges that restricts its assignees to
the scope of their job functions. Some members of the organization will probably be assigned
more than one role. A sales representative would be assigned the Employee and Sales
Representative roles and a Sales Manager would be assigned the Employee, Sales
Representative, and Sales Manager roles. Roles and role assignments are stored in the
workflow directory, which is interpreted by the security system at runtime.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 13
Delegated Administration

Delegated Administration
With delegated administration, instead of exclusively relying on a centralized administrator to
manage all of its users, an organization can create local administrators with sufficient
privileges to manage a specific subset of the organization's users and roles. This provides
organizations with a tighter, more granular level of security and the ability to easily scale their
administrative capabilities.
Administration Privileges
Administration Privileges determine the users, roles and organization information delegated
administrators (local administrators) can manage. Each privilege is granted separately, yet the
three work in conjunction to provide the complete set of abilities for the delegated
administrator.
User Administration Privileges
A local administrator must be granted User Administration Privileges to determine the users
and people the local administrator can manage. Local administrators can be granted different
privileges for different subsets of users. For example, a local administrator can be granted
privileges only to query one set of users, and granted full privileges (including update and reset

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 14
password) for another set. Local administrators cannot query users for which they do not have
administration privileges.
Role Administration Privileges
Role Administration Privileges define the roles local administrators can directly assign to and
revoke from the set of users they manage.
Organization Administration Privileges
Organization Administration Privileges define the organizations a local administrator can view
in the system. This privilege enables an administrator to search for people based on their
organization, if the local administrator has additionally been granted access to view the people
in that organization (User Administration Privileges). Depending on the user administration
privileges, an administrator may have the ability to register new people for that organization.
Example
Organizations can internally designate administrators at division or even department levels,
and then delegate administration of external users to people within those (external)
organizations. These delegation policies are defined as data security policies. The set of data
policies defined as part of delegated administration are known as Administration Privileges.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 15
Registration Processes

Registration Processes
Oracle User Management contains the following registration processes.
Self-Service Account Requests
Commonly referred to as Self Service Registration, self-service account requests provide a
method for persons to request a new user account. Consider the case where customers may
need to register before they can purchase an item from an online store. Once the customer has
completed the registration process, the customer obtains both a user account and the necessary
role(s) for accessing some portion of the website in which they registered.
Requests for Additional Access
Users can request additional access through the Oracle User Management Access Request Tool
(ART) available in the global preferences menu. Requests for Additional Access uses the same
Oracle User Management infrastructure and processing logic as Self Service Account
Requests.
Account Creation By Administrators
Administrators can benefit from existing registration processes designed to streamline the
process of creating and maintaining user access. Registration Processes of this type are geared
toward administrators, especially delegated administrators, to ensure consistent application of

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 16
the client's user security policies. Each account creation registration process can be made
available to select local administrators. Local administrators can perform these tasks for users
within their own organizations.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 17
Self Service and Approvals

Self Service and Approvals


Once registration processes have been configured as required, individuals can subsequently
perform self-service registration tasks such as obtaining new user accounts or requesting
additional access to the system. In addition, organizations can use the Oracle Approvals
Management engine, to create customized approval routing for these requests.
Example
An organization may enable users to request a particularly sensitive role, however before the
user is granted the role, the organization can specify that two approvers, a manager and a vice
president, must first provide their approval.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 18
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 19
Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Security


Chapter 2 - Page 20
Function Security
Chapter 3

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 2
Function Security

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 3
Objectives

Lesson Aim
Function Security restricts user access to individual menus of functions, such as forms, HTML
pages, or widgets (such as buttons in a form) within an application. Function Security allows
you to define a user and assign the user one or more responsibilities, where each responsibility
has a menu associated with it. Function Security by itself restricts access to various functions,
but it does not restrict access to the data a user can see or what actions a user can perform on
that data. This lesson discusses defining users, responsibilities, and menus.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 4
Overview of Function Security

Overview of Function Security


In Oracle Applications, the system administrator manages security on a number of levels.
Oracle User Accounts
Oracle User accounts (also known as Oracle IDs) provide access to specific tables in the Oracle
database. These are typically set up by the Oracle database administrators.
Applications
An application is a collection of functions, forms, programs, and reports.
Functions
A function is a part of an application's functionality that is registered under a unique name for
the purpose of assigning it to, or excluding it from, a responsibility. A function can be
assigned to a responsibility through a menu, or excluded from a responsibility via a menu
exclusion. An example of a function is an Oracle Form or an HTML page.
Reports
Reports can be grouped together into request groups, which are in turn assigned to
responsibilities.
Responsibility

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 5
A responsibility is a collection of authorizations that allow access to:
• A specific application or applications.
• A set of books.
• A restricted list of windows, functions, and reports. These may be associated to the
responsibility through menus.
Each user has one or more responsibilities, and several users can share the same responsibility.
A system administrator can assign users any of the standard responsibilities provided with
Oracle Applications or create new custom responsibilities as needed.
Users
A user is defined as a human being. Although the concept of a user can be extended to include
machines, networks, or intelligent autonomous agents, the definition is limited to a person in
this document.
You authorize a user to sign on to Oracle Applications by defining an application user. You
then assign one or more responsibilities to the new user.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 6
Defining a New Application User

Defining a New User


(N) Security > User > Define
Note: All Navigation paths, unless otherwise noted, are from the System Administrator
Responsibility.
Although defining user accounts may be the last task you complete in setting up function
security for your installation, we will cover this task first so that you can complete the
following sections by logging into Oracle Applications with your own user account.
Define an authorized user of Oracle Applications by specifying a username and password.
Grant application privileges by assigning one or more responsibilities to the user. The user will
be able to access functions and reports via the assigned responsibilities. Responsibilities will be
covered later in this chapter.
Note that in previous releases of Oracle Applications, user passwords were treated as case
insensitive. Now, Oracle Applications user passwords can optionally be treated as case
sensitive. Case-sensitivity is controlled by the site-level profile option Signon Password Case.
For a complete explanation of the fields on the Users Form see:
(Help) Applied Technology > Oracle Applications System Administration > Security >
Overview of Oracle Applications Security > Users Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 7
Custom Applications

Custom Applications
An application is composed of components such as forms, menus, and concurrent programs.
An application serves as a unique context for these components. The next three slides discuss
necessary steps in implementing security for a custom application.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 8
Defining an Application

Defining an Application
(N) Application > Register
You can protect custom functions, forms, reports, and programs from being lost during
upgrades by registering them under a custom application.
In the Applications window you will supply the following information:
• Application – Enter a user-friendly name that will appear in lists seen by the user.
• Short Name – Oracle Applications uses this short name to identify forms, menus,
concurrent programs, and other components of your application.
• Basepath – Enter the base path where the forms, reports, and program files are located.
Make sure your base path is unique to prevent other applications from writing to the same
directory.
For a complete explanation of the fields in this form see:
(Help) Applied Technology > Oracle Applications System Administration > Configuration >
Applications DBA > Applications Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 9
Registering an Oracle ID

Registering an Oracle ID
(N) Security > ORACLE > Register
You need to register an Oracle ID if you create a custom application using Oracle Application
Object Library.
Note that:
• Only database administrators can create Oracle accounts.
• Only create a new Oracle ID for a custom extension to Oracle Applications.
• The install group designates which data group the application is associated with. For
applications that span all data groups, the install group is 0. Install groups numbered 1 or
greater are associated with one specific data group. Your database administrator can
supply the correct install group number.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 10
Data Groups

What Is a Data Group?


A data group is a collection of pairings of an application with an Oracle ID. Data groups
automatically support concurrent processing and cross-application reporting. They guarantee
that an application connects to a unique application database account.
Note: The installation process automatically defines data groups for Oracle Applications. For
custom applications, you should use the the standard data groups as well. Information on data
groups is given for legacy purposes.
Application-Oracle ID Pairs
• An application can be listed only once in a data group.
• An Oracle ID can be paired with more than one application.
• A custom application registered with Oracle Applications can be included in a data group.
Data Groups and Application Object Library
Application Object Library owns the database tables referred to during concurrent processing
and the standard submission of reports by any Oracle Application. Therefore all applications
need access to the Application Object Library tables. When you are defining a data group, the

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 11
application Application Object Library is automatically included. The Application Object
Library’s Oracle ID cannot be updated or deleted.
Relating Data Groups to Forms and Programs
You can control the relationship among applications, forms, and concurrent programs by
defining a data group.
Applications, Forms, and Programs
• A window connects to the application database account designated by the responsibility
associated with the application.
• A data group determines the pairing of an application with a unique application database
account or Oracle ID.
• A program connects to the application database account associated with the application
that owns the program.
Application-Oracle ID Pairs
• An Oracle ID is a username and password that allows access to application tables in an
Oracle database.
• A data group lists the Oracle ID assigned to each Oracle application.
• A custom application registered with Oracle Applications can be included in a data group
and paired with an Oracle ID.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 12
Securing Functions

Securing Functions
You can manage security by controlling access to individual functions through menu
definitions.
About Functions
• A function is a set of code in Oracle Applications that is executed only if the name of the
function is present in a list maintained within a responsibility.
• There are two types of functions: a form function and a nonform function or subfunction.
A subfunction represents a securable subset of a form’s functionality.
Adding Functions to or Removing Functions from a Responsibility
• Maintain menu structures while eliminating specific functionality.
• Exclude individual functions from a responsibility.
Adding or Removing Menus of Functions
• Use menus to group functions together.
• Exclude groups of functions by excluding a menu from a responsibility.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 13
Defining a Menu

Menus Link Functions to Responsibilities


Use the Menus form to define menus pointing to functions that you want to make available to a
new responsibility.
Make New Responsibilities, Not New Menus
If possible, apply exclusion rules to existing menus to customize a responsibility rather than
constructing an entirely new menu structure.
Determine the Application Functionality Required
• Different jobs require access to different functions.
• Identify predefined menus, forms, and form subfunctions to use as entries when defining a
new menu.
Plan Your Menu Structure
• Start with a blank Menus form (blank screen). Menus cannot be copied. A menu saved
under a different name overwrites the original menu (there is no Save As feature).
• Start with the lowest-level menus. A menu must be defined before it can be selected as an
entry on another menu.
• Assign menus and functions to higher-level menus.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 14
• Assign the menu structure to the new responsibility by using the responsibilities form.
• Document your menu structure by printing the Function Security Menu Report.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 15
Identifying Existing Menu Structures

Designing a New Menu Structure


Before designing a new menu structure, identify any possible existing menu structures that can
be modified or modeled from, and document custom menus by using reports in the Function
Security Report Set.
Function Security Menu Report
• Lists the full menu name of the responsibility
• Indicates any excluded menu items, with the rules that exclude them
Function Security Navigator Report
• Lists the menu as it appears in the Navigator for the responsibility specified
• Does not include items excluded by function security rules
Function Security Function Report
• Lists the functions accessible by the responsibility specified
• Does not include items excluded by function security rules

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 16
Menu Guidelines

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 17
Creating a Menu

Creating a Menu
Use the Menus window to create a menu:
(N) Application > Menu
After you save your changes in this form, the Compile Security concurrent program is
automatically submitted to compile the menu data. Compiling your menu data allows for the
system to determine more quickly, during a user’s session, whether a function is available to a
particular responsibility or menu.
New Menus form fields:
• Menu Type – used to specify the purpose of the menu. The possible values are:
- Standard – for menus that would be used in the Navigator form
- Tab – for menus used in Self-Service applications
- Security – for menus used to aggregate functions for data security or specific function
security purposes, but would not be used in the Navigator form.
• Grant check box – checking this box indicates that this function is automatically enabled
for the user.
For a complete explanation of the fields on this form see:

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 18
(Help) Applied Technology > Oracle Applications System Administration > Security >
Function Security > Menus Window
Note: If a menu entry has both a submenu and a function defined, then the behavior depends
on whether or not the function is executable. If it is executable, then the submenu is treated as
content to be rendered by the function. The submenu will not appear on the navigation tree, but
will be available in function security tests (FND_FUNCTION.TEST calls). If the function is
not executable, then it is treated as a “tag” for enforcing exclusion rules, and the submenu is
displayed on the navigation tree.
A function is considered executable if it can be executed directly from the current running user
interface.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 19
Modifying an Existing Menu Definition

Modifying a Menu
You can modify existing custom menus to suit specific job functions.
Overwrite a User Menu Name
When you change a menu’s user menu name, the menu entries are not affected. The menu’s
definition still exists, but under a new name. Other menus that call the menu by its old user
menu name now call the same menu by its new (revised) user menu name.
The old user menu name is no longer valid. When you are defining menus, or if you are
selecting main menus when defining a responsibility, the previously named menu is no longer
displayed in any list of values.
Modify a Menu Entry
When you are modifying a previously defined menu, all other menus that call that menu
display the menu’s modifications. For example, if you modify XXX_GL_USER by adding
another prompt that calls a form, all menus that call GL_SUPERUSER4.0 display the
additional prompt when XXX_GL_USER is displayed.
Note: Modifying shipped menu definitions is not supported. The customized definitions may
be overwritten during an upgrade process.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 20
Navigator Menus

Navigator Menu Displays


The Navigator displays only the menu items needed for navigation. Because you cannot choose
subfunctions from a menu, they are not displayed. Submenus consisting only of subfunctions
are also not displayed.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 21
The Menu Viewer

The Menu Viewer


(N) Application > Menu > (B) View Tree...
• To view the menu tree, click on the plus (+) sign next to the menu name. You will see a
hierarchical tree with a number of nodes. Each node represents a function or submenu of
your main menu.
• The menu tree displays the user menu name for the main menu, and displays the prompts
from the Menus form for submenus and functions. If no prompt has been specified, then
no label will appear for the node.
There are three styles for viewing your menu tree. You can select the style from the View
menu or by clicking the appropriate toolbar icon.
• Vertical – Menu entries are displayed vertically, similar to how they appear in the
Navigator window when you log on to Oracle Applications.
• Org-Chart – Menu entries are displayed horizontally as in an organizational chart.
• Interleaved – Menu entries are displayed horizontally and vertically.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 22
Viewing Node Properties in the Menu Viewer

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 23
Adding a Custom Form Function

Procedure for incorporating a custom form function


Use the following procedure to incorporate a custom form function.
1. The application developer (using the Application Developer responsibility) registers the
form in the Forms window.
2. The application developer or system administrator creates a function that accesses the
new form in the Form Functions window.
3. The application developer or system administrator adds the form function to a menu in
the Menus window.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 24
Using Responsibilities

Creating a New Responsibility


Generally you relate new application users to existing predefined responsibilities. However,
you can customize an existing responsibility or create new responsibilities to accommodate the
needs of different users or different categories of users. When creating a new responsibility, it
is generally easier to modify an existing responsibility in one of two ways:
• Extend Privileges a Responsibility Owns
When users require additional reporting and summary information, you can:
• Use request groups to add additional program or report privileges to a responsibility
• Use menus to add windows and tasks to a responsibility
• Restrict Privileges a Responsibility Owns
Sometimes it is easier to remove authorizations from an existing responsibility. To do this
you can:
• Use exclusions against a responsibility to limit menu and function access privileges to
those required for job duties
• Use request groups to limit program or report privileges for a responsibility that
requires only data entry privileges

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 25
After you have defined a new responsibility, you can associate it with an application user.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 26
Responsibility Components

Components of a Responsibility
A responsibility has two required components and two optional components.
Required Components
• Data group: specifies the Oracle Application database accounts to which a responsibility’s
forms and concurrent programs connect.
• Menu: specifies the forms that a responsibility can display and the functions it can access.
Optional Components
• Request security group: lists the concurrent programs that a responsibility can run. When a
request group is assigned to a responsibility, it is referred to as a request security group.
• Exclusions: modify a responsibility’s access to the forms and functions specified by a
menu.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 27
Defining a New Responsibility

Defining a New Responsibility


• Assemble the components of application privileges to create a responsibility.
• Define the responsibility by assembling a menu, report security group, and data group and
defining any function security (any menu or function exclusions).

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 28
Responsibility Creation Process

Responsibility Creation Process


There are five forms involved in the responsibility creation process. These are available under
the System Administrator responsibility. This slide displays the navigation paths for these
functions.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 29
Defining a New Responsibility

Defining a Responsibility
(N) Security > Responsibility > Define
A responsibility determines the type of applications a user accesses, which application
functions a user can use, which reports and concurrent programs the user can run, and which
data those reports and concurrent programs can access. Most responsibilities are available
from Oracle Applications (the Forms navigator or the HTML-based E-Business Suite Home
page), others may be accessible from Oracle Self-Service Web Applications or Oracle Mobile
Applications.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 30
Excluding Functions and Menus

Exclusion of Functions and Menus


Use exclusion rules to customize a responsibility. You can exclude functions at any level.
• When you exclude a menu item from a responsibility, all menus and functions that are
nested in that menu are also excluded.
• When you exclude a function from a responsibility, all occurrences of that function
throughout the menu structure of a responsibility are excluded.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 31
Summary

Lesson Summary
Function Security provides you with the ability to control Oracle Applications Security. The
system administrator specifies which users have access to which functions. User accounts
provide the user access to an application. Responsibilities control that user’s access to various
functions of the application. Online access is controlled through the use of menus and menu
exclusions. Report and concurrent program access is controlled through the use of request
groups.

Copyright © Oracle Corporation, 2007. All rights reserved.

Function Security
Chapter 3 - Page 32
Introduction to Data Security
Chapter 4

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 2
Introduction to Data Security

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 3
Objectives

Data Security
In this section, references to specific applications are used as examples only. Data Security is
not implemented in all Oracle Applications products. Some applications may require
organizations to create multiple responsibilities to operate with their existing security models.
For more information, please consult the application-specific documentation.
This section is meant to introduce data security and its concepts only. Custom implementation
of data security or modification of shipped data security policies is not covered and is beyond
the scope of this course. Extreme care should be taken if any customization or modification is
done with data security implementations.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 4
Introduction to Data Security

Introduction
Working in conjunction with Function Security, Data Security provides additional access
control on the data a user can see and what actions a user can perform on that data. Using Data
Security, for example, you could control access to the set of orders that an order administrator
can update within the Order Management application.
Data Security Policies restrict the actions or operations that can be performed on a specific
business object (for example, inventory items). Data Security Policies can reflect access to:
• All Instances – All instances of an object represents all rows in the database table or view.
For example, assume that we have an object “inventory item” in the database. Creating a
data security policy for all instances of our object would result in providing access to
every single inventory item we have catalogued in the database.
• An Instance Set – An instance set is a related set of instances of an object. This
corresponds to a set of rows in the database. Using our object example, an instance set
could be constructed to include all inventory items with a shelf life of 7 days.
• A Specific Instance – A specific instance generally corresponds to a single row in the
database. A specific instance is generally identified by a primary key value for the object.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 5
Using our example, we could enter a unique serial number for the inventory item. This
would return one and only one inventory item from the database.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 6
Data Security Components - Objects

Objects
(N) Functional Developer responsibility > Objects
An object is a system entity on which an operation can be performed. In Oracle Applications,
an object typically maps to records in relational tables/views, Forms/HTML pages, and UI
widgets. Examples in Oracle Applications include: a person, an machine, and a file.
Examples of operations include: Create, Update, Escalate, Approve, and Reject. In Oracle
Applications, operations are implied by a permission definition. Permission has been defined
as an operation on a object; for example, Invoke Service Request Form, Update Order,
Approve Expense Report, and Query Customers.
An object instance is a specific example of an object, such as Project Number 123 or User
JDOE. An object instance generally corresponds to a row in the database, and is identified by
a set of one or more primary key values as defined by the object.
Related object instances can be grouped together into an object instance set.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 7
Grants

Grants
(N) Functional Administrator Responsibility > Grants
Grants are used to provide specified users access to specific objects or functions.
Grants that deal with business objects are called Data Security Policies.
Grants can also be used to control access to an application's functionality. For example, you
could use a grant to secure an aspect of a menu, page, or other widget within the application.
For example, you want to provide access to a set of administrative menus to a select group of
users.
The grantee defines who is being granted access. The grantee can be one of three types:
• A group of users
• A specific user – for example, Joe Smith
• All users (global) – all users of the system, except the Guest account

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 8
Permissions and Permission Sets

Permissions
The Role Based Access Control (RBAC) Model defines permission as "an approval to perform
an operation on one or more RBAC-protected objects." This definition maps to what has been
referred to as functions earlier. Permissions can be grouped into permission sets.
Permission sets can be granted to users or roles independently of menus or responsibilities.
Permission assignments, or Grants, reflect the access granted to users through roles.
Permissions are discussed more in the User Management lessons.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 9
Data Security Policies

Data Security Policies


Using Data Security, access to a specific object can be specified using a data security policy.
A data security policy restricts operations so that these operations can only be performed on a
subset of instances of the corresponding database object (an object instance set). Data security
policies can reflect access to:
• All Instances (rows) of an object
• An Instance Set, which is defined as a SQL predicate (WHERE clause), and can
optionally be implemented as a VPD (Virtual Private Database) policy
• A Specific Instance, identified by a primary key value

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 10
Example of a Data Security Policy

Example of a Data Security Policy


The Customer Administrator role includes a grant to users with this role that gives customer
administrators the ability to perform some basic administration privileges (All User
Administration Privileges, defined by UMX_OBJ_ADV_ADMIN_PERMS) through a
permission set.
This grant specifies these permissions can be performed on the object (User Management
Person, UMX_PERSON_CODE), but only on the instance set composed of people in the
customer’s own organization.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 11
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Data Security


Chapter 4 - Page 12
Introduction to Oracle User
Management
Chapter 5

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 2
Introduction to Oracle User Management

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 3
Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 4
What Is Oracle User Management?

What Is Oracle User Management


Note: This section introduces concepts that will be discussed in greater detail in the subsequent
sections of this course.
System Administrator
• The system administrator is a trusted individual who manages an organization’s access
policies and administers its users. The system administrator is sometimes also known as
the security administrator.
Local Administrators
• Oracle User Management enables organizations to define local administrators that manage
a subset of the organization’s users. Local administrators are only granted sufficient
enough privileges to manage a specific subset of the organization’s users, and they
generally have a closer relationship to those users than the system administrator does.
End Users
• Organizations can configure Oracle User Management to enable end users to perform
some of their own registration tasks such as registration, requesting additional access to
the system, or resetting passwords.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 5
Access Control Model

Access Control Model


Core Security
• Core Security includes Oracle’s Function and Data Security models as well as a new Role
Based Access Control (RBAC) model.
Administrative Features
• Administrative Features build upon Core Security, and include Delegated Administration,
Registration Processes, and Self-Service and Approvals.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 6
Successive Layers of Access Control

Layers of Access Control


Access control with Oracle User Management is implemented in successive layers, each
building upon the one that precedes it. Organizations can optionally uptake the various layers,
depending on the degree of automation and scalability that they wish to build upon the existing
Function and Data Security models.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 7
Increased Flexibility and Scalability

Increasing Flexibility and Scalability


Access control with Oracle User Management begins with basic system administration tasks
and progresses to more distributed, local modes of administration, ultimately enabling users to
perform some basic, predefined registration tasks on their own. Details of the various levels of
access control and the increasing levels of flexibility they provide are described later in the
course. The following general definitions may be considered for now:
System Administrator
The system administrator is responsible for defining the core of the security system, including
permissions, data security policies, responsibilities, and menus. The system administrator
defines setup for all core security administrative features.
Local Administrators
When Role Based Access Control and Delegated Administration are added to the Data Security
and Function Security layers, system administration tasks can be distributed to local
administrators, who manage a subset of the organization’s users.
End Users
Registration Processes and Self Service and Approvals further distribute system administration,
by automating some registration tasks so that end users can perform them.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 8
Function Security

Example
An organization can use Function Security to provide its sales representatives with the required
pages, menus, and menu options for querying customers. It can also control access to specific
components of those pages, such as a "Generate Sales Forecast" button on a sales forecasting
page.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 9
Responsibilities

Responsibilities
Responsibilities have a menu tree in which available menus are defined with a grant flag. On
being assigned a responsibility, a user gains access to all menus on the menu tree except those
for which an exclusion has been defined. In the above example, Menu 2 has been excluded
from the menu tree. When the user is assigned the corresponding responsibility, the user can
access Menu 1, Menu 3, and Menu 4.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 10
Data Security

Example
Data Security restricts the set of users that a local administrator can manage and administer
within Oracle User Management. Data Security policies can only be defined for applications
that have been written to utilize the Data Security Framework.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 11
Role Based Access Control (RBAC)

Role Based Access Control (RBAC)


A role can be configured to consolidate the responsibilities, permissions, function security and
data security polices that users require to perform a specific function. This is accomplished
with a one-time setup, in which permissions, responsibilities, and other roles are assigned to
the role. Users are not required to be assigned the lower level permissions directly, since
permissions are inherited implicitly, based on the roles assigned to the user. When making a
mass update in a production system, an organization simply needs to change the permissions or
role inheritance hierarchy defined for a role. The users assigned that role subsequently inherit
the new set of permissions.
Example
Organizations can define roles that closely mirror their business situation. For example, an
organization can create an ‘Employee’ role and then assign that role to all of its employees. It
can also create an ‘External’ role and assign that role to customers and suppliers. Further
examples may include specific roles such as ‘Support Agent’, ‘Sales Rep’, ‘Sales Manager’. In
these examples, each role contains a specific level of access privileges that restricts its
assignees to the scope of their job functions. Some members of the organization will probably
be assigned more than one role. In the above example, the manager is assigned the ‘Manager’
role and the ‘Employee’ role, while the employee is only assigned the ‘Employee’ role.
Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 12
Delegated Administration

Delegated Administration
Delegated Administration is a privilege model that builds on the RBAC system. With
delegated administration, instead of exclusively relying on a centralized administrator to
manage all of its users, an organization can create local administrators and grant them
sufficient privileges to manage a specific subset of the organization's users and roles. This
provides organizations with a tighter, more granular level of security and the ability to easily
scale their administration.
Administration Privileges
Administration Privileges determine the users, roles and organization information that
delegated administrators (local administrators) can manage. Each privilege is granted
separately, yet the three work in conjunction to provide the complete set of abilities for the
delegated administrator.
• User Administration Privileges: A local administrator must be granted User
Administration Privileges to determine the users and people he can manage. Local
administrators can be granted different privileges for different subsets of users.
• Role Administration Privileges: Role Administration Privileges define the roles that
local administrators can directly assign to and revoke from the set of users they manage.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 13
• (Optional) Organization Administration Privileges: Organization Administration
Privileges define the organizations a local administrator can view in the system.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 14
Delegating to Proxy Users

Delegating to Proxy Users


Traditionally, delegation was done by a user supplying his password for specific applications
to another user, who could assume the delegator’s identity and privileges in those applications.
However, if E-Business Suite is integrated with Oracle Single Sign-On (SSO), this means the
delegate can access every SSO-enabled application to which the delegator has access.
The proxy user mechanism provides a more sophisticated mechanism that enables controlled,
auditable delegation of privilege from delegators to delegates.
Examples of Delegating to Proxy Users
• Executives allowing their assistants to access selected business applications on their behalf
• Users may need to grant help-desk staff limited duration access to their E-Business Suite
accounts, so that help desk staff can investigate problems and provide assistance
• Companies may be subject to audits that require granting a specific user (the auditor)
access to employees' E-Business Suite accounts, typically on a read-only basis.
The ability for users to access the proxy feature is controlled by a Security Administrator
role. Users with this role determine which set of users can create delegates who can act on
their behalf.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 15
Provisioning Services

Provisioning Services
Oracle User Management includes the following provisioning services, implemented as
registration processes:
Self-Service Account Requests
Commonly referred to as Self Service Registration, self-service account requests provide a
method for persons to request a new user account. For example, customers may need to register
before they can purchase an item from an online store. After completing the registration
process, the customer obtains both a user account and the necessary roles for access to the
store.
Requests for Additional Access
Users can request additional access through the Oracle User Management Access Request Tool
(ART) available in the global preferences menu. Requests for Additional Access uses the same
Oracle User Management infrastructure and processing logic as Self Service Account
Requests.
Account Creation By Administrators
Administrators can benefit from existing registration processes designed to streamline the
process of creating and maintaining user access. Registration Processes of this type are geared

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 16
toward administrators, especially delegated administrators, to ensure consistent application of
the client's user security policies. Each account creation registration process can be made
available to select administrators.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 17
Self-Service and Approvals

Self Service and Approvals


Once registration processes have been configured as required, individuals can subsequently
perform self-service registration tasks such as obtaining new user accounts or requesting
additional access to the system. In addition, organizations can use the Oracle Approvals
Management engine to create customized approval routing for these requests.
Example
An organization may enable a small set of users to request a particularly sensitive role;
however, before the user is granted the role, the organization can require that specified
individuals approve the request.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 18
Login Assistance

Login Assistance
System administrators often have to reset a user's forgotten password, or even advise a user of
the account's user (login) name. This is unproductive for both the user and the administrator. In
addition, a user may request the password to be reset, when it is actually the user name that has
been forgotten, or vice versa.
A new feature in Release 12 helps reduce the time spent on such administrative activities, by
implementing a login help mechanism on the E-Business Suite Login Page. A user simply
clicks on the "Login Assistance" link located below the Login and Cancel buttons. On the
screen that appears, the user can choose between the Forgot Password and Forgot Username
sections.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 19
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle User Management


Chapter 5 - Page 20
Implementing Oracle User
Management
Chapter 6

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 2
Implementing Oracle User Management

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 3
Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 4
Implementing Oracle User Management

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 5
Steps for Implementing Oracle User Management

Steps for Implementing Oracle User Management


For the purposes of this course, Phase I: Define Core Security Features has already been
completed, and students will begin with Phase II: Define Roles. When implementing Oracle
User Management, however, you must begin by defining core security features.
You do not have to implement User Management in the exact sequence described here.
However, this is probably the most common implementation flow.
You will test many of the implementation steps by logging on as an administrator or as a user,
and viewing the results of your configuration.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 6
Steps for Implementing Oracle User Management

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 7
Steps for Implementing Oracle User Management

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 8
Configuring and Testing Oracle User Management

Configuring and Testing Oracle User Management


System Administrator
As system administrator (security administrator), you define roles, role inheritance hierarchies,
delegated administration, registration processes and self-service features. You also designate
local administrators and assign them roles, and optionally allow them to perform self-service
registration. Depending on how those roles are configured, local administrators manage a
subset of the organization’s users and roles, as well as designated external contact information.
Local Administrators
As a local administrator, you test the delegated administration features defined for the role you
are assigned. These features enable you to manage a subset of your organization’s users and
roles, and to manage designated external contact information.
End Users
As an end user, you test the available self-service features such as requesting access (or
additional access) to the system.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 9
Introduction to Roles

Introduction to Roles
In previous releases of Oracle Applications, access to individual functions within an
application could only be defined through responsibilities, menu hierarchies, and menu
exclusions. New responsibilities had to be defined for each set of users (with different job
functions) that needed access to a set of pages within an application. These responsibilities
required either:
• Completely new menu hierarchies for each responsibility
• A common menu covering the superset of all functions within the application, and menu
exclusion rules defined for each responsibility
An example is the Human Resources product, which typically has at least two responsibilities
defined, one for employees and one for managers.
In essence, responsibilities have been used not only to define the application navigation menus,
but also the privileges and permissions within an application. Cost of ownership and
management has increased with the number of responsibilities, as multiple complex menu
hierarchies and/or exclusion rules must be maintained.
Oracle User Management provides new alternatives for defining access to an application,
allowing organizations to separate navigation menus from access control.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 10
Examples of Roles

Examples of Roles
In this example, the manager is granted both the employee role and the manager role, since the
manager effectively functions as both.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 11
Defining Roles: Data Security Policies

Defining Roles: Data Security Policies


Data security policies determine what data users can access, and return only that set of data to
those users at runtime.
Example
Data security policies determine to which department a manager belongs, and returns only the
correct set of data for that manager. In the above example, the Manager role is assigned to
Managers X and Y. At runtime, data security policies determine that Manager X should only
view Department X data, and Manager Y should only view Department Y data.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 12
Defining Roles: Assigning a Single Responsibility and All Its
Functions to a Role

Defining Roles: Assigning a Single Responsibility that Includes all Functions to a


Role
Organizations can define a single responsibility that includes all functions and assign it to a
role. For example, instead of having a Manager Expenses and Employee Expenses
responsibility, an organization can define an Expenses responsibility that contains all employee
and manager Expenses functions. The grant flag is turned off for all menus defined for this
role.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 13
Assigning a Single Responsibility to a Role and Granting Specific
Functions to a Role

Defining Roles: Assigning a Single Responsibility to a Role with Some Functions


Included
When a role is assigned, the relevant user is granted the appropriate functions. For example,
the employee is granted employee expenses functions, but the manager expenses functions
remain excluded.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 14
Defining Roles: Assigning Multiple Responsibilities to a Role

Defining Roles: Assigning Responsibilities to a Role


Organizations can define multiple responsibilities for a single role. With the grant flag on for
all menus in the menu tree, assigning the role to a user gives that user access to all the menus
defined for the role.
In this example, the Manager Expenses and Employee Expenses responsibilities are defined for
the Manager role. When the Manager role is assigned to the manager, the manager has access
to all functions defined for these responsibilities.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 15
Role Inheritance Hierarchies

Role Inheritance Hierarchies


Oracle User Management enables you to link roles together in role inheritance hierarchies.
With role inheritance hierarchies, a role can contain sub-roles. When a user is assigned a role,
the user inherits the privileges defined for that role and for all its sub-roles.
Role inheritance means that the permission to access a new page only has to be granted once,
at the lowest-level sub-role in the role inheritance hierarchy; the relevant permissions will then
be inherited automatically by all superior roles in the hierarchy. Equally, revoking access to a
page (or an entire application) is as simple as granting access.
Example
In this example some roles such as "Employee" or "Manager" are assigned general permissions
for a given function. For example, the Employee role may provide access to menus generally
available to all employees, while the Manager role provides access to menus that should only
be viewed by managers. Because the Employee role is a sub-role of the Manager role, anyone
assigned the Manager role automatically obtains the permissions associated with the Employee
role. Other roles in this example pertain to more specific job functions, such as Sales Manager
or Sales Representative.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 16
Role Categories

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 17
Assigning Permissions to Roles

Assigning Permissions to Roles


You can configure permissions for a role.
• Data Security: You must select a business object when you create Data Security policies.
Specifying the object data context (data scope) provides an additional level of access
granularity for the object. Choose one of the following from the Data Context menu:
- All Rows: Provides access to all rows (instances) for the database object.
- Instance: Provides access to an instance (single row in the database) of the object.
- Instance Set: Provides access to a related set of instances of the object. This set is
specified as a predicate on the attributes of the object. The predicate is expressed as a
SQL WHERE clause.
• Activation Context: Restricts the availability of the permissions being assigned. If you do
not define the activation (security) context, permissions are available to users in all
contexts.
- Operating Unit: Many organizations consist of several different operating units. You
can limit your grant to be active only in the context of an individual operating unit.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 18
- Responsibility: Responsibilities determine the applications that can be accessed by
users. You can optionally limit your grant to be available only in the context of an
individual responsibility, or with all responsibilities.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 19
Advantages of Roles Over Responsibilities

Advantage of Roles Over Responsibilities


A role can be associated with multiple responsibilities
Because a single role can be associate with multiple responsibilities, multiple responsibilities
can be assigned to a single role, then assigned to users as required. This is more efficient than
assigning or revoking individual responsibilities to each user. When updating menu access or
permissions, organizations can simply add new menu items to the responsibility with the grant
flag off, then switch the grant flag on for a role if the role needs to have access to that menu.
Roles can inherit the properties of other roles
With role inheritance hierarchies, roles can inherit the permissions of roles. This simplifies the
process of defining roles: when defining a higher-level role such as ‘manager’, there is no need
to include access to employee menus and responsibilities, since these are inherited from the
lower-level ‘employee’ role.
Navigation menus and security functions can be separated
As noted in the introduction to this section, RBAC and role inheritance allows organizations to
separate navigation menus from access control: a responsibility can be defined to represent a
single application, and a menu can be tailored for each application. Access to the application

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 20
(responsibility) and its menu hierarchy are controlled by different roles, each representing a
specific job function or set of people.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 21
Phase II: Define Roles

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 22
Steps for Creating Roles: Define a Role Category

Steps for Creating Roles: Define a Role Category


In this scenario, an organization is creating a Customer Administrator role. It will require a role
category to contain this or similar roles.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 23
Steps for Creating Roles: Create a Role within the Role Category

Steps for Creating Roles: Create a Role within the Role Category
Create a role and include it within the role category. In this scenario, the role is Customer
Administrator. This role is created for an external organization, and is assigned to individuals
who manage the external organization’s users.
Oracle User Management ships with three seeded roles, Partner Administrator, Customer
Administrator, and Security Administrator. The business scenarios and practices in this course
assume that the Customer Administrator role must be created and configured to function with
the other two.
Note: Many of the practices in this course involve creating, configuring, and testing the
Customer Administrator role. Since Oracle User Management already ships with this role, the
practices require students to create a Course Administrator role that is essentially an exact copy
of the seeded Customer Administrator role. Students can compare their Course Administrator
role to the seeded Customer Administrator role; the two should be identical.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 24
Steps for Creating Roles: Place Role in Role Inheritance
Hierarchy

Steps for Creating Roles: Place Role in Role Inheritance Hierarchy


Place the Customer Administrator role in a role inheritance hierarchy. In this case, the ‘Partner
Administrator’ role inherits permissions from the ‘Customer Administrator’ role, and from the
User Management Responsibility.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 25
Steps for Creating Roles: Assign Permissions to Roles

Steps for Creating Roles: Assigning Permissions to Roles


You can use roles to enable or disable the permissions that the ‘Customer Administrator’ role
inherits from the ‘User Management’ responsibility. In this example, ‘User Maintenance UIs’
is the only permission enabled for the ‘Customer Administrator’ role when it inherits the ‘User
Management’ responsibility.
As a result, when an individual who is assigned the ‘Customer Administrator’ role logs on to
the system, that person will be able to access ‘User Maintenance UIs’, but not be able to query
users unless assigned user administration privileges.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 26
Steps for Creating Roles: Assign Role to a New Person

Steps for Creating Roles: Assign Role to a New Person


The system administrator creates a new person and assigns the Customer Administrator Role to
that user.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 27
Steps for Creating Roles: Test Role as Customer Administrator

Steps for Creating Roles: Test Role as Customer Administrator


Log on as the newly created Customer Administrator (person assigned the Customer
Administrator role) and test your capabilities.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 28
Delegated Administration

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 29
What Is Delegated Administration?

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 30
User Administration Privileges

User Administration Privileges


To grant a local administrator user administration privileges, you must configure the role
assigned to the local administrator. When configuring the role, you must choose which of the
available people and users you want the local administrator to manage, and which permissions
you want to grant the role for managing those people and users.
People and Users
People are any individuals in the system; users are those individuals for whom an account has
been created.
Permissions
Permissions determine the actions that the role assignee (the local administrator) can perform
on the people and users selected for that role. These permissions must be granted with a data
security policy on the User Management Person (UMX_PERSON_OBJECT) business object.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 31
User Administration Privileges (cont.)

Configuring Roles for User Administration


Local administrators can be granted different privileges for different subsets (groups) of users.
For example, a local administrator can be granted privileges only to query one set of users, and
granted full privileges (including update and reset password) for another set. Local
administrators cannot query users for which they do not have administration privileges.
Example
In this example, assignees of the Local Administrator Role can manage two subsets of their
organization’s users and people, Subset A and Subset B. They have permissions to query and
edit person details, manage user accounts, and reset passwords for all users of Subset A.
However, they can only query person details for all users of Subset B.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 32
Role Administration Privileges

Role Administration Privileges


A role can specify a subset of roles that the assignee can manage. To grant a local
administrator role administration privileges, you must configure the role assigned to the local
administrator.
When configuring the role, you must choose which of the available roles in the system you
want the local administrator to manage. There is a single seeded permission available for
defining role administration privileges for roles, which has a function code of
UMX_OBJ_ADMIN_ROLE. To enable role administration, this permission must be granted
with a data security policy on the User Management Role (UMX_ACCESS_ROLE) business
object.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 33
Seeded Permissions for User Administration

Seeded Permissions for User Administration


All user administration privileges must be granted with a data security policy on the User
Management Person (UMX_PERSON_OBJECT) business object.
The Query Person Details (UMX_OBJ_VIEW_PERSON) permission is the minimum
permission required by any security administrator who wishes to manage people and users in
Oracle User Management.
The Maintain System Accounts (UMX_SYSTEM_ACCT_ADMINSTRATION ) permission is
only granted to system administrators.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 34
Managing Roles with Role Administration

Managing Roles with Role Administration


In this example, the local administrator can assign roles to (or revoke roles from) the users in
Subsets (groups) A and B.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 35
Seeded Permissions for Role Administration

Seeded Permissions for Role Administration


All role administration privileges must be granted with a data security policy on the User
Management Role (UMX_ACCESS_ROLE) business object.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 36
Organization Administration Privileges

Organization Administration Privileges


This privilege enables local administrators to search for people based on their organization,
assuming the local administrator has also been granted access to view the people in that
organization (User Administration Privileges). Depending on the administration account
registration process has been granted, the administrator may have the ability to register new
people for that organization.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 37
Seeded Permissions for Organization Administration

Seeded Permissions for Organization Administration Privileges


All role administration privileges must be granted with a data security policy on the User
Management Organization (UMX_OBJ_VIEW_RLTNSHPS) business object.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 38
Delegated Administration vs. Traditional System Administration

Advantages of Delegated Administration Over Traditional System Administration


With traditional system administration, one or more trusted individuals manage access control
and users for the entire organization. The system administrator must assign access privileges to
a potentially large number of people and users.
With delegated administration, local administrators manage a specific subset of the
organization’s users and roles. Because they can only assign a specific set of roles to a specific
set of users, local administrators ensure that security is maintained along functional areas.
Generally, local administrators will have a working relationship with the set of users they
manage.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 39
Phase III: Setting Up Delegated Administration

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 40
Steps for Implementing Delegated Administration: Set Up User
Administration for a Role

Set Up User Administration for a Role


The system administrator sets up user administration for the Customer Administrator role by
determining the users it enables the assignee to manage and the manner (permissions) in which
those users can be managed.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 41
Steps for Implementing Delegated Administration

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 42
Steps for Implementing Delegated Administration

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 43
Steps for Implementing Delegated Administration

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 44
Registration Processes

Registration Processes
Oracle User Management contains the following registration processes:
Self-Service Account Requests
Commonly referred to as Self-Service Registration, self-service account requests provide a
means for people to request a new user account. For example, customers may need to register
before they can purchase an item from an online store. After completing the registration
process, the customer obtains both a user account and the necessary role(s) to access the store.
Requests for Additional Access
Users can request additional access through the Oracle User Management Access Request Tool
(ART), available on the global preferences menu. Requests for Additional Access uses the
same Oracle User Management infrastructure and processing logic as Self-Service Account
Requests.
Account Creation By Administrators
Administrators can benefit from existing registration processes designed to streamline the
process of creating and maintaining user access. Registration Processes of this type are geared
toward administrators, especially delegated administrators, to ensure consistent application of

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 45
the client's user security policies. Each account creation registration process can be made
available to select administrators.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 46
Registration Processes: Core Components

Registration Process Core Components


Roles are assigned after the user successfully completes the registration process:
• The registration user interface is optional, and is used for collecting account or additional
information.
• The workflow is used for approval, confirmation, rejection, and identity verification
notifications.
• The approval management transaction type represents a set of approval routing rules that
are interpreted at runtime.
• The set of users eligible to request additional access are only applicable for the Request
for Additional Access registration processes.
• Identity verification confirms the identity of a requester before the registration request is
processed. An email notification is sent to the submitting email address. If the recipient
does not reply within a predetermined amount of time, the request will be automatically
rejected.
The set of local administrators should be able to register people and/or create users through the
Account Creation by Administrators registration process.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 47
Self-Service Account Requests

Self-Service Account Requests


Self-service account requests provide a method for persons to request a new user account.
Recall the earlier example where customers need to register before they can purchase an item
from an online store: after completing the registration process, the customer obtains both a user
account and the necessary role(s) for access to the store.
Accounts and user accounts (person party in TCA) in this course refer to an individual's login
account, stored in the FND_USER table.
This release of Oracle User Management provides sample Self-Service registration UIs for
internal employees and for new, external individuals. Organizations can copy these sample
Self-Service registration and extend them based on their own requirements. In addition,
organizations wishing to support other types of users, or capture additional user information,
can create their own registration UIs and business logic.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 48
Requests for Additional Access

Requests for Additional Access


When users request additional access to the system, they are in effect making a request to be
granted additional roles. The availability of additional roles depends on the user’s current roles.
For example, an organization’s employees could request roles that further define their job
functions, while customers of that organization would not be able to request those same roles.
For example, an employee could request the ‘Support Rep’ role, but a customer could not.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 49
Account Creation by Administrators

Account Creation by Administrators


Each account creation registration process can be made available to selected administrators.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 50
Phase IV: Creating Registration Processes

Steps for Creating Registration Processes


The following slides describe the steps in the creation of registration processes.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 51
Steps for Creating Registration Processes: Provide Required
Description Information

Steps for Creating Registration Processes: Provide Required Description


Information
The System Administrator creates the request for additional access registration process and
assigns it to one of the roles managed by the Customer Administrator. The Customer
Administrator subsequently logs on and assigns that role to a new user.
You must provide the following information for the registration process description:
• Role: The role with which you optionally associate the registration process, and which is
assigned to the user at the end of the registration process.
• Type: Type of registration process you wish to create.
• Registration Process Code. Unique identifier for the registration process.
• Display Name: Display name for the registration process.
• Description: Description of the registration process.
• Application: Application with which the registration process is classified, which can be
used for querying the registration process.
• Active From: Date from which the registration process is first active.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 52
• Active To: Date you can (optionally) specify to terminate the registration process.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 53
Steps for Creating Registration Processes: Enter Runtime
Execution Information

Steps for Creating Registration Processes: Enter Runtime Execution Information


Enter the runtime execution information for the registration process and click the Next button.
This information specifies:
• Registration Start Page: The first page (represented as a function) in the registration
process, which captures any additional user registration information. This page is optional,
unless you are creating a Self-Service Account Request registration process.
• Notification Event: The workflow business event that invokes a workflow. The
notification workflow subscribes to the event, and subsequently sends notifications to the
approver or to the user.
• Approval Transaction Type: The set of approval routing rules that is interpreted at
runtime by the Oracle Approval Management rules engine. Based on the user transaction
types you have defined specifically for use with Oracle User Management, the rules
determine whether approval is required, and if so, by which set of users.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 54
Steps for Creating Registration Processes: Enter Eligibility
Information

Steps for Creating Registration Processes: Enter Eligibility Information


Enter the eligibility information for the registration process by selecting the appropriate roles
or groups. In this case, eligibility will be everyone. For Requests for Additional Access,
eligibility defines the users who are able to register for the role associated with the registration
process. For Account Creation by Administrators, eligibility determines which administrators
can register new users through the registration process. Oracle User Management ships with
the following seeded permissions for defining eligibility policies:
Administrator Assisted Account Creation (UMX_OBJ_ADMIN_CRTN_FLOW )
Permission representing "Administrator Assisted Account Creation" registration processes.
Must be granted as a data security policy on the Registration Process (UMX_REG_SRVC)
business object.
Self-Service Eligibility (UMX_OBJ_ROLE_ELGBLTY)
Permission representing registration processes for additional access determines the set of end
users who are eligible to register for a given role/registration process. Must be granted as a data
security policy on the Registration Process (UMX_REG_SRVC) business object.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 55
Steps for Creating Registration Processes: Register Subscriptions
to Business Events

Steps for Creating Registration Processes: Register Subscriptions to Business


Events
Register subscriptions to the appropriate business events raised by Oracle User Management,
ensuring that your subscription logic writes the registration data to the appropriate destination
schemas.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 56
Steps for Creating Registration Processes: Optionally Set Profile
Options

Steps for Creating Registration Processes: Optionally Set Profile Options


Optionally set the following profile options for registration processes of type Self-Service
Account Request:
• Registration Links: Oracle User Management provides support for displaying different
registration links on the login page, based upon the application tier through which the
login page is accessed. Organizations can set the server level profile option, “UMX:
Register Here Link: Default Registration Process”
(UMX_REGISTER_HERE_REG_SRV) to specify different destinations for the
registration link.
• Registration Parameters: The registration link can also contain additional parameters
that are not known at design time. These parameters are available at all stages of the
registration process; for example, for routing approval requests. Organizations can set the
server level profile option, “UMX: Register Here Link: Default Registration Parameters”
(UMX_REGISTER_HERE_REGPARAMS) for this. The format for this profile option is:
"ParamName1=ParamValue1&ParamName2=ParamValue2”.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 57
• UI-specific Parameters: Organizations can additionally specify parameters used to
control the rendering of the registration user interface, such as the menu displayed in the
registration UI. The server level profile option, “UMX: Register Here Link: Default Html
Parameters” (UMX_REGISTER_HERE_HTMLPARAMS) can be set for this. The format
for this profile option is: "ParamName1=ParamValue1&ParamName2=ParamValue2“.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 58
Steps for Creating Registration Processes: Optionally Set Login
Page UI Attributes

Steps for Creating Registration Processes: Optionally Set Login Page UI


Attributes
Optionally set the UI attributes for the login page using the profile option, Local Login Mask:
FND_SSO_LOCAL_LOGIN_MASK. For the Login page to display one or more of these
optional attributes, add the numeric values of all desired attributes and set the value of the
profile option to that value:
• USERNAME_HINT = 01
• PASSWORD_HINT = 02
• CANCEL_BUTTON = 04
• FORGOT_PASSWORD_URL = 08
• REGISTER_URL = 16
• LANGUAGE_IMAGES = 32
• SARBANES_OXLEY_TEXT = 64

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 59
For example, to show PASSWORD_HINT and FORGOT_PASSWORD_URL only, set the
profile option to 10 (02+08). To show just the LANGUAGE_IMAGES set the value to 32,
which is the default.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 60
Steps for Creating Registration Processes: Test as Customer
Administrator

Steps for Creating Registration Processes: Test as Customer Administrator


The Customer Administrator assigns the role associated with the registration process to a
customer. The customer can then request additional access. You perform this test in Phase IV:
Understand and Test the Self-Service Features.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 61
Managing Proxy Users

Managing Proxy Users


Proxy users are set up by logging in as System Administrator, navigating to User Management
> Users, querying the user (delegator) who is to grant proxy privileges to other users, clicking
on the Update icon of the results table to navigate to the User Details page, clicking on the
Assign Role button, searching for Manage Proxies role in the list of values, and selecting this
role.
Proxy User privileges are delegated by logging on as a user with the Manage Proxies role,
clicking on the Global Preferences menu, clicking on the Add People button under the Manage
Proxies link, and selecting a user from the list of values. Once the changes have been saved, a
notification is sent to the user who has been granted the proxy privileges.
Acting as a Proxy User
• Users permitted to act on behalf of other users will have their names displayed with the
prefix Logged in as in the upper right of the page.
• To switch to another user (act as a delegate), a user can choose the Switch User icon and
link to access the Switch User page.
• After a delegator has been selected, the application will enter Proxy Mode. While in this
mode, the icon and link will change from Switch User to Return to Self.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 62
Using Proxy Mode turns on Page Access Tracking, to enable auditing of pages visited by the
user when acting as a proxy. Go to Preferences > Manage Proxies > Run Proxy Report

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 63
Self-Service Features

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 64
Self-Service Features

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 65
Login Assistance

Login Assistance
System administrators often have to reset a user's forgotten password, or even advise a user of
the account's user (login) name. This is unproductive for both the user and the administrator. In
addition, a user may request the password to be reset, when it is actually the user name that has
been forgotten, or vice versa.
A new feature in Release 12 helps reduce the time spent on such administrative activities, by
implementing a login help mechanism on the E-Business Suite Login Page. A user simply
clicks on the "Login Assistance" link located below the Login and Cancel buttons.
On the login assistance screen that appears, the user can either go to the Forgot Password
section and enter the correct user name, or to the Forgot Username section and enter the email
address associated with the account. The user will then either be emailed either password reset
details or the user name, as applicable.
For security, the relevant data is stored securely in workflow tables, and the secure URLs
employed by the mechanism have both an expiration time and a single-use limitation.

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 66
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 67
Copyright © Oracle Corporation, 2007. All rights reserved.

Implementing Oracle User Management


Chapter 6 - Page 68
Profile Options
Chapter 7

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 2
Managing Profile Options

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 3
Objectives

Lesson Aim
As a system administrator, you control various options in Oracle Applications that determine
how your applications look and feel. These options can also control how each application
operates. This lesson shows you how to specify these values.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 4
Personal Profile Values

Personal Profile Values


For further information on using the Personal Profile Values window see:
(Help) Oracle Applications User’s Guide > Profile Options >
Setting Your Personal User Profile
The table FND_PROFILE_OPTION_VALUES stores values for user profile options. Each
row includes values that identify the profile option; the profile level; and the user,
responsibility, application, organization, server, or site for whom the profile value is set. There
is one row for each profile option setting (at each level, for each user, and so on).

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 5
System Profile Options - Profile Hierarchy Types

System Profile Options - Hierarchy Types


Of the three hierarchy types, the Security type is most widely used.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 6
Profile Hierarchy Levels - Security

Setting Profile Hierarchy Levels


You can set user profiles at different levels, using one of three hierarchies.
Most profile options use the Security hierarchy, in which setting a user profile affects
application users across one of four different levels.
Site Level Site-level settings apply to all users at an installation site. To display the name of
your installation site, select About Oracle Applications from the Help menu.
Application Level Application-level settings apply to all users of the specified application.
For example, a profile could be set that applies to all Oracle General Ledger users. Profile
options that can be set at the application-level override options set at the site level.
Responsibility Level Responsibility-level settings apply to all users currently signed on
under the responsibility. For example, a profile could be set that applies to all users of the
Oracle General Ledger GL budget supervisor responsibility. Profile options that can be set at
the responsibility level override options set at the site and application levels.
User Level User-level settings apply to individual users, identified by their application
usernames. For example, a user profile could be set that applies only to user JDoe. Profile
options set at the user level override all other options.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 7
Profile Hierarchy Levels – Organization

Profile Hierarchy Levels - Organization


The second hierarchy type is Organization, where organization refers to operating unit. For
example, clerks in different organizations may need to have different values for a given profile
option, depending on their organization, but clerks in the same organization would use the
same value. The Organization hierarchy type allows system administrators to set a profile
option at the organization level, so that all users within that organization will use the profile
option value set once at the organization level. Profiles using the Organization type use the
hierarchy Site - Organization – User, where a user level option overrides the organization level
option, which overrides the site level option.
An example of a profile option using the hierarchy type Organization is AR: Default Credit
Management Currency (Receivables).

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 8
Profile Hierarchy Levels - Server

Profile Hierarchy Levels - Server


The Server hierarchy type is used when the system needs to determine the server on which the
user's session is running. For example, the profile Applications Web Agent (Application Object
Library) can be defined using the Server type. The setting of this profile option can differ for
an internal server versus an external one. Cookie validation, for example, can then be done
against the value of this profile option. Profiles using the Server type use the hierarchy Site -
Server - User, where a user level option overrides the server level option, which overrides the
site level option.
Another example of a profile option using the Server hierarchy type is Node Trust Level
(Application Object Library).

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 9
System Profile Options

Setting System Profile Options


For profiles using the Security hierarchy type, if you choose to set a value at the Application,
Responsibility, or User level, you must also specify the particular Application, Responsibility,
or User. Any values defined at a lower level than the level chosen will also be displayed.
Likewise, for profiles using the Organization hierarchy, if you choose to set a value at the
Organization or User level, you must also specify the particular Organization or User. For
profiles using the Server hierarchy, if you choose to set a value at the Server or User level, you
must also specify the particular Server or User. Any values defined at a lower level than the
level chosen will also be displayed.
For a complete description of the fields in the System Profile Values window see:
(Help) Applied Technology > Oracle Applications System Administration >
Setting Profile Options > System Profile Values Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 10
Using User Profile Values as Defaults

Default User Profile Values


After profile values have been defined, they can be referenced elsewhere in Oracle
Applications. The figure shows the locations where profile values can be used to supply default
processing values.
• Enter the setting of a profile option as a default value by selecting Profile as the default
type, and then enter the internal name (not end-user name) of the profile option as the
value in the Default Value field.
• Look up the internal name of the profile option in the User Profiles appendix of the Oracle
Applications System Administrator’s Guide.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 11
Profile Categories

Profile Categories
(N) Functional Administrator responsibility > Core Services > Profile Categories
Profile options can be grouped into logical categories based on their functional area. A profile
option can belong to more than one profile category.
You can create new or update existing profile categories.
The following slides describe some of the more commonly-used profile options. They do not
represent all the profile options included in each listed profile category.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 12
Auditing Related Profile Options

How to Use Profile Options Related to Auditing


These two profile options are used to enable auditing within Oracle Applications. They belong
to the “Security” profile category.
AuditTrail: Activate
This option enables auditing of changes to database tables. AuditTrail tracks which rows in a
database table or tables were updated, at what time, and which user was logged in using the
form or forms.
Sign-On: Audit Level
This option allows you to select a level at which to audit users signing on to Oracle
Applications. Choose from four audit levels which increase in functionality:
• None – default value. No users will be audited.
• User – tracks who signs on to your system, the times the users log on and off, and the
terminals used.
• Responsibility – performs the User-level audit as well as tracking the responsibilities the
users choose and how much time spent as each responsibility.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 13
• Form – performs the Responsibility-level audit and also tracks the forms the users choose
and how long each form is used.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 14
Currency-Related Options

How to Use Currency-Related Options


The options shown in the figure control the editing of monetary fields. They belong to the
“NLS” profile category.
Currency: Negative Format
This option enables the user to select the indicators for a negative amount.
Currency: Positive Format
This option enables the user to select the indicators for a positive amount.
Currency: Thousands Separator
This option enables the user to request that a comma be inserted appropriately within a number
of a thousand or more.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 15
Flexfield-Related Options

How to Use Flexfield-Related Options


The options shown on the figure control the behavior of flexfield processing.
These profile options belong to the “Flexfields” profile category.
AutoSkip
As soon as you enter a valid value into a flexfield segment, AutoSkip automatically positions
your cursor in the next segment.
Shorthand Entry
This option controls the behavior of shorthand entry of flexfields if shorthand entry has been
defined.
Show Full Value
If both shorthand entry and a complete alias have been defined for a flexfield, and this option is
set to no, the complete flexfield window does not open when the alias is entered. If this option
is set to Yes, the window always opens.
Validate on Server
Set this option to Yes to enable server-side validation of key flexfields. This improves
performance when using key flexfields over a wide-area network.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 16
BiDi Direction
This option controls the appearance of the flexfields window in Applications running in
Semitic languages.
LOV Warning Limit
Sometimes an LOV can take a very long time to run if there is a very significant amount of
data in it. Set this option to the number of rows to be returned before you are asked to continue
retrieving the entire list.
Open Descr Window
This option allows you to control whether a descriptive flexfield window automatically opens
when you navigate to a customized descriptive flexfield.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 17
Online Reporting-Related Options

How to Control Output Processing at the System Level


The options shown in the figure control output processing at the system level.
They belong to the “Concurrent Processing File Server” profile category.
RRA: Enabled
Set this user profile to Yes to use the Report Review Agent to access files on concurrent
processing nodes.
RRA: Delete Temporary Files
When users use a custom editor to view a concurrent output or log file, the Report Review
Agent makes a temporary copy of the file on the client. Setting this option to Yes automatically
deletes these files when the user exits Oracle Applications.
RRA: Maximum Transfer Size
Specify, in bytes, the maximum allowable size of files transferred by the Report Review Agent.
If you enter no value, there is no size limit.
RRA: URL
Specify a URL that points to the CGI script on your WebServer to use the Report Review
Agent to access files on concurrent processing nodes.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 18
Personal Output Viewer Options

How the User Can Control Request Output


A user can set several options to control request output. You can specify different tools to
view different output types, as well as different font sizes. If a user asks to send request
completion notifications to other people, a URL pointing to request results can be sent.
These profile options belong to the “Concurrent Processing View Requests” profile category.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 19
User-Related Concurrent Request Profile Options

How to Use User-Related Concurrent Request Profile Options


These belong to the “Concurrent Processing Execution” profile category.
Concurrent: Attach URL
Setting this option to “Yes” causes a URL to be attached to request completion notifications.
When a user submits a request, and specifies people to be notified in the defining completion
options region, a URL is appended to the notification that enables them to view the request on-
line.
Concurrent: Save Output
You can save your request outputs in a file if one is generated. This allows you to reprint a
request.
Concurrent: Active Request Limit
You can limit the number of requests that can be run simultaneously by each user, or for every
user at a site.
Concurrent: Request Priority
This displays the default priority number for your concurrent requests. Priorities range from 1
(highest) to 99 (lowest). The default is 50.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 20
Concurrent: Sequential Requests
Setting this option to Yes forces requests to run sequentially in the order in which they were
submitted.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 21
Security Signon Profile Options

How to Use Security Signon Profile Options


These profile options belong to “Security” profile category.
Sign-On:Notification
Setting this option to “Yes” displays a message at login that indicates:
• Concurrent request failures since your last session
• How many times someone tried to log on to Oracle Applications with your username and
an incorrect password
• When the default printer identified in your user profile is unregistered or not specified
Signon Password Hard to Guess
This profile option sets rules for choosing passwords to ensure that they will be “hard to
guess.” A password is considered hard-to-guess if it follows these rules:
• It contains at least one letter and at least one number
• It does not contain the username
• It does not contain repeating characters
Signon Password Length

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 22
Signon Password Length sets the minimum length of an Applications signon password. If no
value is entered, the minimum length defaults to 5.
Signon Password No Reuse
This profile option specifies the number of days that a user must wait before being allowed to
reuse a password.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 23
Summary

Lesson Summary
An important function of the system administrator is to control the default behavior and
appearance of Oracle Applications. This is done by specifying profile values. In this lesson you
saw how to display and update profile values. You also learned how to reference previously
defined profile values elsewhere in Oracle Applications.

Copyright © Oracle Corporation, 2007. All rights reserved.

Profile Options
Chapter 7 - Page 24
Auditing System Resources
Chapter 8

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 2
Auditing System Resources

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 3
Objectives

Lesson Aim
As system administrator you may audit application users and the changes they make to
application data. You will learn how both of these options are set and why you use them.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 4
Auditing Oracle Applications

Changes to Audit in Oracle Applications


Within Oracle Applications, you can audit user activity and database row changes.
SignOn Audit Feature
The SignOn Audit feature enables you to monitor user activity. You can audit at the user,
responsibility, or form level. When you enable Signon Audit, you specify the desired level of
auditing. Signon Audit provides two methods for viewing audit data:
• The Monitor Users form provides online access to audit data.
• Various Signon Audit reports are available.
AuditTrail Feature
With the AuditTrail feature you can keep a history of changes to your important data: what
changed, who changed it, and when it changed. With AuditTrail, you can easily determine how
any data row or element obtained its current value. The audit data is stored in database tables
that can be queried by using any standard Oracle SQL tool.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 5
Auditing User Activity

Signon Audit Feature


You can audit and monitor user activity by enabling the Oracle Applications Signon Audit
feature, enabling you to track the activity of users signed on to Oracle Applications. Implement
the Signon Audit feature by updating the Sign-On: Audit Level system profile.
With Signon Audit you can choose whom to audit and what type of user information to track.
You can selectively determine what audit information you need to match the needs of your
organization.
Signon Audit Reports
Signon Audit reports give you historical, detailed information on what your users do in your
application. You control the data selected for the reports as well as how the data is presented.
Monitor Users Window
The Monitor Users window gives you online, real-time information about who is using Oracle
Applications and for what purpose.
You can see which users are signed on and which responsibilities and forms they are using.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 6
Signon Audit Profile Option

Signon Audit Levels


The Sign-On: Audit Level profile option enables you to select a level at which to audit users
who sign on to Oracle Applications. The four possible audit levels increase in functionality and
detail of auditing.
• None: Is the default value and disables the Signon Audit feature.
• User: Auditing at the user level tracks who signs on to your system and the times that
users log on and off.
• Responsibility: Auditing at the responsibility level tracks all the information tracked at
the user level, including the responsibility the user is using and how much time the user
used the responsibility.
• Form: Auditing at the form level tracks all the information tracked at the user and
responsibility levels as well as which forms the user chooses and how long he or she uses
those forms.
The recommended setting is Form to enable as much auditing as possible. At this setting, the
system logs all user sign-ons, responsibility selections and instances of access to forms.
Note: This profile option can be set in the Oracle Applications Manager Signon Audit Setup
page.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 7
Signon Audit Reports

Reports
The Signon Audit feature can generate several reports detailing information gathered by
Signon Audit. These reports are shown in the figure.
• Signon Audit Forms
• Signon Audit Users
• Signon Audit Responsibilities
• Signon Audit Concurrent Requests Report
• Signon Audit Unsuccessful Logins Report

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 8
Signon Audit Forms Report

Using the Signon Audit Forms Report


Use the Signon Audit Forms Report to view who is navigating to what form and when. You
can use this report to check for bottlenecks in the system. The report contains the following
columns:
• User Name: Oracle Applications username of the user who accessed the form
• Responsibility Name: Name of the responsibility from which the user accessed the form.
(The responsibility is displayed only if you audited the user at the responsibility or form
Signon Audit level.)
• Start Active Time/End Active Time: Dates and times when the user accessed and exited
the form (This information is displayed only if you audited at the form level.)
• Form Name: Name of the form the user accessed. (The form name is displayed only if you
audited the user at the form level.)

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 9
Signon Audit Concurrent Requests Report

Using the Signon Concurrent Requests Report


You can use this report to view information about concurrent requests.
• Login Name: Operating system login name of the user who submitted the concurrent
request.
• Request ID: Concurrent request ID of the submitted concurrent request.
• Concurrent Program Name: Name of the concurrent program the user submitted.
• User Name: Oracle Applications username of the user who submitted the concurrent
request.
• Responsibility Name: Name of the responsibility from which the user submitted the
concurrent request. (The responsibility is displayed only if you audited the user at the
responsibility or form level.)
• Form Name: Name of the form from which the user submitted the concurrent request.
(This information is displayed only if you audited the user at the form level.)
• Requested Start Time: Date and time when the request started running.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 10
Signon Audit Responsibilities Report

Using the Signon Audit Responsibilities Report


You can use this report to view who is selecting what responsibility and when. The report
contains the following columns:
• User Name: Oracle Applications username of the user who selected the form.
• Responsibility Name: Name of the responsibility that the user used. (The responsibility is
displayed only if you audited the user at the responsibility or form level.)
• Start Active Time/End Active Time: Dates and times when the user selected or exited the
responsibility. The start active time and end active time are displayed only if you audited
the user at the responsibility or form level.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 11
Signon Audit Unsuccessful Logins Report

Using the Signon Audit Unsuccessful Logins Report


You can use this report to view who attempted unsuccessfully to sign on to Oracle
Applications as another user. An unsuccessful login occurs when a correct username is entered
with an incorrect password. The report contains the following columns:
• Username: Oracle Application username of the user who unsuccessfully signed on.
• Attempt Time: Date and time when the user unsuccessfully tried to sign on.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 12
Signon Audit Users Report

Using the Signon Audit Users Report


You can use this report to view who signs on and for how long. The report contains the
following columns:
• Session Number: Oracle Applications session number uniquely identifying each
application user sign-on.
• User Name: Oracle Applications username of the user who signed on.
• Start Active Time/End Active Time: Dates and times when the user accessed/ exited
Oracle Applications. (The start active time and end active time display only if you audited
the user at the user Signon Audit level.)
• ORACLE Process: Oracle Process ID used during the user’s sign-on.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 13
Purge Audit Records

Purge Signon Audit Data


Purge end-user access data using the Purge Signon Audit Data concurrent program. This
concurrent program purges all audit records older than a user-supplied date. Run this
concurrent program between once a week and once a month, retaining thirty to ninety days of
records. This concurrent program purges the following tables:
• FND_LOGIN_RESP_FORMS
• FND_LOGIN_RESPONSIBILITIES
• FND_LOGINS
• FND_UNSUCCESSFUL_LOGINS
Purge concurrent request data using the Purge Concurrent Request and/or Manager Data
concurrent program. Run this concurrent program at least once a week and retain 14 to 90
days of records.
Note: This concurrent program can be scheduled and monitored through Oracle Applications
Manager, from the Critical Activities tab on the Applications Dashboard.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 14
Monitor Users Window

Monitor Users Window


(N) Security > User > Monitor

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 15
Auditing Database Changes

Auditing Important Data


AuditTrail enables you to keep a history of changes to your important data. You can track what
changed, who changed it, and when it was changed. Using AuditTrail, you can easily
determine how any data row or column obtained its current value.
When you enter or update data through your forms, you change the underlying database tables.
AuditTrail tracks which rows in the database were updated. Audit information for each of these
changes is stored in audit tables that can then be queried and reported upon.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 16
Steps for Setting Up AuditTrail

How to Set Up the AuditTrail


The figure shows the steps involved in implementing AuditTrail. These steps are covered in the
subsequent slides.
• Because there is overhead involved in recording audit information, it is important to
determine which columns of which tables should be audited; not all changes to all tables
need to be tracked.
• After you have identified what to audit, you can begin setting up AuditTrail definitions.
You should select tables for auditing that are functionally related. Create an Audit Group
containing these related tables.
• For each of the tables in the audit group, you must define which columns are to be audited.
The primary key columns for these tables are automatically included.
• Enable auditing of a particular Oracle ID (schema) by defining audit installations, thus
enabling you to audit across multiple application installations.
• After your definitions are complete, run the AuditTrail Update Tables Report program to
create your audit tables and enable auditing for your audit group.
• There are no predefined audit reports. You can use any SQL tool to retrieve information
from your audit tables.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 17
Identify Tables and Columns to Audit

Determining Columns and Tables to Audit


You should select columns from tables that are functionally related. For example, if the
accounting department wants to audit changes to any customer transactions involving cash
receipts, columns from the Customer Transactions Lines table, the Cash Receipts table, and the
Adjustments table would be good candidates for auditing.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 18
Create an Audit Group

Audit Groups
(N) Security > AuditTrail > Groups
Once you have your tables and columns identified, you should group those tables into an audit
group. In the figure, the three tables mentioned have been placed together in a Receivables
Internal Control audit group.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 19
Audit Tables Window

Audit Tables Window


(N) Security > AuditTrail > Tables
For further descriptions of the Audit Tables window see:
(Help) Applied Technology > Oracle Applications System Administration >
User and Data Auditing > Audit Tables Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 20
Identifying the Schema to be Audited

(N) Security > AuditTrail > Install

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 21
Enabling Audit Processing

(N) Requests > Run

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 22
Audit Shadow Tables

What Audit Shadow Tables Identify


For each table being audited, an audit shadow table is created. This table contains audit
processing data such as the transaction type (for instance, INSERT) and time-stamp data, the
primary key columns of the audited table, and whatever columns are being audited. In the
example above, the CUSTOMER_TRX_ID, APPROVED_BY, CREATED_BY, and
ACCT._AMOUNT of the AR_ADJUSTMENTS_ALL table are being audited so the shadow
table includes these columns as well as the other columns required by the audit process.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 23
Shadow Table Views

Using Shadow Table Views


Two views are created for a shadow table. These views are called Shadow_Table_Name_Avn
and Shadow_Table_Name_Acn where n is a number. If the number of columns being audited is
very large, multiple views are created and numbered sequentially. The presentation of the audit
table data is different depending on whether you are querying the AV view or the AC view.
The AC view enables you to reconstruct the value for a row at a given time while the AV view
provides simple access to when a value was changed.

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 24
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 25
Copyright © Oracle Corporation, 2007. All rights reserved.

Auditing System Resources


Chapter 8 - Page 26
Managing Printers
Chapter 9

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 2
Managing Printers

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 3
Objectives

Lesson Aim
Installing a new printer is a typical responsibility of the system administrator. A less common
need is to customize the software that supports printers. This lesson covers the basics of
printer setup and the Pasta printing utility. References for additional information on
customizing your printer setup are also provided.
To set up your printers, you can either use the Pasta utility, in which you enter configuration
data in a file called pasta.cfg, and use predefined components. Alternatively, you can use the
printing setup windows to define your components and enter configuration information.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 4
Oracle Print Definition Components

Required Formatting Information for Components


The formatting information required by your printer is specified by the components shown on
this figure.
Printer Type
Describes what kind of a printer you have. This is the manufacturer and model—for example, a
DEC LN03 printer or an HP LaserJet III printer.
Printer Style
• Describes how a report should be printed
• Determines the number of lines (rows) per page
• Determines the width of each line (number of columns)
• Controls whether to print a header page
Printer Driver
• Contains the set of commands that tell a printer how to print in the print style chosen
• Initializes printing orientation
• Resets printer driver’s instructions for next print job

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 5
Printer Drivers Versus SRW
• A printer driver formats the destination printer.
• An SRW driver formats text and sets page breaks in an Oracle Reports file.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 6
Relationships of the Printer Components

How the Print Components Are Related


Oracle Applications uses the components shown on the previous figure to store the information
necessary to print a report. This figure shows how the components are related to provide a
flexible method of defining your print environment. The printer type is at the heart of your
print definitions. The above figure displays:
• A printer is registered as a printer type.
• A printer style is associated with a printer type.
• A printer driver is assigned to a printer type.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 7
Formatting Information

Formatting Information
For a printer to produce a report, it requires three basic types of formatting instructions: text,
document, and printer.
Text Formatting
• Oracle Reports generates reports for the various Oracle Applications.
• When Oracle Reports formats text as bold or underlined, and sets page breaks, formatting
codes are used.
• A SQL*ReportWriter (SRW) driver defines text formatting codes used by Oracle Reports.
Document Formatting
• The dimensions for a report output file are predefined as the number of rows and columns
(height and width).
• A print style defines the dimensions for a report output file.
Printer Formatting
• A printer prints in a certain orientation, portrait or landscape.
• A printer can also start printing with a specific font and type size. These instructions are
contained in an initialization string.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 8
• A printer driver defines initialization and reset strings.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 9
Defining Printers

How to Define Printers


The figure shows the sequence of operations to define printers. Generally, you simply register
a new printer by using existing definitions as shown in the path on the left. However, in some
cases you must modify existing definitions or create new definitions to accommodate a new
printer as shown on the right.
This lesson focuses on printing with the Pasta printing utility, which greatly simplifies your
configuration. Custom configurations not using Pasta (those that would follow the illustration
on the right) are covered in the Oracle Applications System Administrator’s Guide –
Configuration.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 10
Finding Existing Printer Types

Printer Types Window


(N) Install > Printer > Types
For a complete explanation of the fields in this form see:
(Help) Applied Technology > Oracle Applications System Administration > Printers > Printer
Types Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 11
Registering a New Printer

Registering a New Printer


(N) Install > Printer > Register
For a complete explanation of the fields in this form see:
(Help) Applied Technology > Oracle Applications System Administration > Printers > Printers
Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 12
Defining a New Printer Type

Defining a New Printer Type


(N) Install > Printer > Types
For a complete explanation of the fields in this form see:
(Help) Applied Technology > Oracle Applications System Administration > Printers > Printer
Types Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 13
Printing with Pasta

Overview of Printing with Pasta


Pasta is an Oracle Applications utility that converts text report files to PostScript and also
enables the printing of custom PostScript reports from Oracle Applications. The reports can
then be directed to any PostScript printer.
Setting up your system to use Pasta is simpler than the standard Oracle Applications printer
setup procedure. The Printer Type, Printer Driver, and SRW driver files are provided. The only
setup required to begin printing is the registration of the printer with Oracle Applications.
Many printing options can be defined using the Pasta configuration file (pasta.cfg). You no
longer need to maintain multiple drivers and styles for each printer.
Pasta is provided as an executable named FNDPSTAX.
For updates and more details, see the Pasta 3.0.4.0 User’s Guide for Release 12 available from
OracleMetaLink Note 239196.1.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 14
Setup for Basic Printing with Pasta

Setup for Basic Printing with Pasta


Use the following Steps to enable any PostScript printer to print text or PostScript reports in
the following styles: Landscape, Landwide, Portrait, or Dynamic.
Use the Printers window to register your printer:
1. Enter your printer’s name as defined in the operating system and applications.
2. Select “––Pasta Universal Printer” from the list of values for the printer Type.
You are now ready to print text and PostScript reports from your PostScript printer using the
default Pasta configuration.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 15
The pasta.cfg file

The pasta.cfg file


The pasta.cfg file controls many printing options, such as margins, or output type.
The pasta.cfg file is an ASCII text file that is shipped in the $FND_TOP/resource/ directory.
Special options are included to support Arabic, Hebrew, and Thai data.
If you have printers that require special setup, you can customize these options by creating a
configuration file for each printer. Copy the pasta.cfg file to pasta_<printer name>.cfg. Make
the necessary changes to the file. Pasta automatically looks for a printer–specific file name. If it
does not find one, Pasta then uses the default file, pasta.cfg.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 16
Modifying an Existing Printer Type to Use Pasta

Modifying an Existing Printer Type to use Pasta


If your printer is already assigned to a printer type that contains styles and drivers you want to
maintain, you can add Pasta to the existing printer type.
To do so, associate one of the Pasta printer drivers with a print style on the Printer Types
window.
The seeded Pasta printer drivers are:
• PASTA_LANDSCAPE
• PASTA_PORTRAIT
• PASTA_LANDWIDE
• PASTA_DYNAMIC
You can associate a Pasta driver with an existing print style, or you can create a new print
style.
Steps
1. Query your existing printer type in the Printer Types window.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 17
2. In the Style field, select the style to which you want to assign a Pasta driver. Or, if you are
assigning Pasta to a style already defined for the printer type, delete the driver in the
Driver Name field currently associated with the style.
3. In the Driver Name field, select the appropriate Pasta driver.
Adding a New Printer Type to Use Pasta
If you want to add a new printer type, you can also add Pasta to your new printer type.
1. Navigate to the Printer Types window.
2. Enter the Type of printer.
3. In the Style field use the list of values to select the style to which you want to assign a
Pasta driver.
4. In the Driver Name field, select the appropriate Pasta driver from the list of values:
- PASTA_LANDSCAPE
- PASTA_PORTRAIT
- PASTA_LANDWIDE
- PASTA_DYNAMIC

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 18
Generating Other Formats using the Preprocessing Option

Generating Other Formats using the Preprocessing Option


Pasta can use a preprocessing option to generate output in formats other than those that Pasta
natively supports. For example, by invoking Ghostscript, you can generate PDF output. With
this option, Pasta invokes a filter program to preprocess preprocess the Pasta output before
passing it to the printing command.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 19
Using Pasta with XML Publisher

Using Pasta with XML Publisher


Oracle XML Publisher is a template-based publishing solution. It provides a new approach to
report design and publishing by integrating familiar desktop word processing tools with
existing Oracle E-Business Suite data reporting. XML Publisher leverages standard, well-
known technologies and tools, so you can rapidly develop and maintain custom report formats.
For more information on XML Publisher, see the Oracle XML Publisher Administration and
Developer's Guide and the Oracle XML Publisher Report Designer's Guide.
If you are using XML Publisher to format and generate your report output then the easiest
method to get report output to your printers is to use the Pasta print driver.
XML Publisher generates PDF output. Typically the PDF must be converted to a format the
printer can understand, such as Postscript (PS) or Printer Command Language (PCL).
Currently XML Publisher does not natively support these output formats and you need to use a
converter to print within the Pasta printing framework.
The flow of command is the concurrent manager calls XML Publisher to create PDF output for
the given report. The output is then sent to the Pasta driver which preprocesses it through a
converter program. Its output is sent to the printer.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 20
To use a converter, change the Pasta configuration file to call a third party package to convert
the PDF to PS or PCL. Pasta can use a preprocessing command to invoke any executable that
supports an input file and an output file (a filter program). The third party package can be an
open source solutions such as Ghostscript and XPdf.
Pasta invokes the filter program to preprocess the XML Publisher output before passing it to
the printing command. By using the preprocess option, you can generate output formats other
than the formats currently supported by Pasta.
For more information, see the “Pasta 3.0.4.0 User's Guide for Release 12” in OracleMetaLink
Note 239196.1.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 21
Other Customization Materials for Oracle Applications Printing

Customization Considerations
You can customize Oracle Applications printer support components to use custom print styles
and custom print programs. For information on how to do customize these components, use
the references below.
Materials Needed
• Manual for your specific printer to look up control codes required by a printer type
• Installing Oracle Applications for your platform to look up control codes required by an
operating system platform
• Oracle Applications System Administrator’s Guide – Configuration
• “Pasta 3.0.4.0 User's Guide for Release 12” in OracleMetaLink Note 239196.1

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 22
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 23
Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Printers
Chapter 9 - Page 24
Introduction to Oracle
Applications Manager
Chapter 10

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 2
Introduction to Oracle Applications Manager (OAM)

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 3
Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 4
What is Oracle Applications Manager?

Introduction
Oracle Applications Manager is a system management console. It provides a wide variety of
features related to system management for use by DBAs, System Administrators, and
Technical Support personnel.
Oracle Applications Manager allows you to monitor and control E-Business Suite system
components. It can help you to understand how the performance and availability of those
components affects your business. When problems arise, Oracle Applications Manager
provides a variety of features to help you diagnose and resolve those problems quickly to
reduce any necessary downtime. Oracle Applications Manager helps you manage your system
configuration by enabling you to make and track configuration changes as well as identify
potential configuration problems. Additionally, Oracle Applications Manager helps you track
periodic maintenance activities and facilitates the patching process.
The pre-defined Oracle Applications Manager Administrator Menu is available from the
System Administration responsibility.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 5
Benefits of Oracle Applications Manager

Benefits
Oracle Applications Manager provides features to manage all aspects of the Oracle E-Business
Suite.
During system implementation, Oracle Applications Manager automates configuration tasks
and enables you to tighten security on the system. OAM can also help in keeping the system
up-to-date with the latest E-Business Suite patches.
Oracle Applications Manager automates system monitoring, facilitates daily administration,
and helps speed problem resolution.
For maintenance or upgrades, OAM helps identify necessary updates, provides an analysis of
the potential impact of those updates, and delivers tools to facilitate and minimize any required
downtime.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 6
Oracle Applications Manager Integrates with …

OAM Integration Points


OAM integrates with other Oracle products and provides features that manage or extend those
products. For example, the Oracle Workflow Manager within OAM manages Oracle Workflow
functionality. OAM provides the patch history database and patch wizard for AutoPatch. It
provides the context editor for AutoConfig and monitoring for in-progress AutoPatch and AD
Administration tasks. It can download patches from OracleMetaLink and automatically merge
them using AD Merge Patch. It provides management interfaces for Rapid Clone, Generic
Service Management, Oracle Workflow,and other Oracle Applications features. It also
provides access to tests run through Oracle Diagnostics. OAM also provides a way to run
custom SQL scripts (as well as seeded scripts) via the SQL Extensions feature.
Note: The integration of only some of these features will be covered in this course. For more
information on Oracle Workflow Manager, see the course “R12 Implement Oracle Workflow".
For more information on using features related to AD Utilities such as AutoConfig, cloning,
Patch Wizard, Timing Reports, see the course “R12 Install, Patch and Maintain Oracle
Applications". Also, refer to the following manuals:
• Oracle Workflow Administrator’s Guide
• Oracle Applications Maintenance Utilities

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 7
• Oracle Applications Patching Procedures

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 8
Application Management Pack for Oracle E-Business Suite

Application Management Pack for Oracle E-Business Suite


Application Management Pack for Oracle E-Business Suite extends Enterprise Manager 10g
Grid Control to help monitor and manage an Oracle E-Business Suite system more effectively.
The pack integrates Oracle Applications Manager with Grid Control to provide a consolidated,
end-to-end E-Business Suite management solution.
The Application Management Pack is released and installed separately from the Oracle E-
Business Suite, and is not covered in this lesson. For more information on the Application
Management Pack, see OracleMetaLink Note 394448.1.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 9
Navigation in OAM

Navigation
You can access OAM from the System Administration responsibility or the System
Administrator responsibility. A seeded menu, Oracle Applications Manager Administrator
Menu (OAM_ADMIN_MENU) is available from these responsibilities. In addition, individual
OAM functions can be added to custom menus. Direct links to specific Oracle Applications
Manager features are possible from the E-Business Suite Home Page.
The OAM console includes:
• The Applications Dashboard, which includes tabs and a dropdown list for quick access to
commonly-used features
• The Site Map, which contains links to all features within OAM
• Global buttons/links for setup, the Support Cart, your home page, and online help

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 10
Applications Dashboard

Applications Dashboard
The Applications Dashboard provides a comprehensive summary of the Oracle E-Business
Suite components including:
• An overview of configuration changes and the status of infrastructure components
• Performance information
• Required critical maintenance activities
• Diagnostic test results
• The status of key business flows
• Potential security issues
• Software updates
In addition, a dropdown list provides quick access to commonly-used pages and features,
including:
• Configuration – Overview
• Forms Sessions
• Database Status

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 11
• Applied Patches
• Patch Wizard
• Workflow Manager

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 12
Site Map

Site Map
The Site Map provides links to most pages in OAM, in these categories:
• Administration
• Monitoring
• Maintenance
• Diagnostics and Repair

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 13
Administration

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 14
Monitoring

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 15
Maintenance

Maintenance Features
Patching utilities are available from the Site Map > Monitoring tab. These are described in the
“12 Install, Patch, and Maintain Oracle Applications” course.
Critical activities are activities that must be run periodically. They are monitored to ensure they
are being run. Examples include refreshing an Employee Directory or purging obsolete data.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 16
Diagnostics and Troubleshooting

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 17
Setting Up Oracle Applications Manager

Setting Up Oracle Applications Manager


Many of the features in OAM require special setup. Use the OAM Setup global link to
navigate to the OAM Setup pages.
• Dashboard Setup – Enable and set up the frequency and thresholds of metric
collections for the Dashboard. Enable alerts for the status of services.
• OracleMetaLink Credentials – Define your credentials for accessing
OracleMetaLink.
• Business Flows – Update or view business flows, either seeded or custom.
• Knowledge Base – Use this page to retrieve documents from OracleMetaLink.
• Concurrent Requests – Use this page to set up alerts for concurrent requests,
such as long-running requests or pending requests.
• Signon Audit Setup – Set up and enable Signon Audit.
Each feature’s setup page is covered in the general discussion of the feature in
another lesson.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 18
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 19
Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Applications Manager


Chapter 10 - Page 20
System Monitoring in Oracle
Applications Manager
Chapter 11

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 2
System Monitoring in Oracle Applications Manager

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 3
Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 4
System Status Overview

System Overview
(N) Applications Dashboard > Overview (T)
The Overview tab of the Applications Dashboard provides an overview of the general status of
your system.
Applications System Status
The status of each host is shown.
• Platform - the host's operating system.
• Host Status – indicates whether the host is up or down.
• Admin - indicates whether the Admin server has been installed on the host machine.
• Database - indicates the status of the database instance installed on the host machine.
• Concurrent Processing- indicates the status of the Internal Concurrent Manager and the
services managed by the ICM.
• Forms - indicates the status of the Forms Server components: Forms Listener, Metrics
Server, Metrics Client, and OAM Generic Collection Service.
• Web - indicates the status of the Apache Web Listener.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 5
For the Database column, you can click on the icon(s) in the column to drill down to more
information on the database status.
For Concurrent Processing, you can click on the icon(s) in column to drill down to more details
on the status of concurrent managers and their concurrent processes.
Other regions are discussed on the following slides.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 6
System Status – Configuration Changes

Configuration Changes
This region shows system-level changes that were made in the last 24 hours. Use this data to
help diagnose sudden changes in the functioning of your applications system.
To see the list of Patches Applied, click on the number to drill down to the Patch Summary
page.
To see the list of Site Level Profile Options, click on the number to drill down to the Site Level
Profile Settings page.
To see the list of Applications Context Files Edited, click on the number to drill down to the
Applications Configuration Parameters page. Changes made to context files can impact your
overall processing configuration and the functioning of business processes.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 7
System Status – Web Components Status

Web Components Status


This region lists the status of the web components. Status values may be "Up”, “Down”,
"Warning”, and “Unmonitored”.
The status of each Web component is determined by testing the corresponding URL as defined
in the component's Web agent profile option. The Warning status will be displayed if the
profile option is not set. Otherwise, a status of Up or Down will be returned based on the
success of the URL test. The profile options are listed with their corresponding components
below.
• PL/SQL Agent - Uses profile option APPS_WEB_AGENT (Applications Web Agent). If
down, you will not be able to log in to any Web-based Self-Service Applications,
including the Personal Homepage. Look for errors or access issues in the Apache logs in
$LOG_HOME/ora/10.1.3/Apache.
• Servlet Agent - Uses profile option APPS_SERVLET_AGENT (Apps Servlet Agent). If
down, the Self-Service Framework-based Applications will not function, as well as all
other servlet-based features. Look for errors in the Apache error and access logs above,
and also the mod_jserv log (<iAS_HOME>/Apache/Jserv/logs/mod_jserv.log). Also,
execute the Servlet Ping from the System Administration Diagnostics menu.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 8
• JSP Agent - Uses profile option APPS_SERVLET_AGENT (Apps Servlet Agent). If
down, execute the JSP Ping from the System Administration Diagnostics menu.
• Discoverer (if installed) - Uses profile option
ICX_DISCOVERER_VIEWER_LAUNCHER (ICX: Discoverer Viewer Launcher). If
down, you will not be able to run BIS reports.
• Personal Homepage - Uses profile option APPS_SERVLET_AGENT (Apps Servlet
Agent). If down, you cannot log on through the Personal Homepage.
• TCF - Uses profile option APPS_SERVLET_AGENT (Apps Servlet Agent). If down, try
running the AOL/J Diagnostic or the Servlet Ping utilities from the System Administration
Diagnostics menu.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 9
System Status – System Alerts

System Alerts
Use the System Alerts region to find out about critical events to your system. Examples of such
events are a halted process or a program that returned an error.
This region lists the number of system alerts in the categories listed below.
If your system is functioning well, there should be no new alerts reported. When an alert of a
particular type first occurs, it is counted as a new alert. It remains new until the status is
manually changed by the administrator. If an alert of the same type occurs again while the
original alert is still in open or new status, it is counted as a new occurrence.
• New Alerts - alerts that have not yet been acknowledged by the administrator. An alert is
acknowledged when it is manually moved from a status of "New" to a status of "Open" or
"Closed."
• New Occurrences - additional occurrences of alerts that are in new status.
• Open Alerts - all alerts that are in an open status. An alert must be manually moved from
the new to open status.
• Open Occurrences - all occurrences of alerts that are currently open.
Click on the number for any of these to drill down to the System Alerts and Metrics page.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 10
(Help) Applied Technology > Oracle Applications System Administration > Maintenance >
Overview of Monitoring Oracle Applications > System Alerts, Metrics, and Logs

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 11
System Status – User Initiated Alerts

User Initiated Alerts


The User Initiated Alerts region is similar to the System Alerts region. You can define
additional alerts to be raised for events of your choosing. These alerts will be listed in this
region.
This region lists the number of alerts in these categories:
• New Alerts - alerts that have not yet been acknowledged by the administrator. An alert is
acknowledged when it is manually moved from a status of "New" to a status of "Open" or
"Closed." See System Alerts for more information.
• New Occurrences - additional occurrences of alerts that are in new status.
• Open Alerts - all alerts that are in an open status. An alert must be manually moved from
the new to open status.
• Open Occurrences - all occurrences of alerts that are currently open.
Click on the number for any of these to drill down to the Alerts and Metrics page.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 12
Performance

Performance
(N) Applications Dashboard > Performance (T)
Application Tier Hosts
• Database Sessions - the number of active database sessions. Clicking the value link returns
a page showing all active database sessions.
• Running Requests - drills down to the Search for Requests Results page showing
information on all currently running requests.
• Forms Sessions - the number of running Forms sessions. Drills down to the Forms
Sessions page.
- The Forms Sessions page shows information including the following: username,
auditing session ID or AUDSID (from which you can drill down for database session
information), CPU usage, and duration.
- The Active Database Sessions includes the following information - AUDSID,
machine, program, and module.
• Service Processes - drills down to the System Activity page. Service processes include all
concurrent manager processes and all processes managed by the ICM. If you have set up

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 13
your system to have other services managed by Generic Service Management (GSM),
those services are included as well.
- GSM is an extension of concurrent processing and provides a framework for
managing processes on multiple host machines. With GSM, the Internal Concurrent
Manager manages various service processes across multiple hosts.
Database Instances
• Database Sessions - the number of active database sessions. Clicking the value link returns
a page showing all active database sessions.
• Running Requests - drills down to the Search for Requests Results page showing
information on all currently running requests.
• Forms Sessions - the number of running Forms sessions. Drills down to the Forms
Sessions page.
- The Forms Sessions page shows information including the following: username,
auditing session ID or AUDSID (from which you can drill down for database session
information), CPU usage, and duration.
- The Active Database Sessions includes the following information - AUDSID,
machine, program, and module.
Activity
• Services Up - the number of service instances whose target services match the actual
services.
• Services Down - the number of service instances whose target services do not match the
actual services.
• Unsent Workflow E-mail

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 14
Critical Activities

Monitoring Critical Activities


(N) Applications Dashboard > Critical Activities (T)
The Critical Activities page allows you to monitor periodic maintenance activities, such as data
purge programs, that are required to keep your system running smoothly.
The information on this page can help you understand historical success rates and gauge the
current needs for purging activity.
From this page you can specify the purge programs you wish to monitor using the “Modify
Monitored Program List” button. You can specify how frequently they are run using the
“Update Frequency” button.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 15
Critical Activities Setup

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 16
System Alerts, Metrics, Logs

System Alerts, Metrics, and Logs


(N) Site Map > Monitoring (T) > System Alerts [or Logs] (under Current Activity)
The System Alerts, Metrics, and Logs tab pages provide information that can help you
diagnose potential problems. E-Business Suite applications can report these potential problems
as system alerts to Oracle Applications Manager. These alerts can then be tracked in OAM,
and administrators can classify alerts as open or closed, as well as keep notes on the steps taken
to resolve underlying problems.
Alerts
This page shows a summary of the system alerts as well as a list of new alerts.
Alerts are classified by Severity level of Critical (an important business flow is impeded or a
large number of users is affected), Error (a less severe, more isolated issue), or Warning (there
may be a negative impact on users or business processes). Alerts are also marked as New or
Open. "New" indicates that the alert has just been posted in the system. "Open" indicates the
alert is being resolved.
In the Summary region, Alerts are grouped according to their severity and status of New or
Open. The New or Open column indicates how many alerts of the given severity exist. You
can click on the number to drill down to details on the alerts. You can change the state of alerts

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 17
(along with the associated occurrences) in OAM.. You can also add notes to alerts; for
example, to indicate how the problem was resolved.
Metrics
Not all exception conditions can be immediately detected directly within an Oracle
Applications component, but are best detected through external analysis. Some are detected by
measuring certain criteria, such as decreasing transaction throughput for a component or
excessive completion times for a business process. External analysis allows for easier
comparison of current and historical metric values, consideration of metrics from multiple
products and components., and end-user defined exception triggers. These exceptions are
analogous to "events" in Oracle Enterprise Manager where the use specifies the specific
conditions that will trigger an alert.
Logs
System Logs are general log messages that are logged by the various components in an
Applications System. These log messages can be logged by the developer of the components at
the following levels:
• Unexpected
• Error
• Exception
• Event
• Procedure
• Statement

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 18
Database Initialization (init.ora) Parameters

Database Initialization (init.ora) Parameters


(N) Site Map > Monitoring (T) > Database init.ora Setting (under System Configuration)
This page shows you the database init.ora parameters and their current values for the
installation. You can compare the current values with the recommended values, as well as see
if a given parameter is mandatory. You can also access the current bulletin on OracleMetaLink
on these parameters.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 19
Business Flows

Monitoring Business Flows


(N) Applications Dashboard > Business Flows (T)
Business Flow Monitoring in Oracle Applications Manager helps you to understand the effects
that system component issues and availability have on your business. This type of monitoring
has several benefits. Traditionally, system management tools have focused on monitoring
system components without regard to the effect those components have on the business. This
release of Oracle Applications Manager allows you to look at system issues from a different
perspective, helping you to understand the effects that system issues have on the business,
allowing you to prioritise accordingly. This solution is customisable, allowing you to define
flows specific to your own business, and map those flows to the system components upon
which they depend.
You can monitor system components within the context of the business flows that are
comprised of those components. These components include Oracle Workflow item types,
concurrent programs, forms, Oracle Applications Framework functions, and services. Flows
and sub-flows and their related system components are presented in a hierarchical format,
allowing you to see the ripple effects of a failed component.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 20
You can define your own custom business flows. Once you have identified the flows that you
would like to monitor, Oracle Applications Manager allows you to control monitoring at the
flow, sub-flow, and system component levels.
Business Flow Details
When you drill down to the monitoring details for a flow, you see the hierarchical
representation of that flow and the associated system components. For each system component
you can see the number of system alerts, concurrent request errors, and Oracle Workflow work
item errors where applicable. You can drill down on the links for more information on the
individual alerts or errors. Also, you can see that the alert and error statistics are rolled up
through sub-flows and flows to show the ripple effects of each on your business flows.
You can also edit a custom flow. You are able to update the name or description of a flow or
sub-flow, and add or delete a new sub-flow or system component to the hierarchy. This page
allows you to define and edit your custom flows. Your custom flows show as type “User
Defined” and will have an link in the edit column to take you to the editing page. To create a
new flow, click on the Create button.
See the Oracle Applications System Administrator’s Guide – Maintenance for more
information on business flows.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 21
Monitoring Oracle E-Business Suite Security

Monitoring Oracle E-Business Security in Oracle Applications Manager


OAM enables you to monitor failed security tests, posted security alerts, and also provides
links to online security-related documents and notices from Oracle. This page serves as your
starting point for detecting and resolving potential E-Business Suite security issues.
Security threats can come from a variety of sources including poorly configured systems, weak
user passwords, and external attacks. Oracle has developed a set of diagnostics tests that help
detect such conditions on your system. Additionally, you can integrate your own security
related tests tailored for your specific system.
You can schedule security tests to execute periodically. Whenever a security test fails, it posts
a system alert. Other components of the E-Business Suite may also post security-related
system alerts based on certain metrics or events. You can subscribe to be notified via Oracle
Workflow whenever a security related alert is posted. This allows you to continuously monitor
the security of your system, even when you are not in the office. You can be proactively
notified of any potential vulnerabilities that appear. You will be automatically notified of
conditions such as risky configuration changes, sudden increases in login failures, and users
that have been locked out of their accounts. Additionally, if you have a need for security
related tests beyond those provided by Oracle, you can integrate your own tests using Oracle
Diagnostics. Your custom tests can be executed periodically, post alerts, and appear in the
Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 22
Security tab of the Applications Dashboard. For more information, see the Oracle
Applications Supportability Guide.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 23
Monitoring E-Business Suite Security Setup - Diagnostic Tests

Diagnostic Tests for Security


To get the most out of security monitoring, schedule the security diagnostic tests to run
periodically. To do this from Oracle Applications Manager, choose “Submit New” from the
Concurrent Requests section in the Administration tab of the Site Map. In the request
submission page, choose the “Run Diagnostic Tests” concurrent program. For parameters,
enter “Application Object Library” for the Application Name, and “EbusinessSecurity” for the
Group Name. Leave the TESTNAME field blank to run all of the tests in the group. Later,
when you are familiar with the various tests, you can schedule specific tests to run at different
intervals.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 24
Applications Dashboard - Security

Applications Dashboard - Security


(N) Applications Dashboard > Security (T)
Once you have completed the setup, the Security page of the Applications Dashboard serves as
your starting point for detecting and resolving security issues.
The Security Alerts table shows a summary of all of the security related system alerts that have
been posted for failed security diagnostic tests and other events. You can drill down to view
details of the system alerts.
The Security Test Failures table displays recent failures of security related diagnostic tests.
This table includes both tests that were scheduled using the “Run Diagnostic Tests” concurrent
program and tests that were run manually through Oracle Diagnostics or Oracle Applications
Manager. The test failures are grouped by the severities of Critical, Error, and Warning.
From this table, you can drill down on the Failure Time to obtain the diagnostic test report, or
you can rerun the test by clicking on the icon in the Diagnose column.
The final section of the Security page is the Resources section. This provides links to security
related documents and notices on OracleMetaLink. You can use these links to stay up-to-date
on the latest developments and best practices for E-Business Suite system security.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 25
Database Status Details

Database Status Details


(N) Site Map > Monitoring (T) > Database (under Availability)
This page displays details on the database. Form more information on the entities listed, refer
to the Oracle database documentation.
• Instance Status
• Wait Events
• Memory Statistics
• System Statistics
• Tablespaces and Status
• Rollback Segments and Extents

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 26
Application Services

Application Services
(N) Site Map > Administration Tab > Application Services > Generic Services
You can configure, monitor, and control application services from the System Activity page for
services. These services are managed under Generic Service Management (GSM). GSM
allows you to manage a variety of services using a fault-tolerant framework. The Application
Services lets you drill down to details for instances of each service and view the instances'
statuses and processes.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 27
Monitoring Forms

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 28
Forms Runaway Processes

Forms Runaway Process Detection


(N) Site Map > Monitoring (T) > Forms Runaway Processes (under Current Activity)
The Forms Runaway Process Detection feature can help you reduce wasted system resources
by proactively notifying you when Forms runtime processes cross the thresholds that you set.
For potential runaway processes, Oracle Applications Manager provides critical details such as
the Oracle E-Business Suite user that owns the process. This data allows you to more
efficiently collect the information that you need for deciding on whether or not to kill a
process. If you do decide to kill a process, then it can be done directly from within Oracle
Applications Manager.
The term “runaway process” refers to processes that are no longer serving their intended
purpose or are consuming an inordinate amount of resources. Oracle Applications Manager
can now help you detect Forms runtime processes that have likely become runaways. You can
set thresholds for memory usage, CPU usage, and elapsed runtime, and be alerted if any Forms
runtime process crosses these thresholds. Additionally, Oracle Applications Manager can
detect Forms runtime processes that have continue to run even though they have lost their
database connections.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 29
When a potential runaway process is detected, a System Alert will be posted. As with any
system alerts, you can subscribe to receive notifications via Workflow, so that you don’t have
to keep checking back in Oracle Applications Manager for new alerts.
Oracle Applications Manager provides you with a list of the possible runaway processes, and
gives you the option of terminating individual processes once you have confirmed that they are
indeed runaways.
Forms Runaway Processes Page
The Forms Runaway Processes page allows you to configure the thresholds for the feature, and
view the current list of potential runaway processes. Here you can set the values for the
maximum amount of memory that a process should allocate, the maximum percentage of
server CPU that a process should consume, and the maximum amount of time that a process
should every stay alive.
When a runaway process is discovered, a system alert will be posted, and the process will
appear in the table. The table will list middle tier details, including host, PID, memory size,
CPU percentage, and total runtime. You can also see the E-Business Suite user who owns the
process, and the IP address of the client connected to the process.
Once you have confirmed that a process is truly a runaway, you can use the Terminate button
to kill the process.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 30
Forms Sessions

Forms Sessions
(N) Site Map > Monitoring (T) > Forms Sessions (under Performance or Current Activity)
This page shows information on the current forms sessions. Every open form has its own
database session, or "Forms session." The profile option "Sign-On:Audit Level" should be set
to 'Form' to use this feature. If this profile option is not set to 'Form', the Forms Sessions table
will show an empty table even when there are active forms sessions.
The following data is shown for each session:
• Form Name
• AUDSID - The auditing session ID. Click on the value to drill down to the Database
Session information page.
• RTI_PID - The runtime instance process ID. Click on the value to drill down to the Forms
Sessions for Process ID page.
• Username
• Responsibility
• Application

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 31
• LRs (Session Logical Reads) - Input/output (I/O) is one of the most expensive operations
in a database system. SQL statements that are I/O-intensive can monopolize memory and
disk use and cause other database operations to compete for these resources. To prevent
single sources of excessive I/O, Oracle lets you limit the logical data block reads per call
and per session. Logical data block reads include data block reads from both memory and
disk. The limits are set and measured in number of block reads performed by a call or
during a session.
• PRs (Physical Reads) - The total number of data blocks read from the disk for the session.
• CPU
• PGA (Session Program Global Area memory) - The PGA is a memory buffer that contains
• data and control information for a server process. A PGA is created by Oracle when
• a server process is started. The information in a PGA depends on the configuration
• of Oracle.
• UGA - User Global Area memory used by the session.
• Duration - in HH:MM:SS
Click on the Session Details button or the AUDSID to view database information for the
selected forms session.
Use the Diagnostics ON/OFF button to turn on or off the Forms Runtime Diagnostics (FRD)
for the runtime process.
Forms Sessions for Process ID
If you click on the RTI_PID from the Forms Sessions page, or if you click on the PID from the
Forms Runtime Processes page, you will see the fields described above as well as the
following data for the Process ID:
• Client IP Address
• Server Host Name
• CPU Time
• Memory Usage (KB)
• Diagnostics (On/Off)
• Log File Name

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 32
Forms Runtime Processes

Forms Runtime Processes


(N) Site Map > Monitoring (T) > Forms Runtime Processes (under Performance or Current
Activity)
This page shows information about Forms runtime processes. You must first register and start
a service instance of the OAM Generic Collection Service to collect this information. The
Generic Collection Service must be running for the information to be collected.
The following columns are shown for each session:
• PID - The ID of the runtime process for the user session. Click this value to drill down to
the Forms Sessions for Process ID page.
• Node
• Port - The Apache port of the servlet listener, if any.
• Memory (KB) - The memory used by the runtime process in kilobytes. For HP and AIX
platforms, this is the virtual memory size. For all other platforms, this is the resident set
size.
• CPU
• Duration

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 33
• Client IP Address - The IP address of the client machine used to connect to the Forms
Services.
• Username - The database username used by the Forms application for the user session.
• Diagnostics - On/Off
• Last Update Time
Click on the Sessions button or click on the PID to view the Forms Sessions for Process ID
page.
This page also shows the runtime processes from the Forms Servlet Listener, if any. The Port
column for such processes indicates the Apache Listener port.
Forms Listener versus Forms Listener Servlet
The Forms Listener is a process running on a specific port on the server machine. When the
connection between the client and the Forms runtime process is established, the client and the
runtime process requires that the connection be persistent.
The Forms Listener Servlet is a Java servlet running in a servlet engine. The Web server routes
the client requests for the Forms Listener Servlet directly to the servlet instance. Because the
web server acts like the end point for the client, the other server machines and ports are no
longer exposed to the firewall.
In the Forms Runtime Processes page, the node name and the port are shown for each runtime
process. You can distinguish between the Forms Listener process and Forms Listener Servlet
process by examining the port numbers. For the Forms Listener process, the port is the Forms
server machine port. For the Forms Listener Servlet process, the port is the web server port.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 34
Host Management

Host Management
(N) Site Map > Administration (T) > Hosts (under System Configuration)
Oracle Applications Manager provides a list of host machines that are employed by the
Applications and Database Tiers of the E-Business Suite system. For each host, you can view
the host status, and you can drill down to see the status of the individual E-Business Suite
processes on that host. You can also view the E-Business Suite configuration details for that
specific host, including the installed server types, and port allocations.
Oracle Applications Manager allows you to change the state of a given host to make that host
available or unavailable to Generic Service Management (GSM). Under GSM, the Internal
Concurrent Manager manages the various service processes across multiple hosts. If you need
to take a host down for maintenance, you can first mark that host as “offline” in OAM, which
will ensure that concurrent mangers and other service processes are migrated to a secondary
node as appropriate. Later, when you set the node back to “online”, the processes will be
migrated back.
The new host-oriented interfaces allow you to track more easily which service processes are
running on which hosts, and you can more easily identify the services that would be affected
by a planned or unplanned outage for the host. For planned outages, OAM enables you to

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 35
prevent Generic Service Management processes such as concurrent managers from running on
an offline host without reconfiguring the service definitions.
The Hosts page lists all the hosts that are running components of your Applications and
Database tiers. For each host, the current state and status is given. The status indicates
whether or not the host and the E-Business Suite system processes for that host are up and
running.
The Applications Processes tab of the Host Status page lists the individual Generic Service
Management processes that are running on that host. In most cases, you are also able to see the
database session AUDSID associated with the process. You can drill down on the Application
tier process ID to view more information about the process and obtain the log file for the
process. You can drill down on the database session AUDISD to find session statistics,
current SQL, and control SQL tracing for the database session.
You can update the the state to one of three values. A state of “Online” means that Generic
Service Management processes such as concurrent managers are able to run on the host. If
you want to make the host unavailable to Generic Service Management temporarily, then you
can change the state to “Offline”. You can later change the state back from “Offline” to
“Online”. The third state, called “Disabled” is used to remove a host from use by the system.
The primary difference between “Disabled” and “Offline” is that a disabled host will be
removed from many system management views and status checks. A disabled host is no
longer considered to be part of the system, whereas an offline host is considered to be a
temporarily unavailable part of the system.
From the Hosts page, you can drill down to a more detailed view of the status of a given host,
or to a configuration summary for a host.
The Applications Services tab on the host status page shows a summary of the E-Business
Suite services on the host. This summary is rolled up by server type. For each service type
shown you can drill down to a more detailed view of individual services, and also the the pages
where you can control services running under Generic Service Management.
The Applications Processes tab on the host status page lists the individual Generic Service
Management processes that are running on that host. In most cases, you will also be able to
see the database session AUDSID associated with the process. You can drill down on the
Application tier process ID to view more information about the process and obtain the log file
for the process. You can drill down on the database session AUDISD to find session statistics,
current SQL, and control SQL tracing for the database session.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 36
Host Management - Status

Host Management - Status


The Applications Services tab on the host status page shows a summary of the E-Business
Suite services on the host. This summary is rolled up by server type. For each service type
shown you can drill down to a more detailed view of individual services, and also the the pages
where you can control services running under Generic Service Management.
The Applications Processes tab on the host status page lists the individual Generic Service
Management processes that are running on that host. In most cases, you will also be able to
see the database session AUDSID associated with the process. You can drill down on the
Application tier process ID to view more information about the process and obtain the log file
for the process. You can drill down on the database session AUDISD to find session statistics,
current SQL, and control SQL tracing for the database session.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 37
Host Management - Configuration

Host Management - Configuration


The configuration summary shows the different server types installed on that host. These
include Database, Administration, Concurrent Processing, Forms, and Web. The page also
shows a summary of the ports in use by the E-Business Suite on that host. You can press the
Edit Configuration button to edit the AutoConfig parameters for this host.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 38
Setting Up Oracle Applications Manager

Setting Up Oracle Applications Manager


Many of the features described in this chapter require special setup. Use the OAM Setup
global link to navigate to the OAM Setup pages.
• Dashboard Setup – Enable and set up the frequency and thresholds of metric collections
for the Dashboard. Enable alerts for the status of services.
• OracleMetaLink Credentials – Define your credentials for accessing OracleMetaLink.
• Business Flows – Update or view business flows, either seeded or custom.
• Knowledge Base – Use this page to retrieve documents from OracleMetaLink.
• Concurrent Requests – Use this page to set up alerts for concurrent requests, such as long-
running requests or pending requests.
In addition, the Signon Audit Setup page is used to enable Signon Audit.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 39
Dashboard Configuration and Alerting Setup

Dashboard Configuration and Alerting Setup


The metrics shown in the Applications Dashboard are periodically collected by a concurrent
program called the “OAM Dashboard Collection Program” (short name FNDOAMCOL). The
periodic collection of data allows the Applications Dashboard to show automatically important
system metrics. You can control the frequency of the collections as well as enable or disable
the collection of individual metrics.
You can also configure alerts to trigger when potential system issues arise. You can be notified
of services that are found to be in a specific status, or metrics that have met conditions that you
specify.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 40
Setting Up Dashboard Configuration and Alerting

Dashboard Setup
(N) Setup > Dashboard Setup > Update (B)
The landing page from the Setup is the Dashboard Setup page. View the current collection and
alerting settings here. To update these, click on the Update button.
OAM Dashboard Collection Interval
Specify how frequently the collection program should be run.
Metrics Setup
Enable or disable the collection of individual metrics by checking or un-checking the box in
the “Enable Collections” column.
- If you would like to enable alerts for a given metric, check the appropriate box in the
“Enable Alerts” column.
- To set the alert condition, you can choose either “less than”, “equal to”, or “greater
than” from the “Threshold Operator” column, and then enter the desired value in the
“Threshold Value” column. Click on the Next button to move to the configuration of
monitoring services.
Service Monitoring

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 41
To enable monitoring for any specific service, check the appropriate box in the “Enable
Collection” column.
You can set up alerts for a given service by checking the “Enable Alerts” box, and then
choosing the status that you want in the “Threshold Value” column.
Alert Notification
Alerts flag events that may need your attention.
The OAM Dashboard Overview tab has a System Alerts region, from which you can drill
down to see any new or open alerts (types of alerts) or occurrences of alerts.
Notifications of alerts can be sent out to users via the “Notifications Setup” button on the
System Alerts page.
For metrics that are displayed in the OAM Dashboard, when metric exceeds a threshold that
you have set, a warning icon will appear next to that metric’s value.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 42
OracleMetaLink Credentials Setup

OracleMetaLink Credentials Setup


(N) Setup (B) > MetaLink Credentials
You can access OracleMetaLink documents through links in Oracle Applications Manager. For
example, key security-related documents are linked from the Security tab in the Applications
Dashboard.
To set up your credentials for OracleMetalink, from the Setup page, navigate to the Update
MetaLink Credentials page and enter in your OracleMetaLink user ID, password, and e-mail
address.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 43
Knowledge Base Setup

Knowledge Base Setup


(N) Setup (B) > Knowledge Base Setup
Use this page to submit a concurrent request for the Knowledge Base Catalog Refresher
program to retrieve the latest documents from OracleMetaLink (You must have entered in your
OracleMetaLink credentials first).

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 44
Concurrent Requests Setup

Concurrent Requests Setup


From this page you can enable alerting for concurrent requests that have been running or
pending for a long time. You can specify the thresholds for which request must reach before
alerts are raised.
Specifically, you can enable the system to do the following:
• Raise a general alert for any long-running requests, for any concurrent program.
• Raise an alert for a long-running request for a specific program.
• Raise a general alert for any requests that have been pending for a long time, for any
concurrent program.
• Raise an alert for a request for a specific program that has been pending for a long time.
• Raise an alert for a request that has waited longer than a specified time after its requested
start time.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 45
Signon Audit Setup

Signon Audit Setup


Use this page to enable Signon Audit. Select the “Enable Auditing” button to set the Sign-On:
Audit Level profile option to ‘FORM’. Selecting the “Disable Auditing” button sets the Sign-
On: Audit Level profile option to ‘NONE’.
Use the “Enable Alerting”/”Disable Alerting” buttons to turn on/off alerting if the Sign-On:
Audit Level profile option is set to something other than ‘FORM’.

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 46
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 47
Copyright © Oracle Corporation, 2007. All rights reserved.

System Monitoring in Oracle Applications Manager


Chapter 11 - Page 48
Diagnostics and
Troubleshooting with Oracle
Applications Manager
Chapter 12

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 2
Oracle Applications Manager - Diagnostics and Troubleshooting

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 3
Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 4
Diagnostics and Troubleshooting in Oracle Applications Manager

Introduction
Oracle Applications Manager provides features to help you diagnose and resolve system issues.
Oracle Applications Manager integrates with Oracle Diagnostics to provide access to a large
library of diagnostic tests for system technologies, E-Business Suite products, and business
flows.
Oracle Applications Manager also controls Oracle Applications Logging. When issues arise
on your system, you can configure logging to write varying levels of diagnostic information for
specific components into a central repository. Oracle Applications Manager allows you to
view and manage the information logged into this repository.
If you encounter a problem in the system, you can first try to diagnose the problem using
Oracle Diagnostics. Then you can try to correct the problem using the Troubleshooting
Wizards.
Also, if you are unable to diagnose and resolve problems yourself, then Oracle Applications
Manager makes it easier for you to communicate with Support. The Support Cart has been
improved to provide automated collections of the data that Oracle Support requires for
resolving issues.

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 5
For more information on Oracle Diagnostics and Oracle Applications Logging, see the Oracle
Applications Supportability Guide.

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 6
Applications Dashboard - Diagnostics

Applications Dashboard Diagnostics


(N) Applications Dashboard > Diagnostics (T)
The OAM Applications Dashboard Diagnostics tab provides a summary of the diagnostic tests
that have been run on the environment. From this page, you can:
• View results from executed tests
• Run Troubleshooting Wizards
• Schedule requests to run tests, and view such requests
• Configure Diagnostics
- Register applications with Oracle Diagnostics (through Diagnostics Setup)
- Manage users and roles with access to Oracle Diagnostics (through Diagnostics
Configuration)
- View Diagnostics reports
Oracle Diagnostics enables the creation and execution of diagnostic tests. With Oracle
Diagnostics, you can execute tests to help prevent and troubleshoot problems. You can create
your own diagnostic tests. You can be alerted automatically when problems occur through

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 7
Oracle Diagnostics. For more information on Oracle Diagnostics, see the Oracle Applications
Supportability Guide.

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 8
Troubleshooting Wizards

Troubleshooting Wizards
(N) Applications Dashboard > Diagnostics (T) > [links under Troubleshooting Wizards region]
Troubleshooting Wizards are available for the following:
• Concurrent Manager Recovery - Use this wizard when the Internal Concurrent Manager
fails to start.
• Service Infrastructure - Using the Service Infrastructure diagnostic wizard, you can
examine existing Generic Service Management data to determine potential problems, and
update the data to eliminate the issues. An example of a potential problem is an active
node without a service manager.
• GCS and Forms Monitoring - The GCS and Forms Monitoring wizard helps you
troubleshoot the OAM Generic Collection Service. The GCS, or Generic Collection
Service, is a service managed by Generic Service Management. It performs file
uploading, signaling, purging, and other management tasks for other service runtime
processes such as the Forms Listener runtime process.
• CP Signature - This wizard collects information regarding the current status of concurrent
processing on the system.

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 9
• Dashboard Collection - The OAM Applications Dashboard Collection program gathers
information on the system that is displayed on the Dashboard under the Overview and the
Performance tabs. This wizard provides a summary of the information regarding its data
collection.

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 10
Concurrent Manager Recovery Wizard

Concurrent Manager Recovery


Use this wizard when the Internal Concurrent Manager fails to start. This wizard walks you
through several steps that must be completed before restarting the Internal Concurrent
Manager.
• Active Managers with a Database Session - these managers must be stopped before
restarting the Internal Concurrent Manager. You may want to wait for any running
requests to complete first.
• Managers Deemed Active but without a Database Session - Any processes listed here
must be terminated before continuing. Because these processes have lost their database
sessions, they must be manually terminated from the command line. Refer to your
operating system documentation for instructions on terminating a process from the
command line.
• Reset Conflict Resolution - This step lists requests that are waiting for conflict resolution.
Click the Reset button to reset the listed requests for conflict resolution. This action
changes requests that are in a Pending/Normal phase and status to Pending/Standby. Click
the Refresh icon to verify that all requests have been reset.

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 11
• Requests that are Orphaned - This page lists the requests that do not have a manager. If
any requests have Active Sessions listed, drill down on the session ID and terminate the
session from the Database Session Details screen. Return to the Concurrent Manager
Recovery screen and click the Refresh icon to verify that the session is no longer active.
After you have completed the steps for the above conditions, a summary page is shown listing
the information collected from them. After reaching this page, you should be able to restart
your Internal Concurrent Manager.

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 12
Service Infrastructure Wizard

Service Infrastructure
This wizard will list the potential issues with your Generic Service Management setup,
including:
• Active nodes without a service manager
• Active Concurrent Processing nodes without an Internal Monitor
• Service managers without active nodes
• Active nodes with inactive service managers
• Enabled service instances without workshifts
• Nodes that do not have names in uppercase (for service instances)
• Nodes that do not have names in uppercase (for processes)

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 13
Generic Collection Service (GCS) and Forms Monitoring Wizard

Generic Collection Service (GCS) and Forms Monitoring Wizard


This wizard helps you troubleshoot the OAM Generic Collection Service. The OAM Generic
Collection Service is managed by Generic Service Management and performs file uploading,
signaling, purging, and other management tasks for other service runtime processes such as the
Forms Listener runtime process.
The Internal Concurrent Manager must be up and running before this wizard can be run.
The steps within this wizard are:
• If necessary, register the OAM Generic Collection Service on all listed nodes.
• If necessary, enable the OAM Generic Collection Service on all listed nodes.
• If necessary, activate the OAM Generic Collection Service on all listed nodes.
• View the registration of the Forms Listener.
• If necessary, enable the Forms Listener on all listed nodes.
• If necessary, set the Sign-On Audit level to "FORM".
• View a Summary page where you can view a log file and add files to the Support Cart if
necessary.

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 14
CP Signature

CP Signature Wizard
The CP Signature wizard collects technical information on Concurrent Processing. This
information is what is most commonly requested by Oracle support analysts, and includes
items such as important configuration settings, code levels, and log files.
This wizard collects information on the following:
• Configuration status for Parallel Concurrent Processing, Real Application Clusters, and
Generic Service Management
• Registered nodes
• Concurrent processing package versions
• Concurrent processing package errors
• Concurrent processing profile options
• Service instances that could be managed by concurrent processing
• Concurrent processing processes
• Request processing manager specialization rules
• Request Conflict Resolution
• Concurrent request processing statistics
Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 15
• Recent requests to run the Purge Concurrent Request and/or Manager Data program
Each step of the Wizard collects a specific set of information listed above. At each step, you
have the option of adding the information to the Support Cart. However, you may want to
wait until the end of the wizard to do so, because at the end you will be presented with a
summary page that shows all of the collected information from all steps, which you can add to
Support Cart all at once. Also note, that you can skip to the summary early by pressing the
Finish button. However, the Summary will only contain the information collected by the steps
that you have executed so far. So, unless told otherwise by Support, you should progress
through every step using the Next button.

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 16
Dashboard Collection Wizard

Dashboard Collection Wizard


This wizard collects relevant data concerning the OAM Applications Dashboard Collection
program. Oracle Applications Manager uses this concurrent program to gather the information
displayed on the Applications Dashboard. This wizard collects information regarding the data
collected by this program, including:
• Request statistics for the program; for example, how often the Dashboard Collection
program is schedule to run.
• Program definition.
• Related profile options, if any.
• Version information on any Applications Dashboard-related files.
• Version information of any Applications Dashboard-related packages.
• Information on the live database sessions for the Dashboard Collection program, if any.
• Metrics setup information.
• Service instances setup information.

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 17
Support Cart

Support Cart
The Support Cart feature allows you to save Oracle Applications Manager pages with their
data and then zip them up in a file to send to Oracle Support. Oracle Support can then view
your pages in the Oracle Applications Manager display format.
When you click the Add to Support Cart global button, the page is added to the Support Cart.
If you have filtered or sorted the data, your manipulated view is submitted. To view the
contents of the Support Cart, click the Support Cart global button.
Description
You can enter in a TAR number and description of the issue here.
Applications Signature
The Support Cart can collect a standard set of information regarding your E-Business Suite
system. Oracle Support requires this information when logging a technical assistance request
(TAR).
To collect this information, click Collect.
The set of information collected includes:

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 18
• Product Information – For each product, the version, current patch level, and status (for
example, “Installed”) is shown.
• Database parameters – The init.ora parameter settings.
• Patches – For each individual patch applied, the patch number, type (for example, “Patch
Set” or “Maintenance Pack”), and application timestamp is shown.
• Topology - This page includes data about all the nodes of the applications infrastructure.
For each node, the system collects information about the operating system and the
different services running on that node.
• Database version
You can specify to include or exclude output and log files for specific nodes as well.
Other Information Collected
Pages that you save using the Add to Support Cart button are listed under this tab.

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 19
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Diagnostics and Troubleshooting with Oracle Applications Manager


Chapter 12 - Page 20
Managing Concurrent
Programs and Reports
Chapter 13

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 2
Managing Concurrent Requests

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 3
Objectives

Lesson Aim
An important area of security involves controlling access to reports and other concurrent
programs. This level of security is provided by request group definitions. This lesson shows
how the system administrator creates and uses these request groups.
Request sets are similar to request groups in that they are both collections of programs along
with their parameters and options. Request sets can be created by users, but they are still
managed by the system administrator.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 4
Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 5
Concurrent Requests, Programs, and Managers

Concurrent Requests, Programs, and Managers


Concurrent processing allows long-running, data-intensive programs to run simultaneously
with online operations.
• Oracle Applications programs can run concurrently with each other as well as with other
programs; they are referred to as concurrent programs.
• Requests to run Oracle Applications programs—for example, to run an Oracle General
Ledger report—are concurrent requests. Each concurrent request inserts a row into a
database table maintained by the Oracle Application Object Library.
• Concurrent managers read requests from the requests table and start concurrent programs.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 6
Business Needs for Concurrent Processing

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 7
Business Needs for Standard Request Submission

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 8
Definitions

Concurrent Processing Definitions


Concurrent Request
A concurrent request is a request that you submit to run a concurrent program as a concurrent
process. You issue a concurrent request when you submit a report or program to run using
Standard Request Submission (SRS) or when you click an action button in a product-specific
submission window.
Concurrent Manager
A concurrent manager is a component of concurrent processing that monitors and runs
requests without tying up your computer.
Request Set
A request set is a collection of reports or programs that you group together. You submit the
reports or programs in a request set all at once, using one transaction.
Stage
A stage is a component of a request set used to group requests within the set. All requests in a
stage are run in parallel, while the stages themselves are run sequentially in the request set.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 9
Definitions

Concurrent Processing Definitions (continued)


Parameter
In SRS, a parameter is a report variable whose value you can change each time you run a
report. For example, you might run an account balance report and change the account number
whenever you run the report. The account number is the parameter for the report.
Concurrent Processing Options
You can control and change certain run options for each of your concurrent requests. Not only
can you control and change the number of copies to print, which print style to use, and which
printer to use, but you can also choose to hold a request from being run, choose a specific date
or time to start a request, or choose to save the results of your concurrent request in a standard
file format.
Online Request Review
You can review the output and log files from your concurrent requests online. You can see the
results of a concurrent request without the delay of printing out the entire report or log file.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 10
Submit Request Flow

Using Standard Request Submission (SRS)


Using Standard Request Submission gives you control over how you can run your requests and
request sets.
• There are three elements involved in submitting a request: selecting the request or request
set to be submitted, defining a submission schedule, and providing completion options.
• Defining a schedule can be as simple as submitting As Soon as Possible, or it can involve
using a more complex schedule that you define when you first submit your request. This
schedule can then be used for other requests in the future.
• Completion options enable you to deliver notification to others using Oracle Workflow, as
well as specifying which printers and how many copies of the output you want to produce
for each request.
• You can submit as many requests as you like from the Submit Request window. You can
even submit a request more than once if you want to run the same request with different
parameter values.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 11
Submit a New Request

Submit a New Request


(N) Requests > Run
The responsibility you are using determines the request group and the requests that will appear
in the list of available requests.
Note: Requests can also be run within Oracle Application Framework; for example, navigate
to System Administration responsibility > Schedule Requests.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 12
Using the Parameters Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 13
Defining a Submission Schedule

Submitting Requests
(N) Concurrent > Requests > Submit a New Request > (B) Schedule...
The Schedule Window
The scheduling window provides you with several scheduling options. You can choose to reuse
a schedule you previously defined and saved, or define a new schedule. You can define your
schedule to run a request as soon as possible, at a specific time, or repeatedly at specific
intervals, or on specific days of the week or month.
When saving your schedule you must provide a unique name. You can also provide additional
information in the Description field.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 14
Defining a Submission Schedule

Define Submission Schedule (continued)


(N) Concurrent > Requests > Submit a New Request > (B) Schedule...

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 15
Defining Completion Options

Submitting Requests
(N) Concurrent > Requests > Submit a New Request > (B) OK > (B) Options...

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 16
Request ID

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 17
Reprinting a Report

Reprinting a Report
The Find Requests Window appears when you navigate to (N) Requests > View.
Note: The Profile Option Concurrent:Save Output must be set to Yes.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 18
Use the Requests Window to View and Change Requests

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 19
How to Use the Requests Window

How to Use the Requests Window


Display the Find Requests window by navigating to (N) Requests > View.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 20
Using the Requests Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 21
Using the Requests Window

Using the Requests Window


In order to use the View Output button, your program must have paper output. If the report file
format you selected for your request has multiple MIME types associated with it, clicking the
View Output button will display a window prompting you to select the MIME type you wish to
use to view your output.
For more information on associating file formats with MIME types see:
(Help) Applied Technology > Oracle Applications System Administration > Maintenance >
Managing Concurrent Processing and Concurrent Programs > How to View Request Status and
Output > Defining the Reports Viewer

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 22
Viewer Options Window

Use the Viewer Options Window to Define MIME Types


(N) Install > Viewer Options
You can use one MIME type to view reports of a certain format. For example, you can view all
text format reports in Microsoft Word. MIME types for supported formats for a particular user
are set by several profile options. Seeded MIME types are:
• Viewer: Application for HTML
• Viewer: Application for PCL
• Viewer: Application for PDF
• Viewer: Application for PostScript
• Viewer: Application for Text
• Viewer: Application for XML
The MIME type selected for a user’s report is sent to a browser window when the user views a
report of that file format.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 23
Canceling a Request

Canceling a Request That Has Not Yet Completed


(N) Requests > View (B) Find
If you cancel a request set, then Oracle Applications automatically cancels all requests in the
set.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 24
Holding a Request

Holding a Request That Has Not Started Running


(N) Requests > View (B) Find
Only requests that have not started running can be put on hold.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 25
Changing Request Options

Changing Request Option


(N) Requests > View (B) Find
Note: You can change the following only if the request or request set is Pending or
Scheduled:
- Start Date and Time
- Printer and number of copies
- Save output
- Resubmission options

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 26
Four Phases of a Concurrent Request

Four Phases of a Concurrent Request


The system administrator must periodically review the status of Oracle Applications programs
to determine a particular request’s status in its lifecycle. A concurrent request has a lifecycle of
either three or possibly four phases:
• Pending: The request is waiting to be run.
• Running: The request is running.
• Completed: The request has finished execution.
• Inactive: The request cannot yet be run.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 27
Pending Phase

Pending Phase
A program in the Pending phase can be in one of four statuses:
• Normal: The program is waiting for an available manager.
• Waiting: A child program is waiting for a parent to mark it ready to run.
• Standby: A program is waiting for another incompatible program in the same logical
database to complete.
• Scheduled: A program’s scheduled start time has not yet elapsed.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 28
Running Phase

Running Phase
A program in the Running phase can be in one of four statuses:
• Normal: Program is in progress.
• Paused: A parent program is waiting for one or more child programs to complete.
• Resuming: A parent program is continuing after the completion of one or more child
programs.
• Terminating: The program is being terminated.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 29
Completed Phase

Completed Phase
A program in the Completed phase can be in one of five statuses:
• Normal: Program completed successfully.
• Warning: Program completed successfully but with warning messages.
• Error: Program failed to complete successfully.
• Terminated: A running program was terminated.
• Canceled: A pending or inactive program was canceled before it started.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 30
Inactive Phase

Inactive Phase
A program in the Inactive phase can be in one of three statuses:
• Disabled: The requested program has not been enabled for execution.
• On Hold: The requested program has been placed on hold.
• No Manager: There is no manager defined to run this type of request.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 31
System Administrator Monitoring Privileges

Monitoring Privileges of the System Administrator


The system administrator’s privileges extend beyond those of the end user. The system
administrator can perform all the operations shown on the slide. However, the system
administrator cannot view the actual output of another user’s report.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 32
Review Log Files

Log File Descriptions


Request Log: When a user submits a request in Oracle Applications, a concurrent manager
processes the request and creates a diagnostic log file. Request Log files document the
execution of a concurrent program running as the result of a concurrent request. The file
contains the program parameters, the start and completion times, and any error messages. Both
the user and the system administrator can access this file.
Manager Log: Manager Log files document the performance of a concurrent manager that is
running a request. The Manager Log lists each request processed by this manager in
descending order by start date and time. This file is accessible by both the user and the system
administrator.
Internal Manager Log File: This file documents the performance of the Internal Concurrent
Manager. It displays parameter values that are loaded when the Internal Concurrent Manager is
started (STARTMGR command) and records the time that each concurrent manager is started
and when each process monitor session (or PMON) cycle is initiated. During each PMON
cycle, the Internal Concurrent Manager verifies the correct operation of each defined
concurrent manager. Only the System Administrator can access the Internal Concurrent
Manager Log file.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 33
Managing Log Files and Tables

Managing Log Files and Tables


Purging Log Data: Eventually the tables holding log information consume disk space with
data that may no longer be of use to you. To conserve disk space, you should periodically
delete Oracle Applications log files and output files. Your company’s MIS department and
application users should agree on an archiving and file retention policy appropriate for your
organization.
Use the Purge Concurrent Request and/or Manager Data program to purge Request Log files,
Concurrent Manager Log files, and report output files from your product directories maintained
by the operating system, as well as records from Application Object Library tables that contain
history information about concurrent requests and concurrent manager processes.
Scheduling Purge Submissions: Run the Purge Concurrent Request and/or Manager Data
program once and automatically resubmit the program to run at specific time intervals. Use the
Parameters window to specify various criteria with which you can control the timing and
frequency of program execution.
Loss of Audit Data: Be aware that purging concurrent request information loses audit details
used by the Sign-on Audit Concurrent Requests Report.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 34
Purge Request Results

Results of Purge Requests


The slide shows the database tables and the operating system files affected by a purge request.
On the Parameters form of the Purge Concurrent request and/or Manager Data program, you
can specify that either request data (Entity=Request) or manager data (Entity=Manager) be
purged. The slide shows the effects of the different requests.
Database Table Descriptions
• FND_CONC_REQUEST_ARGUMENTS: This table records arguments passed by the
concurrent manager to each program it starts running.
• FND_RUN_REQUESTS: For submitted report sets, this table stores information about the
reports in the report set and the parameter values for each report.
• FND_CONCURRENT_REQUESTS: This table contains a complete history of all
concurrent requests.
• FND_DUAL: This table records when requests do not update database tables.
• FND_CONCURRENT_PROCESSES: This table records information about Oracle
Applications and operating system processes.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 35
Grouping Concurrent Programs and Requests

Grouping Concurrent Programs and Requests


Grouping concurrent programs and other requests together allows you to control access and
streamline processing. In Oracle Applications, you group programs and requests into request
groups and request sets.
Request Groups
A request group is a collection of reports and other concurrent programs. You use request
groups to implement security at the responsibility level. Request groups are normally
associated with a responsibility, in which case they are referred to as request security groups.
Any user of a responsibility has access to the reports in that responsibility’s request security
group.
Additionally, you can define a request group to have an access code. You can then define the
form so that it allows users to select only those reports or concurrent programs belonging to a
request group with an assigned code.
Request Sets
A request set is a collection of concurrent programs set up to run in a specified sequence from
a single transaction. Request sets can also have run and/or print options, which apply to every

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 36
member of the set. Programs in a request set can share parameters; therefore a parameter value
needs to be entered only once for multiple programs. Any user can create a request set.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 37
Creating a Request Group

Request Group Creation


(N) Security > Responsibility > Request
An application name is required when defining the request set. This application name and the
request group name uniquely identify this request set. The application name does not prevent
you from assigning reports and report sets from other applications to this group.
For more information see:
(Help) Applied Technology > Oracle Applications System Administration > Configuration >
Overview of Concurrent Programs and Requests > Request Groups Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 38
Using a Request Group with a Code

The code must not contain any spaces. The combination of the application and the code
identify the request group.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 39
Submitting Requests: Form Compared with Responsibility

Submitting Requests: Form Versus Responsibility


The request processing is different depending on whether you are using a normal request group
or a coded request group.
Responsibility-Based Access
This is the typical way a user submits a report. The menu prompt Run does not pass any
arguments to the Submit Requests form when the prompt is chosen.
The list of values includes all the programs in the responsibility’s request security group.
Form-Based Access
This type of access uses a coded request group. In this method, when a modified menu prompt
is chosen, it calls a form function to pass an argument (the code) to the Submit Requests form.
The only programs displayed in the Submit Requests list of values are those defined to the
coded request group.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 40
Implementing a Coded Request Group

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 41
Customization Example

Customization Example
The slide shows the values that are used in the following example.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 42
Creating the New Form Function

Creating the Form Function


(N) Application > Function
Type is a non-validated field used to enter a description of the function’s use.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 43
Passable Request Parameters

Passable Request Parameters


The slide shows the parameters you can pass in your new function. Several of the parameters
are paired; these parameters must be used together. Remember that when the request group was
created, it was associated with an application. You must pass both the code and the short name
of the application for the system to identify the correct request group.
For a complete explanation of these parameters, see:
(Help) Applied Technology > Oracle Applications System Administration > Configuration >
Overview of Concurrent Programs and Requests >
Organizing Programs into Request Groups >
Customizing the Submit Requests Window,
Customizing the Submit Requests Window using Codes

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 44
Adding the Function to the Menu

(N) Application > Menu

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 45
Defining a Request Set

Defining Request Sets


By defining request sets, you can submit the same set of requests regularly with a single
transaction. Use the Request Set window to create and edit request sets. You can also use the
Request Set Wizard to create simple request sets.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 46
Request Set Stages

Organizing Requests with Stages


Request sets are divided into one or more stages, which are linked to determine the sequence in
which the requests will run. Each stage consists of one or more requests that you want to run in
parallel (at the same time in any order). For example, in the simplest request set structure, all
requests are assigned to one stage thus allowing all requests to run in parallel.
To run requests in sequence, assign requests to different stages and then link the stages in the
order you want the requests to run.
The concurrent manager allows only one stage in a request to run at a time. When one stage is
complete, the next stage is submitted. A stage is not considered complete until all of the
requests in the stage are complete. One advantage of using stages is the ability to run several
requests in parallel and then move sequentially to the next stage, thus enabling you to create
more versatile and efficient request sets.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 47
Stage Status

Using Stage Status


Like request sets and concurrent requests, stages can complete with different statuses. Each
stage can complete with a status of Success, Warning, or Error. You can use these completion
statuses to structure your request set by defining which stage will follow the current stage
based on its completion status.
The request set in the slide always starts with Stage 1. If Stage 1 were to complete with the
status of Warning, then the Warning link would be followed and Stage 3 would be submitted.
The status of a completed stage is set according to the highest error status returned by the
individual requests comprising the stage. Therefore, in order for the stage to complete with a
status of Success, all the requests that make up the stage must have completed with a status of
Success. If one request completes with a status of Error, the status for the stage will be Error,
regardless of the statuses of the other requests.
Restarting Request Sets
If a request set stage completes with a status of Error, you can restart the request set at the
point of the error after fixing the cause of the error. In such an instance, the system captures
information on the first stage that fails. and the Restart button in the Oracle Applications

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 48
Manager - View Completed Requests page is enabled. When you click on the Restart button
the request set can restart from the point of the error.
Once the stage has been identified, the request set program submits the stage program in
resubmit mode. In this mode, the program looks at the same stage from the previous run and
determines which programs need to be rerun, (only those that ended in error), and runs those
programs. If this stage completes successfully or has a Warning status, the system proceeds to
the next stage using the normal mechanism of restarting the request set program.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 49
Linking of Stages

Linking of Stages
There are no restrictions on linking stages within a request set. Any stage can be linked to any
other stage, including itself. Two or more links can point to the same stage. For example, one
stage can link to another if the completion status of the first is Success or Warning, and link to
a third stage if the status is Error.
You determine the end of a request by not specifying a follow-up stage for each completion
status. You can end a request set after any stage in the set. When any stage completes with a
status that does not link to another stage, the request set ends.
You can use the linking of stages to control your request set. By using the Request Set Wizard
button in the Request Set window you can create the request set as follows:
• Run in Parallel – creates one stage containing all of the requests you wish to run in
parallel.
• Run Sequentially – creates a separate stage containing the request or requests for each step
in the sequence and link in the appropriate order.
• Run Sequentially but abort on Error – sets up your sequence the same as it did for Run
Sequentially, but when it links the stages, it does not enter a follow-up stage as a link in
the Error completion status field.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 50
Defining Request Sets Step 1: Enter Request Set Name

Defining A Request Set


(N) Requests > Set
The Owner field defaults to your user name and can be changed only by your system
administrator.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 51
Defining Request Sets Step 1: Enter Request Set Name

Defining A Request Set (continued)


If the current date is outside the Active Dates From and To range you define, the request set
will not be available in the Submit Requests window.
Selecting the Print Together check box will send all your requests to the printer together when
they complete.
Select the Allow Incompatibility check box to have the system check for incompatible
programs when the request set is run. If this check box is left unchecked, then incompatibility
rules will be ignored.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 52
Defining Request Sets Step 2: Define a Stage

Defining A Request Set (continued)


(N) Requests > Set > (B) Define Stages
Defining Stages
The value for the Display Sequence field is defaulted in sequence as you enter your stages.
You may change the display order of the stages by modifying the field.
The default value for the Function field is Standard Evaluation that bases its completion status
on the normal completion status of the requests it contains.
If you select the Return Value check box for more than one stage, the completion status of the
request set will equal the completion status of the last of these stages to run.
Select the Allow Incompatibility check box to have the system check for incompatible
programs when the request set is run. If this check box is left unchecked, then incompatibility
rules will be ignored.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 53
Defining Request Sets Step 3: Enter Requests for Stage

Defining Stages (continued)


(N) Requests > Set > (B) Define Stages > (B) Requests

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 54
Defining Request Sets Step 4: Enter Request Parameter

Request Parameters
((N) Requests > Set > (B) Define Stages > (B) Requests > (B) Parameters
Request Parameters Window
Use the Request Parameters window to customize the parameter values of a specific request in
a request set. The fields at the top of the Request Parameters window list general information
about the current request set for which you can customize the parameter values. The multi-row
portion of the window lists the parameters for that request.
• The Sequence and Prompt fields are display only.
• Selecting the Display check box specifies visibility of a request parameter at submission
time.
• Selecting the Modify check box to specifies you can insert or change the value for a
request parameter at submission time.
• Using the Shared Parameter field sets a default value for a parameter that occurs in more
than one report or program of a request set. Use the shared parameter label to set an initial
default value for all occurrences of the same parameter so you can avoid typing the same
value all over again for every occurrence of the parameter.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 55
Defining Request Sets Step 5: Link Stages

Linking Stages in a Request Set


(N) Requests > Set > (B) Link Stages
Success, Warning, and Error columns - To ensure a particular stage follows the preceding stage
regardless of the completion status, enter the desired stage in all three columns. To stop the
request set if a stage ends in Error, leave the Error column blank. Any time you do not
specifically indicate which stage should follow for a completion status, the request set will exit
on that completion status.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 56
Submitting a Request Set

Who Can Use a Request Set


(N) Requests > Run > (Option) Request Set > (B) OK
After you define a request set, it becomes your private request set. You can run it as long as
you have access to a standard Submit Request window that does not limit access to specific
requests.
Other users can run the request set only if your system administrator assigns the request set to
their responsibility’s request group. It is possible to have a request set in your request group
that contains individual requests not in your request group, but you can only edit request sets
you own. You can add any requests in your request group to the request set. You can delete
any request from the request set, regardless of whether that request is in your request group. To
update information about an individual request in the request set, however, the request set must
be in your request group.
Note: Request sets can also be run within Oracle Application Framework; for example,
navigate to System Administration responsibility > Request Set > Schedule.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 57
User Request Set Privileges

Request Set Privileges


You can control request set ownership to manage request set editing and run privileges.
Application User Editing Privileges
• Application users define a request set by selecting reports or other concurrent programs
from their current responsibility’s request security group.
• Application users automatically own the sets they create.
• Application users can always edit the sets they own. However, they cannot edit a request
set they do not own.
Request Sets and Request Security Groups
• After changing responsibilities, application users can add reports from their current (new)
responsibility’s request security group to a request set they own.
• After changing responsibilities, application users can delete reports from a request set they
own, regardless of whether the report is in the new responsibility’s request security group.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 58
System Administrator Request Set Privileges

System Administrator Request Set Privileges


System administrators can edit and assign ownership of any request set.
System Administrator Editing Privileges
• System administrators can define or edit a request set to include any standard submission
report or concurrent program.
• System administrators do not automatically own the request sets they define. Request sets
defined by a system administrator initially do not have an owner.
• System administrators can assign or change ownership of any request set.
• If a request set is assigned to an owner but not to the owner’s request security group as
well, the reports contained in the request set are available only to the owner.
• System administrators can edit any request set, whether the set is owned or not.
• System administrators can assign any request set to any request security group, even if the
request set contains individual reports not in the request security group. However, this
privilege provides the members of a responsibility access to reports and programs outside
their request security group.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 59
Summary

Lesson Summary
In this lesson you learned how to use request groups to control access to reports and concurrent
programs. Additionally you learned how individual users can define request sets to streamline
processing by setting default values for parameters and sharing parameter values among
multiple reports.

Copyright © Oracle Corporation, 2007. All rights reserved.

Managing Concurrent Programs and Reports


Chapter 13 - Page 60
Administering Concurrent
Managers
Chapter 14

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 2
Administering Concurrent Managers

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 3
Objectives

Lesson Aim
The Oracle Applications system administrator is the end user’s first point of contact for system
questions. The system administrator should be able to monitor the processing of requests and
deal with any problems. He or she should also be able to balance workloads to provide the
optimum processing environment for users. This lesson teaches you how to monitor and
control system processing and also how to plan and schedule your workload.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 4
Concurrent Requests, Programs, and Processes

Concurrent Requests, Programs, and Processes


When a user runs a report, a request to run the report is generated. The command to run the
report is a concurrent request. The program that generates the report is a concurrent
program. Concurrent programs are started by a concurrent manager.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 5
Overview of Concurrent Processing

Overview of Concurrent Processing


A concurrent manager is itself a concurrent program that starts other concurrent programs
running. When an application user submits a request to run a program, the request is entered
into a database table that lists all of the requests. Concurrent managers read requests from the
table and start programs running.
Part of a manager’s definition is how many operating system processes it can devote to running
requests. This number is referred to as the manager’s number of target processes.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 6
Generic Service Management (GSM)

Generic Service Management (GSM)


Generic Service Management (also called simply Service Management) provides a powerful
framework for managing processes on multiple host machines. Concurrent managers as well
as other application tier services can be managed under GSM. Managed services besides
concurrent managers include the Oracle Forms Listener, Oracle Reports Server, and the Oracle
Workflow Mailer.
With Generic Service Management, the Internal Concurrent Manager (ICM) manages the
various service processes across multiple hosts. On each host, a Service Manager acts on
behalf of the ICM, allowing the ICM to monitor and control service processes on that host.
You can then configure, monitor, and control services through the Oracle Applications
Manager console.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 7
Defining a Concurrent Manager

Defining a Concurrent Manager


Concurrent managers can be defined to process only certain types of requests and to operate
during certain times of the day.
• Scheduling Requests - You can schedule when a manager operates by defining one or
more work shifts and associating the manager with a work shift.
• Segregating Requests - You can define specialization rules to identify the kinds of
requests a manager will read. Specialize managers so they only read requests to start
certain kinds of programs.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 8
Defining a Concurrent Manager

Defining a Concurrent Manager


(N) Concurrent > Manager > Define
The Parallel Concurrent Processing Details region of this window is discussed in a later lesson.
Concurrent Managers can also be defined within Oracle Applications Manager, by navigating
to Site Map > Administration (T) > Request Processing Managers (under Application Services)
> Create New (B)

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 9
Defining Work Shifts

Defining Work Shifts


(N) Concurrent > Manager > Workshifts
A concurrent manager operates only during its specified work shift. Use military time notation
to define a work shift—that is, use 24 hours rather than 12.
Work shifts can also be defined within Oracle Applications Manager, by navigating to Site
Map > Administration (T) > Request Processing Managers (under Application Services) >
Create New (B) or Edit (B) for a selected service > Add from Available Shifts (B) > Create
New (B)

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 10
Balancing Process Workload Over Time

Balancing Process Workload


You can create multiple work shifts for a concurrent manager to regulate the number of
operating system processes the manager starts up at different times of the day and different
days of the week.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 11
Work Shift Hierarchy

Overlapping Workshifts
When work shifts overlap, the work shift with the more specific time period takes effect for the
overlapping time period. For example, a work shift for January 1 overrides a work shift from
9:00 am to 5:00 PM every Monday through Friday.
When work shifts with the same hierarchy level overlap, the work shift with the largest number
of target processes takes effect.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 12
Concurrent Managers Window: Program Libraries

Concurrent Managers
(N) Concurrent > Manager > Define
Immediate Programs and Spawned Programs
Immediate concurrent programs are C or PRO*C subroutines linked with concurrent managers.
Most concurrent programs are spawned as independent processes at run time instead of running
as subroutines. If you are defining a new concurrent program, you should run the program as a
spawned program rather than as an immediate program.
Examples of these are:
• FNDLIBR: Contains immediate concurrent programs used by Oracle Applications Object
Library.
• INVLIBR: Contains immediate concurrent programs used by Oracle Inventory.
• MFCLIBR: Contains immediate concurrent programs used by Oracle Manufacturing.
• PALIBR: Contains immediate concurrent programs used by Oracle Projects.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 13
Assigning Workshifts to a Manager

Assigning Work Shifts to a Manager


(N) Concurrent > Manager > Define > (B) Workshifts

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 14
Specializing a Concurrent Manager

Specializing a Concurrent Manager


(N) Concurrent > Manager > Specialization Rules

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 15
Specializing a Concurrent Manager: Combined Rules

Combined Rules
(N) Concurrent > Manager > Rule

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 16
Specialization Rules

Defining Specialization Rules


Use actions and qualifications to define specialization rules. An action defines a concurrent
manager’s behavior toward the request.
Include and Exclude Actions
• The manager runs included requests.
• The manager does not run excluded requests.
• Exclusion rules override inclusion rules.
Example Rules
The example rules would result in a manager’s reading requests for all programs assigned to
Oracle Purchasing except programs defined with the request type Month-End Rep.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 17
Action Types

Action Types
Use action types to specify the actions of a manager. An action type specifies the type of
request to which an action refers.
• Programs that connect to a specific Oracle Applications account (Oracle ID). For
example, you could include for processing all programs that connect to the Oracle
Payables account AP1.
• Specific programs by name. For example, you could include for processing the Oracle
General Ledger program Trial Balance-Budget. When using an action type of program,
you specify the application and the program name.
• Certain request types. For example, you could include for processing all programs
defined as a request type of Month-End Reports.
• Programs requested by certain users. For example, you could include for processing all
programs requested by the user “Operations”.
• Combined rule. A combined rule combines more than one action to generate a single
rule.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 18
Combining Multiple Actions Within Rules

Combining Multiple Actions in Rules


• Multiple include actions in a combined rule behave differently from other multiple include
actions in a specialization rule.
• A specialized include rule is associated with a specific concurrent manager. A combined
include rule is an independent rule possibly associated with multiple managers.
• Multiple specialized include rules create OR clauses, allowing more requests to be read by
the manager.
• Multiple combined include rules create AND clauses, further restricting a manager from
reading the request.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 19
Concurrent Request Types

Defining Request Types


(N) Concurrent > Program > Types

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 20
Using Request Types

How to Define and Use Request Types


There are three steps in defining and using request types:
• Identify a category of programs according to some criterion. Define a request type for
that category of programs.
• Identify a concurrent program according to the new request type.
• Use the new request type in a manager’s specialization rule.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 21
Conflicts Domains

The Purpose of Conflicts Domains


Concurrent processing resolves and imposes conflicts and constraints within a domain and not
across. That is, two incompatible programs A and B will not run concurrently when they are
submitted within the same domain. But, if A is submitted within domain D1 and B is submitted
within D2, they may run concurrently.
Defining Conflicts Domains
(N) Concurrent > Conflicts Domains
To prevent two programs from concurrently accessing or updating the same data, you have to
know where in terms of data, they are incompatible. A Conflict Domain identifies the data that
creates the incompatibility.
In Oracle Applications data is stored in database tables belonging to a particular application.
Each table may also contain information used to determine what conditions need to be met to
access the individual records. These conditions may consist of one or more of the following
data groupings:
• SOB - based on the profile option GL_SET_OF_BOOKS
• Multiple installations (referred to as MSOB)

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 22
• Multiple Operating units (determined by profile option MO_OPERATING_UNIT)
(referred to as MULTIORG)
• Multiple Orgs (determined by profile option INV_ORGANIZATION_ID, used by
Manufacturing applications)
• HR may use business group as a conflict domain
• FA may use FA book
A conflict domain is an abstract representation of the groupings used to partition your data.
There is no limit to the number of domains that can be defined, but excessive domains may
impact performance.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 23
Processing Conflicts Domains

Processing Conflict Domains


All programs are assigned a conflict domain when they are submitted. If a domain is defined as
part of a parameter the concurrent manager will use it to resolve incompatibilities. If the
domain is not defined by a parameter, the concurrent manager uses the value defined for the
profile option Concurrent: Conflicts Domain. Lastly, if the domain is not provided by a
program parameter and the Concurrent: Conflicts Domain profile option has not been defined,
the Standard domain is used. The Standard domain is the default for all requests.
Each request submitted uses parameters identifying the records it will access. For programs
defined with incompatibility rules the conflict domain parameter is used additionally. The
conflict domain may be set automatically based on such variables as logon ID, set of books, or
the organization the user is working in. The conflict domain parameter may in some cases be
selected in the parameters field of the Submit Requests form.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 24
Control Functions of Concurrent Managers

Activating and Deactivating Concurrent Managers


(N) Concurrent > Manager > Administer
You can control concurrent managers by activating or deactivating one or all of the managers.
Activate All Managers Simultaneously: When you activate the Internal Concurrent Manager,
it starts up all the concurrent managers. You can activate the Internal Concurrent Manager
from the operating system.
Deactivate All Managers Simultaneously: When you deactivate the Internal Concurrent
Manager, it shuts down all the concurrent managers. You can deactivate the Internal
Concurrent Manager from either the Administer Concurrent Managers window or the operating
system.
Activating and Deactivating Individual Managers: You can activate individual concurrent
managers by using the Administer Concurrent Managers window. The Internal Concurrent
Manager must be active for an individual manager to be active. Deactivate individual
concurrent managers by using the Administer Concurrent Managers form.
Internal Manager Control Functions
Verify Concurrent Manager Status: Manually executes the process monitoring (PMON)
cycle.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 25
Deactivate Concurrent Manager: Deactivates the Internal Concurrent Manager and all other
managers.
Terminate Requests and Deactivate Manager: All running requests running concurrent
programs) are terminated, and all managers are deactivated.
Any Other Manager Control Functions
Activate Concurrent Manager: If the manager is defined to work in the current work shift, it
starts immediately. Restart Concurrent Manager: Internal manager rereads the manager’s
definition and the rules for concurrent program incompatibilities.
Deactivate Concurrent Manager: Deactivates the manager. All requests (concurrent
programs) currently running are allowed to be completed before the manager shuts down. A
manager will not restart until you select the manager and choose Activate Concurrent Manager.
Terminate Request and Deactivate Manager: All running requests (running concurrent
programs) handled by the manager are terminated. Once deactivated a manager will not restart
until you select the manager and choose Activate Concurrent Manager.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 26
Internal Monitor and ICM

Internal Monitor Processes


You can provide fault tolerance for the Internal Concurrent Manager by using Internal Monitor
Processes.
The Internal Concurrent Manager can run on any node and can activate and deactivate
concurrent managers on the same or other nodes. Because the Internal Concurrent Manager
must be active at all times, it needs high fault tolerance. To provide this fault tolerance, parallel
concurrent processing uses Internal Monitor Processes.
The sole job of an Internal Monitor Process is to monitor the Internal Concurrent Manager and
to restart that manager if it fails. The first Internal Monitor Process to detect the failure of the
Internal Concurrent Manager restarts the Internal Concurrent Manager on its own node.
Only one Internal Monitor Process can be active on a single node. You decide which nodes
have an Internal Monitor Process when you configure your system. You can also assign each
Internal Monitor Process a primary and secondary node to ensure its protection.
Internal Monitor Processes, like concurrent managers, can have assigned work shifts and are
activated and deactivated by the Internal Concurrent Manager.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 27
Defining a Transaction Manager

Creating Custom Transaction Managers


(N) Concurrent > Manager > Define
Because forms must be precoded to submit synchronous requests, you do not usually need to
create custom transaction managers.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 28
Viewing Log and Output Files

Viewing Log and Output Files


You can review log and output files from any node, regardless of which node the concurrent
process runs on. You do not need to log on to a node to view the log and output files from
requests run on that node. The concurrent log and output files from requests that run on any
node are accessible online from any other node. This capability relies on setup steps taken at
install time. For more information, refer to the installation documentation for your platform.
• INVLIBR: Contains immediate concurrent programs used by Oracle Inventory.
• MFCLIBR: Contains immediate concurrent programs used by Oracle Manufacturing.
• PALIBR: Contains immediate concurrent programs used by Oracle Projects.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 29
Managing Parallel Concurrent Processing

Managing Parallel Concurrent Processing


You can distribute concurrent processing across multiple nodes in a cluster, massively parallel,
or homogeneous networked environment.
Benefits of Parallel Concurrent Processing
• High Performance: Processes can run on multiple nodes to improve throughput.
• Fault Tolerance: Processes can continue running on available nodes even when one or
more nodes fail.
• Adaptability: Integrate with platform-specific batch queue and load-balancing systems to
maximize concurrent processing performance on a particular platform.
• Single Point of Control: Managers can be administered from any node.
Nodes
• Each node consists of one or more processors (CPUs) and its associated memory.
• Each node has its own memory that is not shared with other nodes.
• Each node operates independently of other nodes except when sharing resources.
Nodes and Concurrent Managers

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 30
With parallel concurrent processing, one or more managers can run on one or more nodes. You
decide where concurrent managers run when configuring the system. You can define any set of
specialization rules and apply them across nodes in any way desired.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 31
Summary

Lesson Summary
In addition to controlling access to Oracle Applications, monitoring the day-to-day processing
of Oracle Applications is a very important job of the system administrator.
The system administrator is the first point of contact when users have, or suspect they have, a
problem with either the results or the processing of a request. The system administrator has
access to several application log files containing diagnostic information that can be of use in
correcting problems.
The system administrator is also responsible for balancing workload to maintain optimum
performance for users. He or she does this by creating concurrent managers to process user
requests. Managers can be specialized to operate only during certain times and to process only
certain types of requests. System administrators also monitor and control the activity of
managers in a parallel environment.

Copyright © Oracle Corporation, 2007. All rights reserved.

Administering Concurrent Managers


Chapter 14 - Page 32
Introduction to Oracle
Workflow
Chapter 15

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 2
Introduction to Oracle Workflow

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 3
Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 4
Enabling E-Business

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 5
Inter-Enterprise Business Processes

Inter-Enterprise Business Processes


In e-business, different enterprises need to communicate with each other over the Internet.
Oracle Workflow with the Business Event System can be used as part of an integration hub,
modeling business processes that span all of the enterprises involved in an end-to-end process.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 6
Traditional Workflow

Traditional Workflow
Traditional applications-based workflow processes are launched from a business application
through APIs hard-coded within the application. These processes model the business rules in
the individual local application and are made up of activities executed by the Workflow Engine
only in that application’s system. For example, the modeling of an approval hierarchy is a
common use of Oracle Workflow in this scenario.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 7
Workflow-Driven Business Processes

Workflow-Driven Business Processes


Oracle Workflow can help save time by:
• Reducing repetitive data entry tasks
• Automating approval hierarchies
• Automatically delivering notifications and reminders of work to be done
• Providing self-service monitoring capabilities

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 8
Workflow-Driven Business Processes

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 9
Sample Workflow Process

Sample Workflow Process


A workflow process consists of a sequence of activities that together make up a business flow,
expressing your organization’s policies and rules. The activities can include significant
business events, automated functions, notifications to users, or subprocesses.
This example shows a sample order processing workflow process that includes business events.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 10
Event-Based Workflow

Event-Based Workflow
With the Business Event System, Oracle Workflow supports both traditional applications-
based workflows and event-based integration workflows.
For e-business, there is a requirement to integrate with external systems, such as sending a
document to a business-to-business exchange, or other systems external to the local
application. Oracle Workflow supports e-business integration workflows by allowing business
analysts and developers to model business processes spanning different systems using a
graphical drag-and-drop designer—the Workflow Builder—and run those processes using the
Workflow Engine and the Business Event System. This support enables Oracle Workflow
customers to deal with business objects in comprehensive e-business integration flows with
minimal intrusion into the core application.
The Business Event System and the Workflow Engine can function independently of each
other. However, you can achieve the most powerful and flexible processing by using the
Business Event System and the Workflow Engine together to execute cross-system processes
for e-business integration.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 11
Subscription-Based Processing

Subscription-Based Processing
The Business Event System provides increased flexibility through subscription-based
processing: you raise a business event from an application, but specify the processing to
perform for that event as a subscription in Oracle Workflow. For example, you can launch a
workflow process when an event is raised by specifying that process in a subscription to the
event. You can also define multiple subscriptions to the same event to perform additional
processing for different purposes without intruding any further on the core application.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 12
System Integration with Oracle Workflow

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 13
Business Process-Based Integration

Business Process-Based Integration


Business process-based integration is model-driven.
• Business rules are expressed in a process model.
• These rules define the policy for each end-to-end process.
• The process model can encompass applications both within and beyond the enterprise.
Business process-based integration provides:
• A global, enterprise-level view of business objects
• Business process automation
Oracle Workflow supports business process-based integration through the Business Event
System.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 14
Supported System Integration Types

Supported System Integration Types


The types of system integration supported by Oracle Workflow are message-based. By
supporting the communication of messages between systems, Oracle Workflow lets you define
processing across different systems encompassing both your own enterprise and your business
partners. The power of this cross-system processing, together with the flexibility provided by
subscription-based processing, enables you to use Oracle Workflow for e-business integration.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 15
Designing Applications for Change

Designing Applications for Change


The benefits of good design include:
• Reduced cost of ownership through diminished development costs
• Ease of management and maintenance
• Visual documentation of business processes

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 16
Designing Applications for Change

Designing Business Processes for Change


Complete process representation:
• A workflow process can cross organizational and company boundaries to represent an
end-to-end flow.
• You can provide alternatives within a process to accommodate different situations.
• You can build management metrics and performance goals into a process.
Graphical development tool:
• The Oracle Workflow Builder separates business process definition and modeling from
code development.
• Workflow diagrams provide a visual overview of your processes.
• You can easily modify a process definition.
Ease of management and maintenance:
• Oracle Workflow lets you analyze time and costs for entire business processes.
• You can refine your process definitions according to your analysis to streamline them and
reduce time and costs.
• You can easily implement a modified process.
Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 17
• Oracle Workflow empowers process participants by giving them access to review the
progress and current status of their processes.
• Users can find the answers to many common questions themselves using these monitoring
capabilities.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 18
Designing Applications for Integration

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 19
Designing Applications for Integration

Designing Applications for Integration


Business events as integration points:
• Applications can raise business events at any point where further processing or integration
might be required.
• You can define the processing to be triggered by an event immediately after defining the
event or at any later time.
Subscription-based processing:
• Use subscriptions to specify the processing you want to perform for a business event.
• You can define multiple subscriptions to the same event to perform additional processing
for different purposes.
Web-based business event and subscription management tool:
• The Event Manager separates event subscription definition from code development.
• You can use the Event Manager web pages to define, update, or delete event subscriptions
without intruding on the core application.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 20
Oracle Workflow in Oracle E-Business Suite

Oracle Workflow in Oracle E-Business Suite


In Oracle E-Business Suite, Oracle Workflow is incorporated in applications including
Enterprise Resource Planning (ERP), Customer Relationship Management (CRM), and Human
Resources Management Systems (HRMS). Oracle Workflow is leveraged by both professional
applications, which are typically Forms-based applications for power users, and self-service
applications, which are typically HTML-based applications for more casual users.

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 21
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Introduction to Oracle Workflow


Chapter 15 - Page 22
Oracle Workflow
Components
Chapter 16

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 2
Oracle Workflow Components

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 3
Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 4
Oracle Workflow Architecture

Oracle Workflow Architecture


Development Client
The development client is a Windows PC. This tier is used to create and modify Oracle
Workflow process definitions, and to save and load flat files containing Oracle Workflow
process definitions and XML definitions for Business Event System objects.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 5
Oracle Workflow Architecture

Oracle Workflow Architecture


Oracle Database
The server tier is the Oracle Database that hosts the business application integrated with Oracle
Workflow, the Workflow Engine, Business Event System, Notification System, and directory
service. The Business Event System leverages the Advanced Queuing feature within the Oracle
Database.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 6
Oracle Workflow Architecture

Oracle Workflow Architecture


Application Server
The application server is the middle tier environment outside of the database. This environment
includes ancillary services such as Oracle HTTP Server as the Web server, and Oracle
Workflow service components that run in the middle tier, such as agent listeners and
notification mailers.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 7
Oracle Workflow Architecture

Oracle Workflow Architecture


End-User Client
The end-user client is the workstation or PC that an end user uses to perform daily tasks. This
client includes browser support for accessing Oracle Workflow Web pages, as well as for
accessing the Oracle Workflow Manager component available through Oracle Applications
Manager (OAM). The end-user client also includes a mail client application for reviewing and
responding to notifications by e-mail.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 8
Oracle Workflow Components

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 9
Workflow Engine

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 10
Workflow Processes

Workflow Processes
A workflow process definition must be saved to the same database as the Workflow Engine. A
process definition is composed of activities and the transitions between them.
• A completed application transaction or event can initiate a workflow process by raising an
event or by calling a series of Workflow Engine APIs.
• The Workflow Engine locates the “Start” activity in the process definition.
• The Workflow Engine drives through the process, performing all automated steps such as
function activities and Raise and Send event activities, until an asynchronous activity such
as a notification, Receive event activity, or blocking activity occurs.
- The Workflow Engine calls the Notification System to deliver a notification message
to an appropriate role. Once a user of that role completes the notification response,
the Workflow Engine continues to drive through the remaining activities in the
process.
- If a blocking activity is encountered, the Workflow Engine waits for an external
program to complete and call the appropriate Workflow Engine API before
proceeding to the next activity.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 11
- If a Receive event activity is encountered, the Workflow Engine waits to receive the
event from the Business Event System before proceeding to the next activity.
• The process completes when the Workflow Engine encounters an “End” activity.
Example: Order Processing
This example shows a workflow process that includes business events.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 12
Supported Process Constructs

Supported Process Constructs


The Workflow Engine supports sophisticated workflow rules to model your business logic.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 13
Supported Process Constructs

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 14
Supported Process Constructs

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 15
Supported Process Constructs

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 16
Oracle Workflow Builder

Oracle Workflow Builder


Saving workflow definitions as flat files on the local file system enables designers to back up
their work and use source control.
Navigator Tree
The navigator provides a tree structure for the workflow definition, with the highest level being
the data store. Next is the item type, which is a grouping of workflow objects into a high-level
category. The lower levels are the workflow objects themselves, such as attributes, processes,
notifications, functions, events, messages, and lookup types. All these objects are organized
into their respective categories within the tree.
Process Diagram
The diagram is made up of icons representing workflow objects. A diagram is built by
dragging the objects from the navigator window and dropping them into the process diagram
window. This method is called bottom-up design. You can also create new objects as you
design the diagram and complete the definitions of those objects later. This method is called
top-down design.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 17
Business Event System Architecture

Business Event System Architecture


The Business Event System is an application service that communicates business events
between systems. Oracle Workflow with the Business Event System can act as a system
integration messaging hub that relays business event messages among systems.
The Business Event System leverages Oracle Advanced Queuing to send messages from one
system to another.
For the greatest flexibility in routing and processing business events, you can model your
business process logic in powerful cross-system workflow processes that are executed by the
Workflow Engine. However, the Business Event System can also function independently of the
Workflow Engine.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 18
Business Event System Components

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 19
Advanced Queuing, an Enabling Technology

Advanced Queuing, an Enabling Technology


Oracle Advanced Queuing allows queue-to-queue propagation across machine boundaries.
Oracle Advanced Queuing is a feature of the Oracle Database that provides database-integrated
message queuing functionality, leveraging the functions of the Oracle Database to store
messages persistently and transmit them using various transport protocols.
Java Message Service (JMS) is a messaging standard defined by Sun Microsystems, Oracle,
IBM, and other vendors. Oracle Java Message Service (OJMS) provides a Java API for Oracle
Advanced Queuing based on the JMS standard. Oracle Workflow supports communication of
JMS Text messages through Oracle Advanced Queuing in a format called
SYS.AQ$_JMS_TEXT_MESSAGE.
Oracle Workflow also supports business event messages in a standard Workflow format called
WF_EVENT_T. You can additionally define custom message formats.
For more information, refer to the Oracle Streams Advanced Queuing User’s Guide and
Reference.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 20
Oracle Database Communication Alternatives

Oracle Database Communication Alternatives


You can use Oracle Advanced Queuing for communication by SQLNET, HTTP, and HTTPS
protocols, and for integration with third-party messaging solutions.
You can use Oracle Net Services (formerly Net8) to propagate messages by the SQLNET
protocol. Oracle Workflow supports JMS Text messages for SQLNET propagation, as well as
business event messages in a standard Workflow format called WF_EVENT_T. You can also
define custom message formats.
The Oracle Streams Advanced Queuing Internet access functionality lets you perform Oracle
Advanced Queuing operations over the Internet by using the Oracle Advanced Queuing
Internet Data Access Presentation (IDAP) for messages and transmitting the messages over the
Internet using transport protocols such as HTTP or HTTPS.
Messaging Gateway is a feature of Oracle Advanced Queuing that enables communication
between applications based on non-Oracle messaging systems and Oracle Advanced Queuing.
Standard Oracle Advanced Queuing functionality provides propagation between two Oracle
Advanced Queuing queues; Messaging Gateway extends that propagation to legacy
applications based on non-Oracle messaging systems.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 21
For more information, refer to the Oracle Streams Advanced Queuing User’s Guide and
Reference.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 22
Accessing Oracle Workflow Web Pages

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 23
Oracle Workflow Home Pages

Oracle Workflow Home Pages


• Administrator home page: Lists your five highest priority notifications. Also provides tabs
to the Developer Studio, Event Manager (Business Events), administrator Status Monitor,
Advanced Worklist, and Administration pages.
• Self-service home page: Lists your five highest priority notifications as well as the five
most recent workflows that you own that were started in the last two weeks. Also provides
tabs to the Advanced Worklist and self-service Status Monitor.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 24
Notification System

Notification System
The Notification System:
• Routes notifications to a role, which can be a single user or group of users
• Enables users to receive and respond to notifications using an e-mail application or Web
browser of choice
• Sends e-mail notifications and processes e-mail responses using the JavaMail API
• Allows any users with access to the Internet to be included in a workflow process
• Provides access to the Worklist from Oracle E-Business Suite through the Worklist web
pages
• Enables users to drill down from a notification in the Worklist web pages to any URL or
Oracle E-Business Suite form to respond to the notification

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 25
Worklist Web Pages

Worklist Web Pages


Oracle Workflow includes two different versions of the Worklist in the Oracle Application
Framework user interface format:
• Advanced Worklist: Provides full notification information as well as additional options for
displaying and administering notifications
• Personal Worklist: Provides additional search and filtering options for displaying
notifications

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 26
E-Mail Notifications

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 27
Directory Services

Directory Services
Users can be associated with more than one role, and a role may contain more than one user.
The Workflow Engine and Notification System use the directory service to determine who
should receive notifications and in what format. Notifications can be delivered to an individual
user or to all members of a particular role.
Note: Oracle Workflow uses a directory service model in which denormalized information is
maintained in the Workflow local tables for performance gain. You should maintain
synchronization between the user and role information stored in application tables by the
source modules and the information stored in the Workflow local tables.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 28
Status Monitor Web Pages

Workflow Monitor
Oracle Workflow includes both administrator and self-service versions of the Status Monitor in
the Oracle Application Framework user interface format.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 29
Workflow Definitions Loader

Loading Workflow Definitions


The Workflow Definitions Loader is a utility program that lets you transfer process definitions
between a database and a flat file. The Workflow Definitions Loader:
• Runs on the server machine.
• Lets you upgrade a database with new versions of process definitions or upload existing
process definitions after a database upgrade.
• Is also integrated into Oracle Workflow Builder.
• Allows process definitions to be source-controlled as flat files.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 30
Workflow XML Loader

Workflow XML Loader


The Workflow XML Loader is a utility program that lets you transfer XML definitions for
Business Event System objects between a database and a flat file.
• When you download Business Event System object definitions from a database, Oracle
Workflow saves the definitions as an XML file.
• When you upload object definitions to a database, Oracle Workflow loads the definitions
from the source XML file into the Business Event System tables in the database, creating
new definitions or updating existing definitions as necessary.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 31
Workflow Manager

Workflow Manager
Administrators can use Workflow Manager to perform the following tasks:
• Run Workflow service components, such as notification mailers and agent listeners.
• Control other Workflow system services, including background engines, purging obsolete
Workflow data, and cleanup of the Workflow control queue.
• Monitor work item processing by viewing the distribution of all work items by status and
drilling down to additional information.
• Monitor event message processing for local Business Event System agents by viewing the
distribution of event messages by status and drilling down to additional agent information
and individual event messages, as well as by viewing queue propagation details.
With this ability to monitor work items and event messages, a system administrator can
identify possible bottlenecks easily.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 32
Service Components

Service Components
Oracle Workflow uses the Generic Service Component Framework (GSCF) to simplify and
automate the management of background Java services. A service component is an instance of
a Java program that has been defined according to the GSCF standards so that it can be
managed through this framework.
Use Oracle Workflow Manager to configure and run service components.
Note: Oracle Workflow Manager also lets you manage Web services outbound components,
which process outbound Web service messages for Oracle XML Gateway. For more
information, see the Oracle XML Gateway User’s Guide.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 33
Oracle Workflow Documentation

Oracle Workflow Documentation


The main Oracle Workflow documentation set includes the following:
• Oracle Workflow Administrator’s Guide: Explains how to complete the setup steps
necessary for any product that includes Workflow-enabled processes, as well as how to
monitor the progress of run-time workflow processes.
• Oracle Workflow Developer’s Guide: Explains how to define new workflow business
processes and customize existing Oracle E-Business Suite-embedded workflow processes.
It also describes how to define and customize business events and event subscriptions.
• Oracle Workflow User’s Guide: Describes how users can view and respond to workflow
notifications and monitor the progress of their workflow processes.
• Oracle Workflow API Reference: Describes the APIs provided for developers and
administrators to access Oracle Workflow.
You can also consult the following:
• Installation documentation for your release and platform, usually available within the
installation software bundle.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 34
• Oracle Workflow Documentation Resources, Release 12, (note 396314.1), available on
OracleMetaLink.

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 35
Review Questions

Review Questions and Solutions


Which component of Oracle Workflow:
• Communicates business events among systems? Business Event System
• Executes workflow processes? Workflow Engine
• Lets you develop workflow process definitions? Oracle Workflow Builder
• Delivers process-related messages to users? Notification System
• Lets you review and administer a run-time process? Status Monitor

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 36
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 37
Copyright © Oracle Corporation, 2007. All rights reserved.

Oracle Workflow Components


Chapter 16 - Page 38
Setting Up Oracle Workflow
Chapter 17

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 2
Setting Up Oracle Workflow

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 3
Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 4
Required Setup Steps

Required Setup Steps


1. Set system-wide preferences and default user preferences for your installation of Oracle
Workflow using the Workflow Configuration page.
2. Ensure that a directory service is set up to provide information about the individuals and
roles in your organization who may utilize Oracle Workflow functionality and receive
workflow notifications.
3. Set up background Workflow engines to manage the load on the primary Workflow
Engine by processing deferred and timed out activities and stuck processes.
4. Configure the Business Event System for event communication.
For more information, refer to the “Setting Up Oracle Workflow” chapter in the Oracle
Workflow Administrator’s Guide.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 5
Step 1 Setting Global Workflow Preferences

Setting Global Workflow Preferences


Use a Web browser to navigate to the Workflow Configuration page, using a responsibility and
navigation path specified by your system administrator. Some possible navigation paths in the
seeded Workflow responsibilities are:
• Workflow Administrator Web Applications: Administration > Workflow Preferences
• Workflow Administrator Web (New): Administration > Workflow Preferences
• Workflow Administrator Event Manager: Administration > Workflow Preferences
You can also navigate to the Workflow Configuration page from other Oracle Workflow
administrator Web pages by choosing the Administration tab or selecting the Administration
link at the end of the page.
You must have workflow administrator privileges to set global workflow preferences on the
Workflow Configuration page. If you do not have administrator privileges, you can view
global workflow preferences, but you cannot modify them.
Workflow System Administrator

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 6
Select the role to which you want to assign workflow administrator privileges. If you want all
users and roles to have workflow administrator privileges, such as in a development
environment, enter an asterisk (*).
LDAP
If you are integrating with Oracle Internet Directory, specify the Lightweight Directory Access
Protocol (LDAP) server information for the LDAP directory to which you will connect. If you
already configured these parameters while installing Oracle Application Server with Oracle E-
Business Suite, Oracle Workflow displays those values here. For more information, see:
Installing Oracle Application Server 10g with Oracle E-Business Suite Release 12
(OracleMetaLink note 376811.1) and Oracle Single Sign-On Integration, Oracle Applications
System Administrator's Guide - Security.
• Host: The host on which the LDAP directory resides.
• Port: The port on the host.
• Username: The LDAP user account used to connect to the LDAP server. This user name
must have write privileges and is required to bind to the LDAP directory.
• Old Password: Enter your current LDAP password. Oracle Workflow validates this
password before letting you change it.
• New Password: Enter the new LDAP password you want to use. The password must be at
least five characters long.
• Repeat Password: Enter your new LDAP password again in this field to confirm it.
• Change Log Base Directory: The LDAP node under which change logs are located.
• User Base Directory: The LDAP node under which user records can be found.
Business Event Local System
Specify the system name for the database where this installation of Oracle Workflow is
located, to identify it in the Business Event System. Oracle Workflow automatically creates the
system definition for this database in the Event Manager during installation.
Select the execution status for the local system.
• Enabled: Subscriptions are executed on all events. Oracle Workflow sets the system status
to Enabled by default.
• Local Only: Subscriptions are executed only on events raised on the local system.
• External Only: Subscriptions are executed only on events received by inbound agents on
the local system.
• Disabled: No subscriptions are executed on any events.
Notification Style
Specify whether Oracle Workflow should send e-mail notifications to users, and if so, in what
format. A user can override this default setting by specifying a different notification style in his
or her individual Oracle E–Business Suite preferences.
• HTML mail with attachments
• Plain text mail with HTML attachments
• Plain text mail
• Plain text summary mail
• Do not send me mail

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 7
• HTML mail
• HTML summary mail
Browser Signing DLL Location
Specify the location of the Capicom.dll file that is used for Web page operations with
encryption in the Microsoft Internet Explorer browser. This preference is required only if you
plan to use certificate-based digital signatures to confirm notification responses, and your users
access Oracle Applications with Microsoft Internet Explorer. By default, this preference is set
to a URL at which the Capicom.dll file can be downloaded from Microsoft’s Web site. In most
cases, you do not need to change this setting. However, you can update this preference if the
location of the Capicom.dll file changes, or if you choose to store a copy of the file on your
local network and point to that location instead.
JInitiator
Review details about the JInitiator plugin in your Oracle E-Business Suite installation. Oracle
Workflow uses JInitiator to launch Oracle Applications forms linked to notifications.
• Class ID: The class identifier for this version of JInitiator.
• Download Location: The location where the JInitiator executable is staged for download
to users’ client machines.
• Version: The JInitiator version number.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 8
Step 2 Setting Up an Oracle Workflow Directory Service

Setting Up an Oracle Workflow Directory Service


In the predefined directory service implementation, Oracle Workflow automatically creates
directory service views to integrate with the appropriate source tables.
You can also create your own directory service by defining custom views with the required
columns. However, note that only the predefined directory service provided by Oracle
Workflow is supported by Oracle.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 9
Step 2 Setting Up an Oracle Workflow Directory Service

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 10
Step 2 Setting Up an Oracle Workflow Directory Service

Setting Up an Oracle Workflow Directory Service


You only need to run the bulk synchronization program for products that are not successfully
performing incremental synchronization.
The Synchronize Workflow LOCAL Tables request set contains ten instances of the
Synchronize WF Local Tables program, one for each originating system. You can use this
request set to submit requests for all the originating systems at once.
Use the Submit Requests form to submit the request set or concurrent program. Enter the
following parameters:
• Orig System (single concurrent program only): Select the name of the originating system
whose user and role information you want to synchronize with the WF_LOCAL tables.
• Parallel Processes: Enter the number of parallel processes to run. The default value for this
parameter is 1. However, if your hardware resources allow, you can optionally set this
parameter to a higher value in order to parallelize the queries during execution of the
program.
• Logging: Select the logging mode you want. This mode determines whether redo log data
is generated for database operations performed by the bulk synchronization process. The
default value for this parameter is LOGGING, which generates redo log data normally.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 11
You can optionally set the logging mode to NOLOGGING to suppress redo log data,
obtaining a performance gain. Without this redo log data, however, no media recovery is
possible for the Workflow directory tables and indexes.
• Temporary Tablespace: Select the temporary tablespace the program should use.
• Raise Errors: Select Yes or No to indicate whether the program should raise an exception
if it encounters an error. Usually you can leave this parameter set to the default value,
which is Yes.
Note: Products that use role hierarchies do not participate in bulk synchronization. These
products must perform incremental synchronization.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 12
Step 3 Running Background Engines

Running Background Engines


Ensure that you have at least one background engine that can check for timed out activities,
one that can process deferred activities, and one that can handle stuck processes. At a
minimum, you need to set up one background engine that can handle all three types of issues.
However, for performance reasons we recommend that you run three separate background
engines at different intervals.
• Run a background engine to handle only deferred activities every 5 to 60 minutes.
• Run a background engine to handle only timed out activities every 1 to 24 hours as
needed.
• Run a background engine to handle only stuck processes once a week to once a month,
when the load on the system is low.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 13
Step 3 Running Background Engines

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 14
Step 3 Running Background Engines

Running Background Engines


The Background Engine API parameters are:
• itemtype: Optional item type to restrict this engine to activities associated with that item
type.
• minthreshold: Optional minimum cost that an activity must have for this background
engine to execute it, in hundredths of a second.
• maxthreshold: Optional maximum cost an activity can have for this background engine to
execute it, in hundredths of a second.
• process_deferred: Specify TRUE or FALSE to indicate whether the engine should check
for deferred activities.
• process_timeout: Specify TRUE or FALSE to indicate whether the engine should check
for timed out activities.
• process_stuck: Specify TRUE or FALSE to indicate whether the engine should check for
stuck processes.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 15
Step 4 Configuring the Business Event System

Configuring the Business Event System


You can also optionally perform these steps:
• To enhance performance, you can change the maximum cache size used in Business Event
System subscription processing and enable static function calls for custom PL/SQL
functions.
• If you want to invoke business process execution language (BPEL) processes through
event subscriptions, you can optionally specify the BPEL server.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 16
Step 4 Event Message Communication

Event Message Communication


To send an event message, Oracle Workflow places the event message on a local outbound
agent’s queue. You must schedule propagation to deliver the message from there to the
designated inbound agent’s queue.
To receive an event message in Oracle Workflow, you must run an agent listener to dequeue
the message from the inbound agent’s queue for Oracle Workflow to process. A component of
the Event Manager called the Event Dispatcher then searches for and executes subscriptions to
the event.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 17
Step 4 Setting Up Database Links and Queues

Setting Up Database Links and Queues


Database Links
When you set up database links for use by the Business Event System, you should fully qualify
each database link name with the domain name.
Queues
In addition to the standard queues provide by Oracle Workflow, you can also set up your own
queues for event message propagation. To set up a queue, you must create the queue table,
create the queue, and start the queue.
Oracle Workflow provides a sample script called wfevquc2.sql, which you can modify to set
up your queues, as well as a sample script called wfevqued.sql, which you can modify to drop
queues. These scripts are located on your server in the $FND_TOP/sql directory.
If you define a queue with a payload type other than the standard WF_EVENT_T Workflow
format or the JMS Text message format, you must create a queue handler to translate between
the standard Workflow format and the format required by the queue.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 18
Step 4 Checking Database Parameters

Checking Database Parameters


The JOB_QUEUE_PROCESSES parameter defines the number of SNP job queue processes
for your instance. You must start at least one job queue process to enable message propagation.
The minimum recommended number of processes for Oracle Workflow is ten.
You can either modify the parameter in the init.ora file and restart the database, or you can use
the ALTER SYSTEM statement to dynamically modify the parameter for the duration of the
instance.
Note: If you want to review more detailed information about Oracle Advanced Queuing
processing, you can optionally use another initialization parameter, EVENT, for detailed
database level tracing of issues related to Oracle Advanced Queuing. Add the following line to
your init.ora file:
event = "24040 trace name context forever, level 10"
Then restart your database to make this change effective. Be aware that using this parameter
may generate large trace files.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 19
Step 4 Scheduling Agent Listeners

Scheduling Agent Listeners


The Generic Service Component Framework is a facility that helps to simplify and automate
the management of background Java services.
Agent listener service components, managed through Oracle Workflow Manager, are the most
automated and robust way to run agent listeners. However, Oracle Workflow also provides an
administrative script named wfagtlst.sql that you can use to run an agent listener, or you can
run the WF_EVENT.Listen API directly in SQL*Plus. These methods are intended primarily
for testing and debugging purposes.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 20
Step 4 Scheduling Agent Listeners

Scheduling Agent Listeners


Seeded PL/SQL agent listeners:
• Workflow Deferred Agent Listener: Handles messages on WF_DEFERRED to support
deferred subscription processing.
• Workflow Deferred Notification Agent Listener: Handles notification messages on
WF_DEFERRED to support outbound notification processing.
• Workflow Error Agent Listener: Handles messages on WF_ERROR to support error
handling for the Business Event System.
• Workflow Inbound Notifications Agent Listener: Handles messages on
WF_NOTIFICATION_IN to support inbound e-mail notification processing.
Seeded Java agent listeners:
• Workflow Java Deferred Agent Listener: Handles messages on WF_JAVA_DEFERRED
to support deferred subscription processing in the middle tier.
• Workflow Java Error Agent Listener: Handles messages on WF_JAVA_ERROR to
support error handling for the Business Event System in the middle tier.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 21
Oracle XML Gateway also provides PL/SQL agent listeners named ECX Inbound Agent
Listener and ECX Transaction Agent Listener, and a Java agent listener named Web Services
IN Agent. See: Oracle XML Gateway User's Guide.
You can optionally create additional agent listener service components. For example, you can
configure agent listeners for other inbound agents that you want to use for event message
propagation, such as the standard WF_IN and WF_JMS_IN agents, or any custom agents. You
can also configure an agent listener service component that only processes messages on a
particular agent that are instances of a specific event.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 22
Step 4 Scheduling Propagation

Scheduling Propagation
If you want to use the standard WF_OUT and WF_JMS_OUT agents or custom agents for
event message propagation, ensure that you schedule propagation for those agents.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 23
Step 4 Scheduling Propagation

Scheduling Propagation
For information about using Oracle Enterprise Manager to schedule Oracle Advanced Queuing
propagation, refer to Oracle Enterprise Manager Support, Oracle Streams Advanced Queuing
User's Guide and Reference and the Oracle Enterprise Manager online help.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 24
Step 4 Scheduling Propagation

Scheduling Propagation
The Schedule_Propagation API parameters are:
• queue_name: The queue associated with the local outbound agent for which you want to
schedule propagation. Specify the queue name prefaced by the schema that owns the
queue, in the following format: <schema>.<queue>
The standard Workflow queues are usually owned by the APPLSYS schema.
• destination: The database link to the remote system to which you want to propagate
messages. To propagate messages to another queue on the local system, enter the
destination NULL. The default value is NULL.
• start_time: The initial start time for the propagation window.
• duration: The duration of the propagation window, in seconds
• next_time: A date function to compute the start of the next propagation window from the
end of the current window. For example, to start the window at the same time every day,
next_time should be specified as 'SYSDATE + 1 - duration/86400'. If this value is NULL,
then propagation is stopped at the end of the current window and is not run repeatedly.
The default value is NULL.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 25
• latency: A latency time in seconds to specify how long you want to wait, after all
messages have been propagated, before rechecking the queue for new messages to the
destination. The latency represents the maximum wait time during the propagation
window for a message to be propagated after it is enqueued. To propagate messages as
soon as possible after they are enqueued, enter a latency of zero. The default latency is 60
seconds.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 26
Step 4 Synchronizing License Statuses

Synchronizing License Statuses


You can use the License Manager utility to review which products you currently have licensed.
See: License Manager, Oracle Applications System Administrator’s Guide - Maintenance.
Use the Submit Requests form to submit the Synchronize Product License and Workflow BES
License concurrent program (FNDWFLIC). This program does not require any parameters.
If you upgrade from an Oracle E-Business Suite release earlier than Release 11.5.9, you should
run the Synchronize Product License and Workflow BES License concurrent program once
after the upgrade to update the license status of the existing events and subscriptions in your
Event Manager. Otherwise, subscriptions may not be correctly processed after the upgrade.
Subsequently, when you license a product, Oracle Workflow automatically updates the license
status for all the events and subscriptions owned by that product.
Note: Any events and subscriptions that you define with a customization level of User are
always treated as being licensed.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 27
Step 4 Cleaning Up the WF_CONTROL Queue

Cleaning Up the WF_CONTROL Queue


The WF_CONTROL agent is used for internal processing only. You should not place custom
event messages on this queue.You do not need to schedule propagation for the
WF_CONTROL agent, because the middle tier processes that use WF_CONTROL dequeue
messages directly from its queue. However, this queue should be cleaned up periodically.
When a middle tier process for Oracle E-Business Suite starts up, it creates a JMS subscriber to
the WF_CONTROL queue. If a middle tier process dies, however, the corresponding
subscriber remains in the database. For more efficient processing, you should ensure that
WF_CONTROL is periodically cleaned up by removing the subscribers for any middle tier
processes that are no longer active. The recommended frequency for performing cleanup is
every 12 hours.
Use Oracle Workflow Manager to manage the Workflow Control Queue Cleanup
(FNDWFBES_CONTROL_QUEUE_CLEANUP) concurrent program, which uses the
WF_BES_CLEANUP.Cleanup_Subscribers() API to perform the necessary cleanup. This
concurrent program is scheduled to run every 12 hours by default. The program does not
require any parameters.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 28
Step 4 Tuning Performance

Tuning Performance
Changing the Maximum Cache Size for the Business Event System
The Business Event System caches event, subscription, and agent definitions to enhance
performance during subscription processing. The default maximum size of the cache is 50
records. You can optionally increase the maximum cache size to reduce the database queries
performed by the Business Event System, or decrease the maximum cache size to reduce the
amount of memory used by the cache.
The maximum cache size is determined by the value for the WFBES_MAX_CACHE_SIZE
resource token. To change this value, you must first create a .msg source file specifying the
new size as the value for the WFBES_MAX_CACHE_SIZE resource token. Then use the
Workflow Resource Generator program to upload the new seed data from the source file to the
database table WF_RESOURCES. See: To Run the Workflow Resource Generator, Oracle
Workflow API Reference.
Enabling Static Function Calls for Custom PL/SQL Functions
If you use custom PL/SQL functions within the Business Event System, including event data
generate functions, event subscription rule functions, and queue handler enqueue and dequeue

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 29
APIs, Oracle Workflow calls those functions using dynamic SQL by default. However, you
can enable Oracle Workflow to call your custom functions statically to enhance performance.
Oracle Workflow provides two PL/SQL packages with procedures that contain lists of static
function calls. The Business Event System internally calls these procedures during subscription
processing to check whether static function calls are available for the procedures being
executed.
• WF_BES_DYN_FUNCS package - Contains static function calls for generate functions
and rule functions.
• WF_AGT_DYN_FUNCS package - Contains static function calls for queue handler
enqueue and dequeue APIs.
The initial seeded versions of these packages include static function calls only for seeded Oracle
Workflow functions, such as the rule function WF_RULE.Default_Rule and the queue handler
APIs WF_EVENT_QH.Enqueue and WF_EVENT_QH.Dequeue. You can use the
wfbesfngen.sql script to add functions from other Oracle Applications products or your own
custom functions to these packages.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 30
Step 4 Specifying the BPEL Server

Specifying the BPEL Server


The WF: BPEL Server profile option lets you quickly change the BPEL server setup for all
subscriptions that invoke BPEL processes, such as if you move these subscription definitions
from a test instance to a production instance. See: Invoking a Web Service, Oracle Workflow
Developer's Guide.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 31
Optional Setup Steps

Optional Setup Steps


1. Partition certain Workflow tables for performance gain.
2. Set up additional languages if you want to use Oracle Workflow in languages other than
English.
3. Set up one or more notification mailers if you want to allow your users to receive
notifications by e-mail.
4. Customize the templates for your e-mail notifications.
5. Give users access to the Advanced Worklist, Personal Worklist, and and Notifications
administrator search Web pages from any responsibility you choose.
6. Use the WF: Notification Reassign Mode profile option to control which reassign modes
are available to users from the Notification Details page.
7. Control the item types for which users can define vacation rules and grant worklist
access, using the WF: Vacation Rule Item Types lookup type and the WF: Vacation
Rules - Allow All profile option.
8. Set up users to enable electronic signatures in notification responses.
9. Customize the company logo that appears in Oracle Workflow Web pages.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 32
10. Include additional icons in your Oracle Workflow icons subdirectory to customize the
diagrammatic representation of your workflow processes.
For more information, refer to the “Setting Up Oracle Workflow” chapter in the Oracle
Workflow Administrator’s Guide.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 33
Optional Step 1 Partitioning Workflow Tables

Partitioning Workflow Tables


The wfupartb.sql script partitions the following tables:
• WF_ITEM_ACTIVITY_STATUSES
• WF_ITEM_ACTIVITY_STATUSES_H
• WF_ITEM_ATTRIBUTE_VALUES
• WF_ITEMS
The script recreates the following indexes:
• WF_ITEM_ACTIVITY_STATUSES_PK
• WF_ITEM_ACTIVITY_STATUSES_N1
• WF_ITEM_ACTIVITY_STATUSES_N2
• WF_ITEM_ACTIVITY_STATUSES_H_N1
• WF_ITEM_ACTIVITY_STATUSES_H_N2
• WF_ITEM_ATTRIBUTE_VALUES_PK
• WF_ITEMS_PK
• WF_ITEMS_N1

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 34
• WF_ITEMS_N2
• WF_ITEMS_N3

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 35
Optional Step 2 Setting Up Additional Languages

Setting Up Additional Languages


Note: You can display languages that require a multibyte character set only if your database
uses a character set that supports these languages, such as UTF8.
Displaying Oracle Workflow Web Pages in Other Languages
You select and install additional languages as part of the Oracle E-Business Suite installation.
Users can set their language preference to an installed language through the Personal
Homepage.
Creating and Viewing Workflow Definitions in Other Languages using Oracle Workflow
Builder
• Set the NLS_LANG environment variable for the new language, territory, and encoded
character set that you want to use for the workflow definition. Specify the value for
NLS_LANG in the following format: LANGUAGE_TERRITORY.CHARSET Use the
Registry Editor on your PC to set the NLS_LANG environment variable:
- Select Run from the Start menu on your PC.
- Enter the command to run the Registry Editor and click OK. The command depends
on your version of Windows; for example, it may be regedit or regedit32.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 36
- Drill down to My Computer > HKEY_LOCAL_MACHINE > Software > Oracle, and
then to the Oracle home where the Workflow Builder is installed.
- Select the NLS_LANG variable and select Modify from the Edit menu.
- Enter the value you want and click OK.
- Exit the Registry Editor.
• Start Oracle Workflow Builder. Create a translated version of your workflow definition
and save it as a flat file (.wft), or open and view a workflow definition that is already
translated.
Loading Workflow Definitions in Other Languages to a Database
• Ensure that the language you want is set up in the database. You select and install
additional languages as part of the Oracle E-Business Suite installation.
• Before running the Workflow Definitions Loader program to load a translated workflow
definition to your database, you must set the NLS_LANG environment variable to the
appropriate territory and character set for the workflow definition you want to load. The
character set must match the character set encoding used to create the workflow definition
file, which is determined by the NLS_LANG value that was set on the client PC before the
.wft file was created in the Workflow Builder. To set NLS_LANG before running the
Workflow Definitions Loader, use the following format: _TERRITORY.CHARSET
Note that it is important to include the underscore (_) before the territory name and the
period (.) between the territory name and the character set name in the NLS_LANG value.
You do not need to include the language in this NLS_LANG value because the Workflow
Definitions Loader uses the language specified within the .wft file to determine the
language to load.
• Before using the Workflow Builder to save a translated workflow definition to your
database, you must set the NLS_LANG environment variable to the appropriate language,
territory, and character set. If you are saving several workflow definitions in different
languages, you must reset NLS_LANG for each language.
Sending E-mail Notifications in Other Languages
• Determine whether Oracle has translated the e-mail notification templates to the language
you want to set by checking for the file containing the templates in the appropriate
language subdirectory, $FND_TOP/import/<lang>. The standard templates are delivered
in a file called wfmail.wft.
• If the e-mail templates are available for the desired language, Oracle Workflow uses the
language preference for the notification recipient to determine the language for an e-mail
notification.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 37
Optional Step 3 Implementing Notification Mailers

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 38
Optional Step 3 Implementing Notification Mailers

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 39
Optional Step 3 Implementing Notification Mailers

Implementing Notification Mailers


Users can receive e-mail notifications using various e-mail clients, although notifications may
be displayed differently in different clients, depending on the features each client supports.
Oracle Workflow fully supports Multipurpose Internet Mail Extensions (MIME) encoded
messages. This means that a notification mailer can exchange messages with workflow users
containing languages with different character sets and multimedia encoded content.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 40
Optional Step 4 Customizing Message Templates

Customizing Message Templates


Message templates are defined in the System: Mailer item type, stored in a file named
wfmail.wft. It is not recommended to modify the standard templates. However, you can choose
to use the alternative templates provided by Oracle Workflow instead of the default templates,
or you can also create your own custom templates in the System: Mailer item type. For more
information, refer to the “Setting Up Oracle Workflow” chapter in the Oracle Workflow
Administrator’s Guide.
You can implement alternative standard or custom templates in the following ways:
• Assign the templates that you want to a particular notification mailer service component in
the mailer configuration parameters. The templates assigned to a mailer override the
default System: Mailer templates.
• Assign the templates that you want to a particular notification in a workflow process by
defining special message attributes. In this case the templates assigned to the notification
override both the templates assigned to a mailer and the default System: Mailer templates.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 41
Optional Step 4 Customizing Message Templates

Customizing Message Templates


The following standard message templates are used by default. An asterisk (*) marks the
templates for which Oracle Workflow also provides an alternative version.
• * Open Mail (Templated): For notifications that require a response when you are using the
templated response method
• * Open Mail (Direct): For notifications that require a response when you are using the
direct response method
• * Open Mail (Outlook Express): For notifications that require a response, if you use an e-
mail application such as Microsoft Outlook Express as your e-mail client
• * Open FYI Mail: For notifications that do not require a response
• View From UI: For response-required notifications whose content you do not want to send
in e-mail
• View FYI From UI: For notifications that do not require a response, whose content you do
not want to send in e-mail
• URL Attachment: Creates the Notification References attachment for HTML-formatted
notification messages that include URL attributes with Attach Content checked

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 42
• * Canceled Mail: Informs the recipient that a notification is canceled
• * Invalid Mail: Informs the recipient that the response to the notification is invalid
• * Closed Mail: Informs the recipient that a previously sent notification is now closed
• Summary Mail (HTML): For notification summaries
• Warning Mail: Informs the recipient of unsolicited mail that he or she sent
• Signature Required Mail: For notifications that require an electronic signature in the user’s
response; users must respond to such notifications through the Notification Details Web
page rather than by e-mail
• Signature Warning Mail: Informs the recipient that an e-mail notification response was not
valid because the notification required an electronic signature to be entered through the
Notification Details Web page
• Secure Mail Content: For notifications that include sensitive content that cannot be sent in
e-mail for security reasons; users must view and respond to such notifications through the
Notification Details Web page rather than by e-mail
• * Open Mail (More Information Request): For requests for more information about a
notification from one user to another user
• More Information Request (Outlook Express): For requests for more information about a
notification from one user to another user, if you use an e-mail application such as
Microsoft Outlook Express as your e-mail client
• Invalid Open Mail (More Information Request): Informs the recipient that the response to
a request for more information is invalid
• User Notification Preference Update Report: Informs the administrator that an e-mail
notification could not be sent to one or more recipients, that the notification preference for
those recipients has been set to DISABLED, and that those recipients' original notification
preferences, which are listed, should be reset after the issues that caused the failures are
corrected

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 43
Optional Step 5 Adding Worklist Functions to User
Responsibilities

Adding Worklist Functions to User Responsibilities


Add the following functions to the responsibilities from which you want users to access the
corresponding pages:
• Advanced Worklist: WF_WORKLIST
• Personal Worklist: WF_WORKLIST_CUSTOM
• Notifications administrator search page: WF_WORKLIST_SEARCH
The Advanced Worklist is seeded on the menu for the Workflow User Web Applications
responsibility by default. You can also add its function to other responsibilities from which you
want users to access notifications.
The Personal Worklist is an optional feature that is not seeded on any Oracle E-Business Suite
menu. If you want users to access this version of the Worklist, you must first add its function to
the menu for a responsibility assigned to those users.
If you add the Personal Worklist, you can use worklist flexfields to define specialized worklist
views that display information specific to particular types of notifications. If you define a
securing function for a view, add the securing function to the same menu as the Personal

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 44
Worklist function. Your specialized worklist view will appear in the list of views only when
users access the Personal Worklist from that responsibility.
The Notifications administrator search page is seeded on the menu for the Workflow
Administrator Web Applications responsibility by default. You can also add its function to
other responsibilities from which you want users to be able to search for notifications. For
example, if you want users with the Workflow User Web Applications responsibility to have
access to the Notifications administrator search page, you can add this function to the
FND_WFUSER (Workflow User) menu with a prompt such as Notification Search.
A user must have workflow administrator privileges to access other users' notifications on the
Notifications administrator search page. If a user does not have administrator privileges, that
user can only search for and access his or her own notifications.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 45
Optional Step 6 Setting the Notification Reassign Mode

Setting the Notification Reassign Mode


The WF: Notification Reassign Mode profile option controls the reassign modes available to
users from the Advanced Worklist, the Personal Worklist, and the Response section of the
Notification Details page.
• Delegate: This mode lets users give another user authority to respond to a notification on
their behalf, while still retaining ownership of the notification themselves. For example, a
manager might delegate all vacation scheduling approvals to an assistant.
• Transfer: This mode lets users give another user complete ownership of and responsibility
for a notification. For example, users might select this option if they should not have
received a certain notification and they want to send it to the correct recipient or to another
recipient for resolution. A transfer may have the effect of changing the approval hierarchy
for the notification. For example, a manager might transfer a notification about a certain
project to another manager who now owns that project.
• Reassign: This setting provides users access to both the Delegate and Transfer reassign
modes. The Reassign setting is the default value for the WF: Notification Reassign Mode
profile option.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 46
Optional Step 7 Setting Up Notification Handling Options

Setting Up Notification Handling Options


Adding Item Types for Vacation Rules and Worklist Access
By default, the list of item types a user can select when creating a vacation rule or when
granting worklist access displays those item types for which the user has previously received at
least one notification. You can also choose to add item types that you want to appear in the lists
for all users. In this way you can allow users to create rules or grant worklist access to handle
any notifications they may receive from those item types in the future.
To add an item type to the list, define the internal name of the item type as a lookup code for
the WF: Vacation Rule Item Types lookup type.
• Navigate to the Application Object Library Lookups window in the Application Developer
responsibility.
• Query the WF_RR_ITEM_TYPES lookup type with the meaning WF: Vacation Rule Item
Types in the Application Object Library application.
• Define the item type you want as a new lookup code for this lookup type. Ensure that you
enter the item type internal name in the Code field exactly as the name is defined in your
database.
Allowing Vacation Rules That Apply to All Item Types

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 47
Use the WF: Vacation Rules - Allow All profile option to determine whether the list of item
types for vacation rules includes the “All” option. The “All” option lets users create a generic
rule that applies to notifications associated with any item type.
• Enabled: The “All” option appears in the list of item types for vacation rules. This is the
default value.
• Disabled: Users must always specify the item type to which a vacation rule applies.
After changing the value of this profile option, you must stop and restart Oracle HTTP Server
for the change to take effect.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 48
Optional Step 8 Setting Up for Electronic Signatures

Setting Up for Electronic Signatures


Implementing Password-based Signatures with Single Sign-On
Oracle Workflow supports password-based signatures for notifications based on Oracle
Application Object Library (FND) passwords. If you maintain your directory service based on
Oracle Application Object Library users and passwords, no additional setup is required.
However, if you implement single sign-on for your site through Oracle Internet Directory, you
must perform the following steps.
• Set the Applications SSO Login Types profile option to either Local or Both at user level
for all users who need to enter password-based signatures.
• Ensure that these users have valid passwords defined in Oracle Application Object
Library.
For more information, see: Oracle Single Sign-On Integration, Oracle Applications System
Administrator's Guide - Security.
Loading Certificates for Digital Signatures
Before users can sign responses with their X.509 certificates, you must load these certificates
into your Oracle E-Business Suite database using the Workflow Certificate Loader. When you
load a certificate, you must also specify the Oracle Applications user to whom that certificate is

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 49
assigned. Oracle Workflow uses this information to validate that the user attempting to sign
with a certain certificate is the same user to whom that certificate is assigned.
A user can have more than one certificate assigned to him or her. However, each certificate can
only be assigned to one user. Additionally, after you have loaded a certificate for a user, you
cannot delete it from the database or assign it to a different user. If a certificate is incorrectly
assigned, the user to whom it belongs must revoke it and obtain a new certificate instead.
You must load a user’s personal certificate, the root certificate of the certificate authority that
issued the personal certificate, and any intermediate certificates required for this type of
personal certificate.
Run the loader by running Java against
oracle.apps.fnd.wf.DigitalSignature.loader.CertificateLoader. You can load several certificates
at once by listing the information for all the certificates in a data file for the loader. You can
also load a single certificate by specifying the certificate information in the command line for
the loader.
Note: Oracle Workflow does not provide a framework for certificate provisioning. Oracle
Workflow’s digital signature support assumes that certificate provisioning is already part of
your infrastructure.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 50
Optional Step 9 Customizing the Workflow Web Page Logo

Customizing the Workflow Web Page Logo


Note: /OA_MEDIA/ is a virtual directory mapping defined in your Web server when Oracle
Workflow is installed.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 51
Optional Step 10 Adding Custom Icons

Adding Custom Icons


If you create custom icons to include in your Oracle Workflow Builder process definition, and
you want the custom icons to appear in the Status Monitor when you view the process, you
must do the following:
1. Convert the custom icon files (.ico) to GIF format (.gif).
2. Copy the .gif files to the physical directory associated with your Web server’s
/OA_MEDIA/ virtual directory, so that the Status Monitor can access them.
Note: /OA_MEDIA/ is a virtual directory mapping defined in your Web server when Oracle
Workflow is installed.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 52
Version Compatibility

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 53
Review Questions

Review Questions and Solutions


1. What are the required setup steps for Oracle Workflow?
- Set your global workflow preferences.
- Ensure that your directory service is set up.
- Set up background engines.
- Configure the Business Event System for event communication.
2. What are the optional setup steps for Oracle Workflow?
- Partition Workflow tables for performance gain.
- Set up additional languages.
- Set up notification mailers.
- Customize the templates for your e-mail notifications.
- Add Worklist web pages to users’ responsibilities.
- Set the WF: Notification Reassign Mode profile option.
- Control the item types for which users can define vacation rules and grant worklist
access.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 54
- Set up users to enable electronic signatures in notification responses.
- Customize the company logo that appears in Oracle Workflow Web pages.
- Include custom icons in your Oracle Workflow icons subdirectory.

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 55
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Setting Up Oracle Workflow


Chapter 17 - Page 56
Overview of Flexfields
Chapter 18

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 2
Overview of Flexfields

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 3
Objectives

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

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 4
Overview

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

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 5
Customizing Oracle Applications

Using Flexfields to Customize Applications


A flexfield is a customizable field that opens in a window from a regular Oracle Applications
window. Defining flexfields enables you to tailor Oracle Applications to your own business
environment. You can easily define flexfields to modify or 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
Flexfields are important because they are used throughout Oracle Applications. Flexfields
provide many opportunities for easy modification and customization of standard Oracle
Applications processing. Members of the system implementation team as well as system
administration personnel should be familiar with the concepts and procedures of flexfields to
design and support an Oracle Applications environment that meets the needs of all its users.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 6
Flexfield Structures and Flexfield Segments

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 7
Segment Prompts and Value Descriptions

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, as well as specify the display size for each field.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 8
Validating Input Using Value Sets

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.
Value Sets Limit 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 set. 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 9
Key and Descriptive Flexfields

Different Types of Flexfields


There are two types of flexfields, key 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 10
Key Flexfields

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.
You can use the Flexfields: Open Key Window profile option to specify whether you want the
key flexfield window to be opened automatically when you navigate to the key flexfield on the
base form. This profile option is visible and updatable at the user level.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 11
Intelligent Keys

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. Because you define your key flexfield structure yourself, it reflects the
organization of your business.
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 A’s accounting structure has five segments, while
business B’s accounting structure has four segments.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 12
Intelligent Keys

Intelligent Key Examples


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

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 13
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 applications. For example, an Accounting Flexfield structure can consist of five
segments:
• Company
• Department
• Account
• Sub-Account
• Product

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 14
Oracle Applications Key Flexfields

Key Flexfields Within Oracle Applications


Many Oracle applications have key flexfields. The slide displays some of the applications and
their associated key flexfields. 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 15
Descriptive Flexfields

Descriptive Flexfields
You use descriptive flexfields to collect information beyond what is 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 double-character field enclosed by brackets. You
can use the Flexfields: Open Descr Window profile option to specify whether you want the
descriptive flexfield window to be opened automatically when you navigate to the bracketed
field, if the flexfield is enabled. This profile option is visible and updatable at the user level.
A descriptive flexfield typically uses multiple structures. You can:
• Define a basic structure that gathers additional information for all entities.
• Define several different structures that gather specialized information for different types of
the same general entity.
• Define a combination of the preceding 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).

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 16
Using Reference Fields

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 multiple structures for a
descriptive flexfield, you can make the choice of structure either dependent on the value of
another field or selectable by the user:
• If the value in a preceding field elsewhere on the form determines which structure is used,
the preceding field is known as a reference field. However, if the descriptive flexfield is
used in another form, then the two forms must have the same name for the 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 17
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 18
Oracle Applications Descriptive Flexfields (Partial)

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 19
Standard Request Submission (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 contained in it depend on which request is
being run.
• The request name acts as a reference field.
• Many request parameters have associated value sets 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 used by SRS processing.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 20
Benefits of Flexfields

Benefits of Flexfields
You should now have a basic understanding of how flexfields are used by Oracle Applications.
The ease of configuring flexfields provides many benefits to users. The main benefits are listed
on the slide.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 21
Storing Flexfield Data Internally

Storing Flexfield Values in Database Tables


The values entered through an application’s flexfields are stored internally in that application’s
database tables:
• Each segment’s value is stored in a column in one of the base tables.
• The column name reflects the type of flexfield data it holds. In general, key flexfields
store their data in columns called SEGMENTn, where n is a number. In general,
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 have the same number of fields defined. When
implementing a flexfield, determining the number of fields available for use is an
important planning step.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 22
Implementing a Flexfield Steps

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 limit 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.
• Test your flexfield.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 23
Summary

Summary
Flexfields are Oracle Applications fields that you can configure. You can define the content
and layout of the flexfield to reflect 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Overview of Flexfields
Chapter 18 - Page 24
Using Value Sets
Chapter 19

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 2
Using Value Sets

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 3
Objectives

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

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 4
Overview

Lesson Overview
Value sets are definitions of allowable values for use with a flexfield segment or report
parameter. 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 sets that require a list
of values. Finally, it covers the definition process itself.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 5
Validating Input Using Value Sets

Value Sets Define Allowable Values


You can create a value set and assign it to a flexfield segment or report parameter to control the
valid values for the segment.
Value Sets Check User Input
Define a value set for each flexfield segment. A value set is a general definition of the values
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.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 6
Planning a Value Set

Planning Your Value Set


There are several steps to planning your value set:
1. 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.
2. Select the appropriate validation strategy. Choose the type of validation most appropriate
for the data. Validation types are discussed in the following pages.
3. 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 customer telephone numbers probably does not
need a list of values, because each new customer will have a new telephone number which you
do not know at design time.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 7
Types of Value Sets

Types of Value Sets


You can define several types of value sets 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.
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.
Independent - Independent type value sets perform basic checking but also check a value
entered against the list of approved values you define.
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.
Table - Table value sets obtain their lists of approved values from existing application tables.
When defining your table value set, you specify a SQL query to retrieve all the approved
values from the table.
Special - This specialized value set provides another flexfield as a value set for a single
segment.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 8
Types of Value Sets

Types of Value Sets (continued)


Pair - This specialized value set provides a range flexfield as a value set for a pair of segments.
Translatable Independent - A Translatable Independent value set is similar to an Independent
value set in that it provides a predefined list of values for a segment. However, a Translatable
Independent value set can contain display values that are translated into different languages.
Translatable Dependent - A Translatable Dependent value set is similar to a Dependent value
set in that the available values in the list and the meaning of a given value depend on which
independent value was selected in a prior segment of the flexfield structure. However, a
Translatable Dependent value set can contain display values that are translated into different
languages.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 9
Validation Type None

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
any other formatting criteria. Examples of such values include credit card numbers, street
addresses, and phone numbers.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 10
Independent Value Sets

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 approved
for use. The user selects these values from a pop-up list.
In the example in the slide, the Category value set contains 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 11
Dependent Value Sets

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 12
Table-Validated Value Sets

Validation Type Table


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

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 13
Specialized Validation Types

Specialized Validation Types


Two additional validation types 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 14
Translatable Independent Value Sets

Validation Type Translatable Independent


Translatable Independent value sets are similar to Independent value sets except that translated
values can be displayed to the user. Translatable Independent value sets enable you to use
hidden values and displayed (translated) values in your value sets. In this way your users can
see a value in their preferred languages, yet the values will be validated against a hidden value
that is not translated.
A Translatable Independent value set can have only Translatable Dependent value sets
dependent on it.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 15
Translatable Dependent Value Sets

Validation Type Translatable Dependent


Translatable Dependent value sets are similar to Dependent value sets except that translated
values can be displayed to the user. Translatable Dependent value sets enable you to use
hidden values and displayed (translated) values in your value sets. In this way your users can
see a value in their preferred languages, yet the values will be validated against a hidden value
that is not translated.
Translatable Dependent value sets must be dependent on a Translatable Independent value set.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 16
Validation Types: Summary

Summary of Validation Types


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

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 17
Planning Value Sets

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
accepted
• Planning the value validation, including specifying the validation type and any additional
validation information, if required by the validation type

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 18
Value Set Attributes

Value Set Level Attributes


Value Set Name - If an Oracle application’s 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 sets.
Description - You can give your value sets descriptive text information.
Security - You can define security rules that further control the values available from this
value set.
Longlist Option - You can enable the user to interrupt the display of very long lists of values.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 19
Planning Format Validation

Planning Data Format Validation


Format Type - Select the available data types from the list of values.
Maximum Size - Specify the maximum size of the value. The maximum size must be less than
or equal to the size of the underlying column in the base application.
Precision - For numeric data, specify the number of decimal places.
Numbers Only - Select Numbers Only to accept only digits.
Uppercase Only - Select Uppercase Only to force any lowercase input to uppercase.
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.
Maximum/Minimum Value - To define a range of values for this value set, specify a
beginning value and an ending value.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 20
Format Types and Options

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 various format types and options are discussed on the following pages.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 21
Char and Number Format Editing

Char and Number Formatting Rules and Their Results


You have several choices about the type of data you can allow in a value set and the editing
done to that data. Two of the choices are shown in the slide.
Char Format - Plain character format type accepts uppercase, lowercase, and special
characters.
Numbers Only - This format type allows only the digits 0–9 to be input into a field. You will
receive an error message if you attempt to enter anything else.
Uppercase Only - This format type converts any lowercase letters entered to uppercase.
Right-Justify and Zero-Fill Numbers - Alphanumeric data is ordinarily left-justified. This
option enables you to right-justify numeric values and pad with zeros. Any number entered is
converted to the full width of the field size.
Precision - For data, this numeric format type enables 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 22
Time, Standard Date, and Standard DateTime Format Editing

Date and Time Format Results


The Max Size attribute controls the display of the output for the Time format as shown in the
slide. The Standard Date and Standard DateTime formats enforce the user’s preferred format.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 23
Format Interaction

Considering the Interaction of Formatting


When planning your value set, consider the interaction between the value set and the segment
that will eventually use it. Optionally, try to keep identical the maximum size defined for the
value set and the display size defined for the flexfield segment. 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 24
Formatting Requirements for Translatable Value Sets

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 25
Planning Validation Strategy

Planning How to Validate Your Values


Which type of validation you use depends on the variability of the data and how the list of
acceptable values is processed.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 26
Planning Validation Strategy

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 27
Planning Value Sets and Their Values

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.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 28
Planning Dependent Value Sets

Planning Values for Dependent Value Sets


Because the values for a dependent value set interact with the values from an independent
value set, use the procedure outlined on the slide when planning your dependent value set.
Notice that you must define a default value for each group of dependent values.
Translatable dependent value sets behave like dependent value sets except that they must be
dependent on a translatable independent value set. A translatable independent value set can
have only translatable dependent value sets dependent on it.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 29
Defining Value Sets

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 that you can use.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 30
Predefined Value Sets

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 31
Using Existing Value Sets

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 32
Value Set Usage by Key Flexfields

Value Set Usage by Key Flexfields


col 'value set' for a40
col flexfield for a40
col structure for a30
col column for a32

select d.flex_value_set_name "Value Set",


a.id_flex_name "Flexfield",
e.id_flex_structure_name "Structure",
c.segment_name "Segment"
from fnd_id_flexs a,
fnd_id_flex_structures b,
fnd_id_flex_segments c,
fnd_flex_value_sets d,
fnd_id_flex_structures_tl e
where a.application_id = b.application_id
and a.id_flex_code = b.id_flex_code

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 33
and b.application_id = c.application_id
and b.id_flex_code = c.id_flex_code
and b.id_flex_num = c.id_flex_num
and c.flex_value_set_id = d.flex_value_set_id
and c.application_id = e.application_id
and c.id_flex_code = e.id_flex_code
order by d.flex_value_set_name, a.id_flex_name,
e.id_flex_structure_name;

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 34
Value Set Usage by Descriptive Flexfields

Value Set Usage by Descriptive Flexfields


select flex_value_set_name "Value Set",
descriptive_flexfield_name "Flexfield",
descriptive_flex_context_code "Structure",
end_user_column_name "Column"
from fnd_descr_flex_column_usages a,
fnd_flex_value_sets b
where a.flex_value_set_id = b.flex_value_set_id
and descriptive_flexfield_name not like '$SRS$%'
order by flex_value_set_name,
descriptive_flexfield_name,
descriptive_flex_context_code;

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 35
Defining a New Value Set

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 36
Defining a Dependent or Translatable Dependent Value Set

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 37
Selecting a Value Set for Value Definition

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 38
Defining Values for a Dependent or Translatable Dependent
Value Set

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 39
Defining Values for a Value Set

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 40
Modifying Value Definitions

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 41
Value Hierarchies

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 42
Value Hierarchies

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 43
Defining Value Hierarchies and Qualifiers

Defining Value Hierarchies and Qualifiers


Parent - Select this check box for parent values. Clear this check box for values that are not
parents of any other value.
Group - For parent values, select the rollup group to which you want to assign the value.
Level - Enter a description of this value’s relative level in your hierarchy structure. This level
description is for your purposes only.
Qualifiers - Navigate to the Qualifiers field to display the Segment Qualifiers window and
assign segment qualifiers to your values as appropriate. Examples of segment qualifiers for the
Accounting Flexfield include:
• Allow Budgeting
• Allow Posting
• Account Type

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 44
Summary

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 several 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. You can define this list yourself or
retrieve it from an application table.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 45
Copyright © Oracle Corporation, 2007. All rights reserved.

Using Value Sets


Chapter 19 - Page 46
Defining Descriptive
Flexfields
Chapter 20

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 2
Defining Descriptive Flexfields

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 3
Objectives

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
• Define the descriptive flexfield structure
• Define global segments
• Define context-sensitive segments as appropriate

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 4
Overview

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.
This lesson also 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 5
Planning a Descriptive Flexfield

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.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 6
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 7
Using Descriptive Flexfields

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.
• Flexfields 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 8
Typical Descriptive Flexfield Information

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 9
Some Oracle Applications Descriptive Flexfields

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 10
Identifying a Descriptive Flexfield

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 11
Determining the Descriptive Flexfield Name

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 12
Determining the Descriptive Flexfield Name

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 13
Determining Available Resources

Determining the Available Resources


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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 14
Planning Questions

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 15
Identifying Your Information

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 16
Grouping Information By Usage

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 17
Isolate Common Information

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 18
Determine Different Contexts

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 19
Descriptive Flexfield Components

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 20
Global Segments

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 21
Context-Sensitive Segments

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 22
Distinguishing Between Contexts

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 23
Reference and Context Fields

Using Reference and Context Fields


There are two design options for distinguishing between contexts:
• If there is an existing field on the base window or an existing profile option whose value
can be used to distinguish between contexts, it can be used as a reference field.
• If there is no existing field or profile option that can be used to automatically select the
context, you may choose to allow users to manually select the context.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 24
Using Reference Fields

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. Also, the
reference field must have the same internal name in all the forms where the flexfield is
used.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 25
Identifying Referenceable Columns

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 26
Using Context Fields

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.
A 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 context-sensitive
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 27
Synchronizing the Context Field Value with the Reference Field
Value

Synchronizing the Context Field Value with the Reference Field Value
You can optionally set up your flexfield so that the context field value is synchronized with the
reference field value. You may have instances where, when querying existing records, you
want the context field value to match the original reference field value, but with new records,
you want the context field value to be derived from the current reference field value.
For example, say the context field is Country Code (IN for India, AU for Australia, and so on).
This information should be constant for the lifetime of a given record, such as an Expense
Report; that is, it remains constant from the original data entry (and saving of the record) to
subsequent queries on the record.
In this example, the Country Code value could be captured as a profile option value specific to
the user (the reference field). The desired behavior of which Country Code value is used by the
descriptive flexfield may depend on the action at runtime. For example, say an expense report
is created by an employee in India, with a Country Code of IN. If payment processing is done
in Australia and the Australian (Country Code: AU) Payables Approver queries the Indian
employee's expense report, the expected default Country Code context field value is IN; it is
not derived from the Australian Payables Approver's profile option value of AU. However, if

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 28
the Australian Payables Approver enters in his/her own expense report, then the expected
default Country Code context field value is AU.
The context field value defaulting behavior is configurable for each descriptive flexfield. How
you configure each descriptive flexfield determines whether the old context field value is
retained or whether the new context information is accepted.
Here are the possible configurations:
• Context Field Synchronized and Displayed -The context value is always derived from the
reference field value. Users can see but not update the context field value, because they
should not be allowed to break the synchronization.
• Context Field Synchronized but Not Displayed - The context value is always derived from
the reference field value. The context field is hidden from the user.
• Context Field Not Synchronized and Not Displayed – The context field value is derived
from the reference field value the first time the descriptive flexfield value is touched.
Thereafter it is never synchronized with a new reference field value. Because the context
field is not displayed, users will not be able to update its value.
• Context Field Not Synchronized but is Displayed – The context field value is derived from
the reference field value the first time the descriptive flexfield value is touched. Thereafter
the context field value is not automatically synchronized with a new reference field value,
but users are allowed to update its value.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 29
Planning Flexfields: Global Segments Only

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 30
Planning Flexfields: Context Segments Only

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 31
Planning Flexfields: Global and Context Fields

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 32
Specifying the Flexfield Attributes

Specifying the Flexfield Attributes


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
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 33
Specifying the Context Field Information

Specify How the Context Is Determined


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.
Value Set – You can optionally associate a value set to specify valid values for the context
value.
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.
Reference Field - If you use a reference field, enter the name here in the format Block.field.
Use the pop-up list on this field to display a list of the fields on the base window that are most
likely to be referenced.
Required - Indicate whether a context field value is required.
Displayed - 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 above.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 34
Synchronize with Reference Field - Check this box if you want the context field value to be
always synchronized with the reference field value for this descriptive flexfield.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 35
Specifying the Segment Attributes

Specifying Segment Attributes


Specify the following attributes for each segment in the structure:
Number - The placement of the field on the window, from top to bottom.
Name - The internal name for this segment.
Window Prompt - The prompt to be displayed for this segment on the flexfield.
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.
Value Set - If you wish the validate the data entered through this segment, specify a value set
to perform validation checking.
Displayed - Clear this check box if you need to prevent the display of this field.
Enabled - Select this check box to mark this segment ready for processing.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 36
Storing Descriptive Flexfield Segments

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 37
Descriptive Flexfield Application Tables

Descriptive Flexfield Application Tables


This SQL*Plus query can be used to determine the application base table where a descriptive
flexfield stores its data. This is a partial report for one application (General Ledger -
application ID 101) and does not show any information for flexfields used with SRS.
TITLE APPLICATION_TABLE_NAME
------------------------------ ---------------------------
-
Accounting Calendar: Calendar GL_PERIOD_SETS
Accounting Calendar: Periods GL_PERIODS
AutoAccounting Rules GL_IEA_AUTOGEN_MAP
AutoAllocation Batch GL_AUTO_ALLOC_BATCHES
AutoPost Criteria
GL_AUTOMATIC_POSTING_OPTIONS
AutoReversal Criteria GL_AUTOREVERSE_OPTIONS
Automatic Posting Sets GL_AUTOMATIC_POSTING_SETS
Budget Types GL_BUDGET_TYPES
Budget Versions GL_BUDGET_VERSIONS
Budgetary Control Group: Group GL_BC_OPTIONS
Budgetary Control Group: Rules GL_BC_OPTION_DETAILS

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 38
Common Stocks: Share Activity GL_SHARES_ACTIVITY
Conversion Rate Types GL_DAILY_CONVERSION_TYPES

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 39
Specifying the Segment Detail Attributes

Specifying the Segment Detail Attributes


You can use this window to specify any additional attributes for the segment.
Validation Block Entries
Value Set - The name of the value set used to validate data entered through this segment.
Description - The description of this value set.
Default Type - If you wish to define a default value for this segment, select the data type here.
Default Value - Define the actual default here.
Required - Select this checkbox if a value for this segment is mandatory.
Security Enabled - Select this checkbox to turn on any security rules for this value set.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 40
Specifying the Segment Detail Attributes

Specifying the Segment Detail Attributes (continued)


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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 41
Specifying the Segment Detail Attributes

Specifying the Segment Detail Attributes (continued)


Prompts
List of Values - By default, this will be the same as the segment name. It should not be larger
than the Display Size.
Window - Specify the label that will appear to the left of this segment on the flexfield.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 42
Specifying Default Values

Specifying Segment Defaults - Examples


Default Type: Constant
Default Value: The constant specified.
Example: USA
Result: USA

Default Type: Current Date


Default Value: The date at the time of entry.
Example:
Result: AUGUST 01, 2007

Default Type: Current Time


Default Value: The Date/Time at the time of entry.
Example:
Result: 14:30:00 AUGUST 01, 2007

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 43
Default Type: Field
Default Value: The value in the specified field. Use the format block:field
Example: ORDER:LINE
Result: 3

Default Type: Profile


Default Value: The value of the specified profile option. Use the application name of the
profile option.
Example: GL_SET_OF_BOOKS_ID
Result: 101

Default Type: Segment


Default Value: The value returned by the specified previous segment.
Example: Company
Result: 01

Default Type: SQL Statement


Default Value: The value returned by the specified SQL statement. The statement must return
a single value. $PROFILES$ and $FLEX$ can be used in the statement.
Example: SELECT NAME FROM EMP WHERE JOB=CEO
Result: Jones

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 44
Defining a Descriptive Flexfield

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 45
Defining Value Sets

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 46
Locating the Flexfield Definition

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 47
Defining the Flexfield Header Attributes

Defining the Header Attributes


The header attributes you specify include:
Application - The application that owns the flexfield.
Title - The title displayed at the top of the flexfield.
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 - Specify a separator to be used when displaying concatenated segment
values.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 48
Defining Segment Attributes

Defining Segment Attributes


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 context-sensitive structure is
selected.
Name - Enter the name for this segment.
Window Prompt - Enter a prompt to show up on the flexfield window. The default is to use
the Name.
Column - Select the ATTRIBUTE column in the base table to hold this segment’s data. A pop-
up list for this field displays the columns available to you for definition.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 49
Specifying Validation and Field Sizes

Specifying Validation and Field Sizes


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.
Index Flag (Accounting Flexfield Only) - This is used with the General Ledger Optimizer
feature.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 50
Freezing and Compiling the Definition

Freezing and Compiling the Definition


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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 51
Defining Context Field Information

Defining Context Information


Define context information to determine 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 value set to specify valid values.
• 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.
• 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.
• 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 context-sensitive 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.
• Specify whether the context field is displayed. If you want to restrict the user from
choosing different contexts, you should not display the context field. If you use a

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 52
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 above.
• Specify whether the context field value should be synchronized with the reference field
value, if applicable.
• Enter the context values in the Context Field Values region. The names of these structures
must exactly match the values you expect to see in the context field.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 53
Defining Context-Sensitive Segments

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 54
Defining Values for a Value Set

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 55
Summary

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.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Descriptive Flexfields


Chapter 20 - Page 56
Defining Key Flexfields
Chapter 21

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 2
Defining Key Flexfields

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 3
Objectives

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 and optional key flexfield features
• Design a key flexfield structure
• Define the key flexfield structure and segment attributes
• Define flexfield qualifiers and segment qualifiers

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 4
Objectives

Lesson Topics
At the end of this lesson, you should be able to:
• Explain the purpose for cross-validation
• Define cross-validation rules and control the interaction between multiple rules
• Identify candidates for shorthand entry
• Plan and define useful shorthand aliases
• Enable shorthand entry
• Explain how flexfield security is accomplished
• Identify which flexfields are candidates for security
• Design a security plan
• Control interactions between security rules
• Define and assign security rules
• Enable security

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 5
Overview

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 specify flexfield
qualifiers and segment qualifiers. There are also several optional features of key flexfields you
may wish to implement.
This lesson covers the mechanics of the definition process.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 6
Overview

Overview, continued
This lesson describes additional flexfield options, including:
• Cross-validation - Cross-validation rules let you control the combination of values
entered for a key flexfield.
• Shorthand aliases - Shorthand aliases let you label certain groupings of values for a
multi-segment flexfield. Whenever you need one of these groupings of values, you can use
the alias for that grouping to enter the entire group.
• Security rules - Security rules let you 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 user’s 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 7
Intelligent Keys

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.
Because 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 8
Key Flexfields' Dual Purpose

Requirements for Key Flexfields


Key flexfields have a dual purpose. They must collect information required by Oracle
Applications and still allow for user configuration.
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 balancing segment of the Accounting Flexfield.
• Build unique IDs for use by the applications while giving users meaningful codes.
Provide Configuration Capability
• Tailor the flexfield to the company’s business practice instead of changing the practice to
fit the flexfield.
• Retain the information the company already keeps.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 9
Oracle Applications Key Flexfields

Key Flexfields Used by Oracle Applications (Partial List)


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

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 10
Implementing Key Flexfields

Implementing Key Flexfields: Procedure


The above slide displays 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 11
Key Flexfield Structures

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 12
Code Combinations

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 13
Storing Code Combinations

Storing Code Combinations


Each flexfield stores its code combinations in a database table. These database tables are called
code combinations tables. In the combinations table, there is one column for every key
flexfield segment. These columns are usually named SEGMENTn, where n is a number. 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 14
Key Flexfield Application Tables

Key Flexfield Application Tables


This SQL*Plus query can be used to show Oracle Applications key flexfields and the tables in
which they store their code combinations.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 15
Key Flexfield Qualifiers

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 configured, 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 16
Types of Qualifiers

Types of Key Flexfield Qualifiers


Qualifiers allow the user to retain the ability to configure 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 assigned to an accounting flexfield combination.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 17
Flexfield Qualifiers

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.
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.
Key Flexfields that Use Qualifiers
Here are some of the key flexfields that user qualifiers with their owning application:
• Accounting Flexfield (Oracle General Ledger)
• Location Flexfield, Asset Category Flexfield (Oracle Assets)
• SoftCoded Key Flexfield (Oracle Human Resources)

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 18
• Cost Allocation Flexfield (Oracle Payroll)
• Sales Territory Flexfield (Oracle Receivables)

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 19
Segment Qualifiers

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/Stockholder’s Equity, or Revenue

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 20
Other Key Flexfield Options

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 – Dynamic insertion allows users to enter new values in
display windows in addition to the typical code combination entry window.
• Cross-validation - Cross-validation rules let you control the combination of values
• Security rules - Security rules let you 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 user’s access to data.
• Shorthand aliases - Shorthand aliases let you label certain groupings of values for a multi-
segment flexfield. Whenever you need one of these groupings of values, you can use the
alias for that grouping to enter the entire group.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 21
Allowing Dynamic Insertion

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 can be displayed by many other windows.
On these related windows, however, the fields are typically read-only and not updateable.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 22
Cross-Validating Values

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. Thus you can prevent combinations of segment values that are illogical
or should not be allowed from being entered.
The slide shows an illogical combination of values for the Asset key flexfield being
disallowed.
Cross-validation is discussed in more detail later in this lesson.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 23
Using Shorthand Aliases

Using Shorthand Aliases to Speed Data Entry


If the same combination is frequently being entered into a multi-segment 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.
Entering a shorthand alias automatically inserts the values for that alias into the key flexfield.
Shorthand aliases are discussed in more detail later in this lesson.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 24
Securing Value Set Access

Securing Values
You may want to allow users to only enter or view specific values for flexfields.
You can create a security rule to restrict values available to a given responsibility. Once you
associate that rule to the appropriate responsibility, all users of that responsibility are restricted
to the values allowed by that security rule.
For example, 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 define a security rule to restrict the users of a particular responsibility to only access
item types appropriate for their responsibility. For example, the Household Goods Only
security rule allows access only to the FURN and APPL item types.
Security rules are discussed in more detail later in this lesson.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 25
Designing the Key Flexfield Layout

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 26
Designing Segments

Designing Key Flexfield Segments


Decide how each segment of the key flexfield should behave and what values to allow in each
segment.
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.
Required - Can users leave the segment without entering a value? Most key flexfield segments
require a value.
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.
Value Security - Should security rules for the value set apply to this segment?
Related Segments - Link segments with ranges of Low and High to enforce a relationship
between them.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 27
Specifying Default Values

Specifying Segment Defaults - Examples


Default Type: Constant
Default Value: The constant specified.
Example: USA
Result: USA

Default Type: Current Date


Default Value: The date at the time of entry.
Example:
Result: August 1, 2007

Default Type: Current Time


Default Value: The Date/Time at the time of entry.
Example:
Result: 14:30:00 AUGUST 01, 2007

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 28
Default Type: Field
Default Value: The value in the specified field. Use the format block:field
Example: ORDER:LINE
Result: 3

Default Type: Profile


Default Value: The value of the specified profile option. Use the application name of the
profile option.
Example: GL_SET_OF_BOOKS_ID
Result: 101

Default Type: Segment


Default Value: The value returned by the specified previous segment.
Example: Company
Result: 01

Default Type: SQL Statement


Default Value: The value returned by the specified SQL statement. The statement must return
a single value. $PROFILES$ and $FLEX$ can be used in the statement.
Example: SELECT NAME FROM EMP WHERE JOB=CEO
Result: Jones

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 29
Planning Decisions

Planning Decisions
Application Question: Does the application support different segment structures?
Related Question: How many structures are needed?

Application Question: How many segment columns are available?


Related Question: What segments are needed?

Application Question: What flexfield qualifiers does this flexfield use or need?
Related Question: Do segments correspond to each needed qualifier?

Application Question: Are dynamic inserts feasible?


Related Question: Who can create new combinations?

Application Question: Should cross-validation be enabled?


Related Question: Is protection from invalid combinations needed?

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 30
Application Question: Should shorthand flexfield entry be enabled?
Related Question: Are many combinations used repeatedly?

Application Question: Which value sets are available?


Related Question: How should the segments be validated?

Application Question: Which segments should use flexfield value security?


Related Question: Are some segment values privileged or applicable only for some users?

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 31
Planning Key Flexfield Values

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 32
Definition Procedure

Defining Key Flexfields: Procedure


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

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 33
Defining Value Sets

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 34
Accessing the Key Flexfield Definition

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 35
Specifying Flexfield Behavior

Specifying the Key Flexfield Behavior


Enabled - This enables shorthand entry of frequently used value combinations.
Segment Separator - Specify a segment separator character. Segment separators are especially
important for key flexfields since their values are often displayed concatenated.
Cross-Validate Segments - This enables cross-checking of segment value combinations.
Allow Dynamic Inserts - This allows new key value combinations to be dynamically created
and inserted into the table.
When you have defined the flexfield level attributes, click the Segments button to continue
defining individual segments for this structure.
Note: some key flexfields may require additional features to be defined.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 36
Defining Segment Attributes

Defining Segment Attributes


Use the Segments Summary window to define most of the segment attributes.
Number - This specifies the sequence in which the fields will appear on the window.
Name - The name by which this segment is known 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 prompt that will appear on the window. The segment name is the
default.
Column - Specify the SEGMENT column in the underlying base table that contains this
segment’s data. A pop-up list shows the SEGMENT columns available for use.
Displayed - If you choose not to display a segment, specify a default to populate it.
Enabled - This flags the segment as available for use.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 37
Defining Validation and Size Attributes

Defining Validation and Size Attributes


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.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 38
Defining Flexfield Qualifiers

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 39
Freezing and Compiling the Definition

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 40
Defining Value Set Values

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 41
Defining Segment Qualifiers

Defining Segment Qualifiers


Specify additional qualifiers at the value level when appropriate. For example, Allow
Budgeting is an Accounting Flexfield segment qualifier.
Whenever possible do not change a value, change its description. If reuse is not possible,
disable unused values. You cannot delete them.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 42
Cross-Validating Values

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 above slide displays an Asset Location flexfield with three fields for country, state, and
city information. Since Asset Location is a key flexfield, you could define a cross-validation
rule to ensure no one tries 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 43
Cross-Validation Rule Syntax

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 44
Data Type Specifications and Cross-Validation Rules

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

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 45
Preparing for Cross-Validation

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 46
Defining Cross-Validation Rules

Defining Cross-Validation Rules and Error Messages


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.
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 pop-up 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.
Change the Flexfield Definition - You must exit and sign on again or change responsibilities
to see any changes.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 47
Cross-Validation Reports

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.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 48
Comparing Cross-Validation and Security Rules

Interaction of Cross-Validation and Value Security Rules


Both cross-validation and value security control the data a user can enter. The above slide
displays 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

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 49
Using Shorthand Aliases

Using Shorthand Aliases to Speed Data Entry


Whenever you notice that you are frequently entering the same combination of values into a
multi-segment 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 50
Using Full and Partial Aliases

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 51
Typical Key Flexfields Using Aliases

Typical Key Flexfields Using Aliases


Because 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 52
Defining an Alias

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 53
Defining an Alias Template

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 54
Recompiling the Flexfield Definition

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 55
Flexfields: Shorthand Entry Profile Option

Flexfields: Shorthand Entry Values


The Flexfields: Shorthand Entry profile option controls the behavior of aliases at the user level.
The user has the ability to update this option as appropriate.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 56
Flexfields: Show Full Value Profile Option

Flexfields: Show Full Value Profile Option


The Flexfields: 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 57
Modifying Existing Alias Definitions

Modifying Alias Definitions


Since aliases are tied to the structure of the flexfield, any change to the flexfield structure
during setup 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 58
Securing Value Set Access

Controlling Access to Flexfield Values by 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 to data access privileges as well. Users
of the same responsibility generally need to see the same data.
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 responsibility’s security rule.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 59
Security and Value Sets

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, Pair, Translatable Independent, or Translatable
Dependent, 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.
• If you are using a parent and child value hierarchy with the Accounting Flexfield, you can
enable hierarchical value security on your value sets. With hierarchical value security,
any security rule that applies to a parent value also applies to its child values.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 60
Constructing Security Rules

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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 61
Specifying Acceptable Values

Specifying Security Rules


Whenever possible, restrict access to ranges of values. Plan values carefully to make security
rules easy to define.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 62
Using Multiple Clauses

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.
Example
The examples on the slide show two rules: one containing multiple clauses and one consisting
of only one clause.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 63
Rules with Overlapping Values

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 rule’s included values applies.
• If a value satisfies the criteria for both an include and an exclude, it is excluded.
Example
The slide shows two examples of security rules operating on a value set. The values approved
by the different rules are shown in italics.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 64
Rules Without Overlapping Values

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 not
any values that satisfy all the rules.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 65
Implementing Flexfield Security

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 66
Enabling Security for a Value Set

Enable Security for a Value Set


Specify either Non-Hierarchical Security or Hierarchical Security for the Security Type for the
value set.
Hierarchical security is only used with parent and child values with the Accounting Flexfield.
With hierarchical security, a security rule that applies to a parent value also applies to its child
values.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 67
Enabling Security for a Segment

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 68
Enabling Security for a Segment

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 69
Enabling Security for a Program Parameter

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 70
Defining Security Rules

Defining Security Rules


• To define security information for an existing value set, search for that value set’s
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 71
Assigning Security Rules

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 72
Assigning Security Rules

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 73
Defining Key Flexfields Summary

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.
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.
The additional requirements and options for key flexfields include:
• 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 74
Defining Key Flexfields Summary

Summary, continued
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. You can
combine cross-validation rules as needed.
Short aliases provide a way to speed entry of frequently used value combinations. Any key
flexfield is a candidate for shorthand alias entry.
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 flexfield’s segment.

Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 75
Copyright © Oracle Corporation, 2007. All rights reserved.

Defining Key Flexfields


Chapter 21 - Page 76
Using Advanced Validation
Capabilities
Chapter 22

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 2
Using Advanced Validation Capabilities

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 3
Objectives

Lesson Topics
A previous lesson discussed creating and using value sets to check user input. You performed
practices in which you defined value sets of the validation types None, Independent, and
Dependent.
In this lesson, you learn how to use values stored in applications tables for validation. You also
learn how to restrict the set of values 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

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 4
Overview

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

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 5
Advanced Validation Options

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

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 6
Table-Validated Value Sets

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 a 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.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 7
Defining a Table-Validated Value Set

Defining a Table-Validated Value Set


Match the format options to the values stored in the table when defining table-validated value
sets. Specify which table and which columns to use for this value set in the Validation Table
Information window.
Value Column - Specifies 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 – Contains the descriptions for the values in the Value column.
Hidden ID Column - Contains non-displayed 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.
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)

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 8
Restricting Values Retrieved from a Table

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 9
Limitations on Using SQL WHERE Clauses

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 10
Using Multiple Tables for Validation

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 11
Other Advanced Validation Options

Other Advanced Validation Options


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$.
• :$PROFILES$.profile_option_name
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.
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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 12
Using $PROFILES$

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 13
Using :block.field

Using :block.field to Refer to a Field on the Base Window


• 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.
• 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.
• Use only with Oracle Forms. OA Framework (HTML-based) pages do not support
:block.field.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 14
Using $FLEX$

Using $FLEX$ to Refer to a Value Used in a Previous Value Set


• 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 use 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 15
Cascading Dependencies Using $FLEX$

Using Cascading Dependencies


You can use the $FLEX$ keyword to create chains of validation checks called cascading
dependencies.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 16
Using Special Value Sets

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 17
Using Pair Value Sets

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 18
Summary

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.
Also, the current value of a profile option can 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.

Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 19
Copyright © Oracle Corporation, 2007. All rights reserved.

Using Advanced Validation Capabilities


Chapter 22 - Page 20
Appendix - Administering
Folders
Chapter 23

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 2
Appendix - Administering Folders

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 3
Objectives

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 4
Folders: Definition

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 5
Administering Folders: Topics

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 6
Assigning a Default Folder to a Responsibility

Assign a Default Folder to a Responsibility


(N) System Administrator responsibility > Application > Administer Folders
Note: You must create default folders before you can perform the following functions. For
information on creating default folders see
(Help) User’s Guide > Forms-Based Applications > Customizing the Presentation of Data in a
Folder.
Note: After you save a default folder definition for a folder set, that folder set no longer
appears in the list of values.
Form Fields
• Folder Set: Every folder set is associated with a particular folder block, and a user or
responsibility can have one default folder within each folder set. The folder set name
generally describes the records shown in the block; some blocks may have multiple sets of
folders associated with them.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 7
Assigning a Default Folder to a User

Assign a Default Folder to a User


(N) Application > Administer Folders
Note: After you save a default folder definition for a folder set, that folder set no longer
appears in the list of values.
Form Fields
• Source Type: Enter either User or Responsibility. Records entered in this window use the
source type of User. If one of the current user’s responsibilities has default folders
defined, the default folders are listed with a source type of Responsibility.
User defaults override Responsibility defaults. You cannot delete Responsibility default
folders in this window.
• Responsibility: The Responsibility that uses this default folder definition.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 8
Assigning Ownership of a Folder

Form Fields
(N) Application > Administer Folders
• Public: This check box governs the availability of the folder to all users.
• Anyone’s Default: Indicates whether this folder definition is used as a default by a user or
a responsibility. If it is a default definition, use Default Assignments to view the users and
responsibilities for which it is the default folder definition.
• Default Assignments: The users and responsibilities that use this folder definition as a
default.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 9
Deleting a Folder Definition

(N) Application > Administer Folders

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 10
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 11
Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Administering Folders


Chapter 23 - Page 12
Appendix - Incorporating a
Custom Program
Chapter 24

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 2
Appendix - Incorporating a Custom Program

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 3
Objectives

Lesson Aim
Oracle Applications uses concurrent programs to process and report on data stored in Oracle
Applications tables. These programs are secured, processed, and managed within the Oracle
Applications environment, using the operations that you have seen in other lessons. However,
you can take your custom applications and programs and integrate them into the Oracle
Applications environment as well. In that environment they can be secured and managed the
same way as regular Oracle Applications programs.
This lesson covers how to integrate user-developed programs into Oracle Applications.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 4
Using Custom Programs in Oracle Applications

Integrating Custom Programs with Oracle Applications


Although Oracle Applications provides you with a complete range of functionality, you may
need to develop and implement your own custom programs to perform specialized processing.
You can integrate such custom applications into the Oracle Applications environment so that
they are processed like all your other Oracle Applications programs and reports.
For example, a sales table used by Oracle Receivables can also be accessed by a user program
for special reporting needs. Such a user reporting program can be added to the Oracle
Applications environment.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 5
Assumptions for Incorporating a New Program

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 6
Components of a Concurrent Program

Components of a Concurrent Program


You need to define several components of a concurrent program when adding your custom
program to the Oracle Applications environment. A concurrent program consists of an
executable module—for example, an Oracle Reports program or a PL/ SQL procedure—and
the input parameters required by the program or procedure. A concurrent program must be
associated with either an existing Oracle application or a custom application. In most cases,
you will associate any custom concurrent programs with a registered custom application. This
protects your concurrent programs during an upgrade.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 7
Adding a Custom Program to Oracle Applications

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 8
Identifying the Executable

Identifying the Executable


(N) Concurrent > Program > Executable (Forms interface, using the System Administrator
responsibility)
The Concurrent Program Executable window prompts for the following information:
• Executable – The name for your concurrent program executable. In the Concurrent
Programs window you assign this name to a concurrent program to associate your
concurrent program with your executable logic.
• Short Name – The short name for your concurrent program executable.
• Application – The concurrent managers use the specified application to determine in
which directory structure to look for your execution file.
• Execution Method – Specifies the type of program, such as a PL/SQL procedure or an
Oracle Reports program. The execution method cannot be changed once the concurrent
program executable has been assigned to one or more concurrent programs in the
Concurrent Programs window.
• Execution File Name – The operating system name of your execution file.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 9
• Subroutine Name – The name of your C or Pro*C program subroutine. Only immediate
programs or spawned programs using the Unified C API use this field.
Note: Defining new immediate concurrent programs is not recommended. Use either a
PL/SQL stored procedure or a spawned C program instead.
• Execution File Path
• Stage Function Parameters button – Opens a window that allows you to enter
parameters for the Request set Stage Function. This button is only enabled when you
select Request Set Stage Function as you Execution Method.
For more information see:
(Help) Applied Technology > Oracle Applications System Administration > Configuration >
Overview of Concurrent Programs and Requests > Concurrent Program Executable Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 10
Creating the Concurrent Program

Concurrent Programs Window Fields


(N) Concurrent > Program > Define (Forms interface, using the System Administrator
responsibility)
The Concurrent Program window prompts for the following information:
• Program – A descriptive name for your concurrent program. This is the name you see
when you view your requests in the Requests window. If this concurrent program runs
through Standard Request Submission, you see this name in the Submit Requests window.
• Short Name – A short name that Oracle Applications can use to associate your program
with a concurrent program executable.
• Application – The program’s application determines what ORACLE username your
program runs in and where to place the log and output files.
• Enabled – Indicate whether users will be able to submit requests to run this program and
the concurrent managers will be able to run your program. Disabled programs do not
display in users’ lists, and do not appear in any concurrent manager queues.
• Executable: Name – The concurrent program executable for your program. The
executable is defined using the Concurrent Program Executable window.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 11
• Executable: Method – The execution method used by your concurrent program displays
in this field.
• Executable: Options – Contains options for SQL*Report programs.
• Executable: Priority – Priority for this program. If you do not assign a priority, the user’s
profile option Concurrent:Priority sets the request’s priority at submission time.
• Request: Type – Certain concurrent managers are specialized to run only certain request
types.
• Incrementor – For use by Oracle Applications internal developers only.
• MLS Function – The MLS function used by the program (if applicable). The Multilingual
Concurrent Request feature allows a user to submit a request once to be run multiple
tomes, each time in a different language. If this program utilizes this feature the MLS
function determines which installed languages are needed for the request.
• Use in SRS – Indicates whether this program can be run using Standard Request
Submission. If this box is checked, you must register the parameters of this program.
• Allow Disabled Values – For a program authorized for SRS submission, check this box to
allow a user to enter disabled or outdated parameter values.
• Run Alone – Check this box if your program is incompatible with other programs in its
logical database and should therefore be run alone.
• Restart on System Failure – Check this box if you want this program to be restarted
automatically when the concurrent manager is restored after a system failure.
• Enable Trace – turns on SQL tracing when program runs.
• NLS Compliant – Check this box if the program allows a request to reflect a language
and territory that are different from the language and territory that the user is operating in.
This option should be set only by the developer of the program. The program must be
NLS Compliant to utilize this feature. See: Oracle Applications Developer’s Guide.
• Output Fields – Specify the handling or output from executions of this program.
• Concurrent Programs Window Buttons
• Copy to… - Choose this button to create another concurrent program using the same
executable, request, and report information.
• Session Control – Specify options for the database session of the concurrent program
when it is executed. These options are used to optimize system performance.
• Incompatibilities – Opens the Incompatible Programs window to define which
programs should not be run when this program is running.
• Parameters – Opens the Program Parameters window.
For more information see:
(Help) Applied Technology > Oracle Applications System Administration > Configuration >
Overview of Concurrent Programs and Requests > Concurrent Programs Window
Note: You can also define concurrent programs in the Oracle Applications Framework
interface; using the System Administration responsibility, navigate to Concurrent (heading) >
Programs.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 12
Concurrent Program Parameters Window

Concurrent Programs Parameters Window Fields


(N) Concurrent > Program > Define > (B) Parameters
The Concurrent Program Parameters Window prompts you for the following information:
• Conflicts Domain - The parameter that holds the conflicts domain used by incompatible
programs. Incompatible programs may be incompatible because they run on the same
data; for example, a Set of Books. The Set of Books parameter would be the Conflicts
Domain.
• Security Group - Used in HRMS only.
• Sequence - The sequence number for the parameter that you are defining.
• Parameter - The parameter name.
• Enabled - Disabled parameters are not displayed at request submission time and are not
passed to your program.
• Validation Information: Value Set - Specify an independent, table, or non-validated
value set for use in checking values passed for this parameter.
• Validation Information: Default Type - If you intend to specify a default for this
parameter, declare the default type.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 13
• Validation Information: Default Value - For certain types of default, you can specify a
default value to use. This default value appears automatically when you enter the
parameter fields in the Validation region.
• Validation Information: Required - Choose this box if a value for this parameter is
required by your program.
• Validation Information: Enable Security - If the value set for this parameter does not
allow security rules, this field is display only. Otherwise, you can choose to apply any
security rules defined for this value set to affect your parameter list also.
• Validation Information: Range - Choose either Low or High if you want to validate
your parameter value against the value of another parameter in this structure.
• Display - Indicates whether to display this parameter in the Parameters window when a
user submits a request to run this program form the Submit Requests window.
• Display: Display Size – The field length in characters for this parameter. The user sees
and and fills in the field in the Parameters window launched from the Submit Request
window.
• Display: Description Size – The display length in characters for the parameter value
description.
• Display: Prompt – The prompt to appear in the Parameter window of the Submit Request
window.
• Display: Concatenated Description Size - The length for the parameter value description
field. This field displays all the parameter values as a concatenated string.
• Token – Refers to the name of a keyword or parameter for an Oracle Reports program.
Entries in this field are case-sensitive. Any values entered in this field must exactly match
the value expected by the Oracle Reports program.
For a complete description of the fields in this window see:
(Help) Applied Technology > Oracle Applications System Administration > Configuration >
Overview of Concurrent Programs and Requests > Concurrent Programs Window >
Concurrent Program Parameters Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 14
Associating a Program with a Request Group

Associate a Program with a Request Group


(N) Security > Responsibility > Request
Request Group Window Fields
For the definition of the fields in this window see:
(Help) Applied Technology > Oracle Applications System Administration > Configuration >
Overview of Concurrent Programs and Requests > Request Group Window

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 15
Submitting the Concurrent Program

(N) Requests > Run

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 16
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 17
Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating a Custom Program


Chapter 24 - Page 18
Appendix - Incorporating
Custom Help Files
Chapter 25

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 1
Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 2
Appendix - Incorporating Custom Help Files

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 3
Objectives

Lesson Aim
Oracle Applications uses an extensive network of help files to give users immediate online
assistance. You can customize these help files by manipulating the files supplied by Oracle, or
by adding your own to the system. This lesson covers how to integrate customized help files
into Oracle Applications.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 4
Customizing Help

Overview of Customizing Help Files


In order to customize help files you first must download them into an area for manipulation.
Oracle Applications provides the Help System Utility to download files. Oracle Applications
help files are in HTML format, making them easy to modify using a commercial web
browser/editor such as Netscape Navigator. You can also add HTML and GIF files of your
own.
Oracle Applications help files use a special link syntax that points the links to anchors within
files rather than to the files themselves. This method ensures that hypertext links will not be
broken if files are renamed or split. This lesson explains how to use this syntax, although it is
not required for your custom help files.
When your changes are complete, use the Help System Utility to upload the files back to the
appropriate Oracle Applications directory.
Rebuild the Search Index and use the Help Builder applet to update the navigation tree with
your new files.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 5
Oracle Applications Help System Utility

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 6
Help System Utility Setup: Define Directory Paths

Set Profile Options


Before using the Help System Utility you must define the upload and download directory
paths. Oracle Applications provides profile options for you to set these paths.
Use the profile option Help Utility Download Path to define the directory location to which
the Help System Utility will download files.
Use the Help Utility Upload Path to define the directory location from which your
customized files will be transferred back into the Oracle Applications Help System.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 7
Downloading Help Files

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 8
Identify Help Files for Customization

Identify Help Files


Help files are downloaded by file name. To identify the specific file that you want to
customize, open the document in the Oracle Applications Help System. Use the view source
function of your browser to view the HTML source code. The source information will include
the file name.
For example, the topic “ Downloading and Uploading Help Files” in the help system is found
by navigating from the Help Library Tree to Applied Technology > Oracle Applications
System Administration > Configuration > Customizing Help > Downloading and Uploading.
View the source of this file and you will see the following header comments:
<!-- Generated: 15/5/2007, postxslt.pl [1012] v1
Source: SYS00032663.xml
File: SYS00032663.htm
Context: nil
Tiers: NEVER
Pretrans: YES
Label: Release 12 -->
As you can see in the example, the file name is SYS00032663.htm.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 9
Identify the Language and Product of the Files

Identify the Language and Product of the Help Files


To identify the language and product of the help file, use the source document URL. The
source document URL contains the language, the product name, and the anchor or target name.
Using this help file as an example again, the URL contains the string
“OA_HTML/help/topics/iHelp/HelpServlet/US/FND/@ht_updown”.
The nodes in the above string identify the language as US, the product name as FND, and the
target name as ht_updown.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 10
Downloading Help Files for Editing

Downloading Help Files for Editing


To download files, use the Oracle Applications Help Administration page for the Help System
Utility. You can access it from the System Administration responsibility: Select “Help
Download” under Help Administration. The File Download page appears.
Follow these steps to download a single help file:
1. Select Single File Download.
2. Enter search criteria for the file you want.
3. Select the file you want from the search results, and select Download.
Follow these steps to download multiple help files:
1. Select Bulk Files Download.
2. Enter in the Target Directory and Filter Options as appropriate.
3. Select Download.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 11
Linking Help Files

Oracle Applications Special Link Syntax: Overview


The Oracle Applications help system supports a special syntax for hypertext links that keeps
them working even when files are renamed or split into parts.
Links in Oracle Applications help files point at a named anchor contained in the file rather than
the filename itself. The help system resolves the anchorname to file link dynamically, every
time a link is negotiated.
Information on which files contain which anchornames is put into the help system
automatically on upload. Authors must ensure that anchornames are unique across an
application’s help files to prevent duplicate links.
It is not required that you use Oracle’s special syntax for your custom help files. If you prefer,
you can always use conventional hypertext links based on filename.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 12
Special Syntax versus Conventional HTML

Using the Special Syntax


The conventional HTML example would allow the user to jump forward to a section with the
anchorname “widgets.”
Oracle Applications help files extend this HTML syntax to create links not only within, but
also between help files.
To link to a file that contains a particular named anchor, you simply place an “@” before the
anchorname. To link to the precise spot within the file where the anchor appears, you append a
pound sign followed by the anchorname, just as you would in conventional HTML.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 13
Cross-Application Links

Using the Special Links Syntax Across Applications


In the Oracle Applications help system, all help files associated with a particular application
exist in the same directory, as far as their URL is concerned. Help files associated with other
applications exist in directories named after the application’s short name. All these application
directories are at the same level in the help system.
To create a link that goes to a help file associated with a different application, you create a
relative link that goes up a level to the parent of all help application directories, and then back
down through the other application’s directory, before concluding with Oracle Applications’
special link syntax.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 14
Related Topics Links

Related Topics Links


Links are not limited to a single target in the Oracle Applications help system. You can point
your links at multiple topics and files by using Related Topics links.
When a user negotiates a Related Topics link, a page headed “Related Topics” appears
containing a list of the related page links.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 15
Related Topics Links Syntax

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 16
Uploading Your New or Changed Help Files

Note
If you have created a new application with new help files that you are uploading for the first
time, you must use the Generic File Manager Access Utility (FNDGFU) to upload these files.
See (Help) Applied Technology > Oracle Applications System Administration > Configuration
> Loaders > Generic File Manage Access Utility for additional information.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 17
File Upload Steps

File Upload Steps


There are four types of files that you would generally upload to the help system. These are:
• HTML files (all HTML files must have a .htm extension)
• GIF graphics files (must have a .gif extension)
• Adobe Acrobat Files (must have a .pdf extension)
• Cascading Style Sheets (must have a .css extension)
Follow these steps to upload a single customized help file:
1. Place the customized file in a location accessible from your desktop.
2. Navigate to the Help Upload page of the Help System Utility. From the System
Administration responsibility, select “Help Upload” under Help Administration. The File
Upload page appears.
3. Specify the file to upload.
4. Specify the application to which it belongs, and its customization level (typically 100 or
above, indicating it is a customized file).
5. Select Upload.
Follow these steps to upload multiple help files (bulk upload):
Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 18
1. Copy the customized files to the appropriate product folder in the upload directory.
For example, if you customized six help files for Accounts Receivable, copy the six files
to the <server location><Help Utility Upload Path>\US\AR directory. You must
copy the files to the correct product folder for the Oracle Applications Help System
Utility to place the files in the correct location within the Oracle Applications Help
System.
2. Navigate to the Help Upload page of the Help System Utility. From the System
Administration responsibility, select “Help Upload” under Help Administration. The File
Upload page appears.
3. Specify the Source Directory for the files.
4. Specify the application and the customization level (typically 100 or above, indicating
these are customized files).
5. Select Upload.
The Help Utility uploads the help files for the application you selected. All files located in
the directory for the selected language and application will be uploaded.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 19
Updating the Search Index

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 20
Creating Reports

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 21
Running Reports

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 22
Customizing Help Navigation Trees

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 23
Help Builder Functions

Help Builder
To access the Help Builder, you can use the System Administration responsibility and select
Help Builder under Help Administration.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 24
The Help Builder

The Help Builder User Interface


The Help Builder window default view consists of three panes. The left pane displays the tree
that is currently selected. Use this area to manipulate your tree by adding nodes, deleting
nodes, and dragging nodes into the positions desired.
The top right pane displays items matching the searches you have performed using the Find
Documents or Find Trees functions. Switch from the Trees to the Documents display by
clicking on the tabs.
The bottom right pane is the Properties Pane. This area displays the properties of the item
(root, node, or document) currently selected. Those properties displaying enabled fields can be
updated.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 25
Opening a Tree for Editing

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 26
Adding New Help Files to a Tree

Adding New Help Files to a Tree


Documents are listed by target name. Therefore if a file contains multiple targets the file will
be listed multiple times. Be sure to choose the target or anchorname that corresponds to the
topic you want to add.
If the topic you want to add is not the header target of the file, but a target within the
document, you must supply the special link syntax in the Data field of the Properties Pane.
For example, the target name might appear in the Data field as @ht_updown. To link directly
to this anchor from the tree you will add #ht_updown to the end of the anchorname. The
resulting entry in the Data filed will be @ht_updown#ht_updown.

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 27
Adding New Nodes to a Tree

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 28
For Further Information

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 29
Summary

Copyright © Oracle Corporation, 2007. All rights reserved.

Appendix - Incorporating Custom Help Files


Chapter 25 - Page 30
Guided Demonstrations and
Practices
Chapter 26

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 1
Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 2
Guided Demonstrations and Practices

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 3
Practice - Users
Overview
You are part of the final acceptance testing committee. Specifically, you have been assigned a
series of System Administration tasks that you will be implementing over the course of this final
week of testing.

Your task is to create an Application user that you will utilize over the course of your testing.

• Create the user

• Assign responsibilities to the user

• Test the user

In order to facilitate all the testing you will accomplish over this week, you will preface ALL
your exercises with your initials (e.g., JSCS for Jane S.C. Smith). This will help you find the
specific data you have created.

Tasks
Create the User

1. Use the information below to define your new user signon.

• User Name: YourInitialsUser (e.g., JSCSUSER)

• Password: WELCOME (re-enter to verify)

• Description: Your Name System Administrator

• Password Expiration: 30 days

• Effective Dates: Today

• Effective Dates: 3 month from today

Assign Responsibilities

2. Assign the following Responsibilities to your user.

• System Administrator

• System Administration

• Application Developer

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 4
• Functional Administrator

• Functional Developer

• General Ledger Super User

3. Accept the defaults for all other fields. Use the Security Group "Standard" for a
responsibility if none defaults in.

Test your User

4. Sign on again using your username with WELCOME as the password.

5. Change the password when prompted. You change the password by typing the old password,
(WELCOME), and then assigning a new password. You will re-type the new password to
verify.

6. Verify all the responsibilities you defined in Step 2 are available.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 5
Solution - Users
Create the User

Responsibility: System Administrator

1. Log in to Oracle Applications with user name “SYSADMIN” and password “SYSADMIN”.

2. Select the System Administrator responsibility under the “Applications” heading of the
Navigate region of the Personal Home Page.

3. Navigate to the Users form: (N) Security > User > Define.

4. Enter the fields as described in the instructions.

• User Name: YourInitialsUser (e.g., JSCSUSER)

• Password: WELCOME (re-enter to verify)

• Description: Your Name System Administrator

• Password Expiration: 30 days

• Effective Dates: Today

• Effective Dates: 3 month from today

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 6
Assign Responsibilities

5. Assign the following Responsibilities to your user.

• System Administrator

• System Administration

• Application Developer

• Functional Administrator

• Functional Developer

• General Ledger Super User

Note: Use the Direct Responsibilities tab. The Indirect Responsibilities are assigned via
Oracle User Management.

6. Click the Save icon to save your work. Your completed form should look similar to the
example shown in the slide.

Test your User

7. Close the Users form. Choose File > Exit Oracle Applications to return to the home page.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 7
8. Return to the login page.

9. Use your new login and password (WELCOME) to log in again. You will be prompted to
change your password. Be sure to note your user name and new password for use in later
practices.

10. Verify that you have the correct Responsibilities displayed, and select the System
Administrator Responsibility. (Note: Depending on your setup, the Home Page may differ
from the illustration).

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 8
Practice - Data Groups
Overview
Now that you have a functional user, your next assignment is to create a test area for
customizations. In order to do that, you will have to complete several steps.

• Register your custom application.

• Associate your new application to the Standard data group.

Tasks
Register your Custom Application

1. Create your new custom application. Remember to put your initials at the front of your data
entries to keep your data unique.

• Application: YourInitials Custom Application

• Short Name: Your Initials (e.g., JSCS)

• Base Path: FND_TOP (Note: For class purposes we are using a predefined basepath. If
you were defining a true custom application, this would be a unique basepath.)

• Description: YourInitials Custom Application

Associate Your Custom Application to the Standard Data Group

2. Query up the Standard Data Group from the database.

3. Associate your custom application to the Standard data group.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 9
Solution – Data Groups
Register your Custom Application

Responsibility: System Administrator

1. If not currently logged in, log in to Oracle Applications with your user.

2. (N) Application > Register

3. Enter your Application: YourInitials Custom Application (e.g., JSCS Custom Application)

4. Enter your Short Name: YourInitials (e.g., JSCS)

5. Enter the Basepath: FND_TOP

6. Enter your Description: YourInitials Custom Application

7. Save your work and close the form

Associate Your Custom Application to Standard Data Group

8. Navigate to (N) Security > ORACLE > DataGroup.

9. Place your cursor in the Data Group field and query the Standard data group by selecting
View from the application menu > Query By Example > Enter.

10. Enter “Standard” in the Data Group field and then execute the query by selecting View from
the application menu > Query By Example > Run.

11. Ensure your cursor is in the Application field and click the New toolbar icon or select New
from the File menu to add a row.

12. Select your custom application name from the list of values for the Application field.

13. Select APPS from the list of values for the Oracle ID field.

14. Save your work. Your window should look like the example shown below.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 10
Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 11
Practice - Menus
Overview
The committee wants you to test the Menu processes. Specifically, they want you to create a
System Auditor responsibility, and to create a custom menu to assign to that responsibility. In
this testing process you will implement the following.

• Create a custom menu with several functions and submenus

• View your custom menu using the Menu Viewer

• Create a System Auditor responsibility, and associate your new menu to that
responsibility

• Assign the System Auditor to a new user and test the user and responsibility.

Tasks
Create your Level 3 Menu

Menus in Oracle Applications must be created bottom-up. Your first task is to create your lowest
level menu.

1. Create a new menu. Remember to put your initials at the front of your data entries to keep
your data unique.

• Menu Name: YourInitials_FLEX_SECURITY (e.g., JSCS_FLEX_SECURITY)

• User Menu Name: YourInitials Flexfield Security (e.g., JSCS Flexfield Security)

• Menu Type: Standard

• Description: Define and Assign Flexfield Security Rules

Seq Prompt Function Description Grant


10 Define Flexfield Security Rules Define Flex Security Rules Checked
20 Assign Assign Flexfield Security Rules Assign Flex Security Rules Checked

Create your Level 2 Menu

2. Create a new menu. Remember to put your initials at the front of your data entries to keep
your data unique.

• Menu Name: YourInitials_RESPONSIBILITY (e.g., JSCS_RESPONSIBILITY)

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 12
• User Menu Name: YourInitials Responsibility (e.g., JSCS Responsibility)

• Menu Type: Standard

• Description: Define Responsibilities, Request Groups, and Security Rules

Seq Prompt Submenu Function Description Grant


10 Define Responsibilities Define Checked
Responsibilities Responsibilities
20 Request Group Request Groups Define Request Checked
Groups
30 Flexfield YourInitials Define and Assign Checked
Security Flexfield Security Flex Security Rules

Create your Level 1 Menu

3. Create a new menu. Remember to put your initials at the front of your data entries to keep
your data unique.

• Menu Name: YourInitials_TOP_SYSTEM_AUDITOR

• User Menu Name: YourInitials Top System Auditor

• Menu Type: Standard

• Description: Custom System Auditor Menu

Seq Prompt Submenu Description Grant


10 Users User Menu – System Define and Monitor Users Checked
Administrator GUI
20 Responsibilities YourInitials Define Responsibilities, Request Checked
Responsibility (i.e., Your Groups, Security Rules
Level 2 Menu)
30 Personal Profile Profile User Values View/Update Personal Profile Checked
Options
40 Requests Standard Report Run and View Requests, Define Checked
Submission and View Request Sets
report (privileged) 4.0

4. View your new menu in the Menu Viewer.

Create your System Auditor Responsibility

5. Create a new responsibility. Remember to put your initials at the front of your data entries to
keep your data unique.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 13
• Responsibility Name: YourInitials System Auditor

• Application: Application Object Library

• Responsibility Key: YourInitials_SYSTEM_AUDITOR (e.g.,


JSCS_SYSTEM_AUDITOR)

• Description: YourInitials System Auditor

• Effective Date: From: Today

• Effective Date: To: (leave blank)

• Available From: Oracle Applications (default)

• Data Group Name: Standard

• Data Group Application: Application Object Library

• Menu: YourInitials_TOP_SYSTEM_AUDITOR (i.e.,Your Level 1 Menu)

• Request Group: (leave blank)

Create your System Auditor User

6. Create a new user. Remember to put your initials at the front of your data entries to keep
your data unique.

• User Name: YourInitials_SYSTEM_AUDITOR

• Password: WELCOME

• Description: System Auditor

• Responsibility: YourInitials System Auditor (use the security group "Standard")

7. Test the new user, new responsibility, and new menu to ensure that they are working
properly.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 14
Solution - Menus
Create your Level 3 Menu

Responsibility: System Administrator

1. If necessary, log in to Oracle Applications and select the System Administrator


responsibility.

2. (N) Application > Menu.

3. Enter the appropriate data for your Level 3 menu.

• Menu Name: YourInitials_FLEX_SECURITY (e.g., JSCS_FLEX_SECURITY)

• User Menu Name: YourInitials Flexfield Security (e.g., JSCS Flexfield Security)

• Menu Type: Standard

• Description: Define and Assign Flexfield Security Rules

Seq Prompt Function Description Grant


10 Define Flexfield Security Rules Define Flex Security Rules Checked
20 Assign Assign Flexfield Security Rules Assign Flex Security Rules Checked

4. Save your work. You should see a note indicating that your request has been submitted to
recompile your menu. Click (B) OK to acknowledge the note. Your work should look
similar to the following.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 15
Create your Level 2 Menu

5. Click the New Record icon to create your Level 2 menu.

6. Enter the appropriate data for your Level 2 menu.

• Menu Name: YourInitials_RESPONSIBILITY (e.g., JSCS_RESPONSIBILITY)

• User Menu Name: YourInitials Responsibility (e.g., JSCS Responsibility)

• Menu Type: Standard

• Description: Define Responsibilities, Request Groups, and Security Rules

Seq Prompt Submenu Function Description Grant


10 Define Responsibilities Define Checked
Responsibilities Responsibilities
20 Request Group Request Groups Define Request Checked
Groups
30 Flexfield YourInitials Define and Assign Checked
Security Flexfield Security Flex Security Rules

7. Save your work and click (B) OK to the note window indicating that your request has been
submitted to recompile your menu in the database. Your work should look similar to the
following.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 16
Create your Level 1 Menu

8. Click the New Record icon to create your Level 1 menu.

9. Enter the appropriate data for your Level 1 menu.

• Menu Name: YourInitials_TOP_SYSTEM_AUDITOR

• User Menu Name: YourInitials Top System Auditor

• Description: Custom System Auditor Menu

• Menu Type: Standard

Seq Prompt Submenu Function Description Grant


10 Users User Menu – System Define and Monitor Checked
Administrator GUI Users
20 Responsibilities YourInitials Define Checked
Responsibility (i.e., Your Responsibilities,
Level 2 Menu) Request Groups,
Security Rules
30 Personal Profile User View/Update Personal Checked
Profile Values Profile Options
40 Requests Standard Report Run and View Checked
Submission and View Requests, Define
report (privileged) 4.0 Request Sets

10. Save your work and click (B) OK to the note window indicating that your request has been
submitted to recompile your menu in the database. Your work should look similar to the
following.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 17
11. Click the (B) View Tree… to see your new menu in the Menu Viewer. Your menu tree
should appear similar to the example shown in the slide. Close the Menu Viewer when done.

Create your System Auditor Responsibility

12. If necessary, log in to Oracle Applications and select the System Administrator
responsibility.

13. Navigate to (N) Security > Responsibility > Define

14. Enter the appropriate data for your responsibility.

• Responsibility Name: YourInitials System Auditor

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 18
• Application: Application Object Library

• Responsibility Key: YourInitials_SYSTEM_AUDITOR (e.g.,


JSCS_SYSTEM_AUDITOR)

• Description: YourInitials System Auditor

• Effective Date: From: Today

• Effective Date: To: (leave blank)

• Available From: Oracle Applications (default)

• Data Group Name: Standard

• Data Group Application: Application Object Library

• Menu: YourInitials Top System Auditor (i.e.,Your Level 1 Menu)

• Request Group: (leave blank)

15. Save your work. Your work should look similar to the following.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 19
Create your System Auditor User

16. If necessary, log in to Oracle Applications and select the System Administrator
responsibility.

17. Navigate to (N) Security > User > Define

18. Enter the appropriate data for your user.

• User Name: YourInitials_SYSTEM_AUDITOR

• Password: WELCOME

• Description: System Auditor

• Responsibility: YourInitials System Auditor

19. Save your work. Your work should look similar to the following.

20. Test the new user, new responsibility, and new menu to ensure that they are working
properly. Exit Oracle Applications and return to your home page.

21. Click on the Exit icon to open the login screen.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 20
22. Sign on again using your new login. You will be required to change your password. Note
your user name and password for future access.

23. From the home page, click on YourInitials System Auditor responsibility.

24. Verify that your Navigator menu contains the correct items. Your screen should appear
similar to the example shown in the slide.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 21
Practice - Query-Only Forms
Overview
The committee has evaluated the System Auditor responsibility you created. The responsibility
has access to create new Responsibilities and make changes to existing ones and the committee
has decided the auditor should have the ability to only view responsibilities. In this test process
you will do the following:

• Create a query-only version of the Responsibilities function

• Replace the Define Responsibilities function with this query-only function on your
existing System Auditor menu

Tasks
Create your Query-Only Function

1. Create a new Form Function. Remember to put your initials at the front of your data entries
to keep your data unique.

• Function: YourInitials_FNDSCRSP (e.g., JSCS_FNDSCRSP)

• User Function Name: Your Initials View Responsibilities

• Description: View Responsibilities

• Type: Form

• Form: Define Responsibility

• Application: Application Object Library

• Parameters: QUERY_ONLY=YES

Assign your Query-Only Function to your Existing System Auditor Menu

1. Query the YourInitials_RESPONSIBILITY menu in the Menu form. Replace the prompt,
function and description for Seq 10 Define Responsibilities.

Seq Prompt Function Description


Original 10 Define Responsibilities Responsibilities Define Responsibilities
YourInitials View
Replace with 10 View Responsibilities View Responsibilities
Responsibilities

2. Log in as your System Auditor and test your query-only form.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 22
Solution - Query-Only Forms
Create your Query-Only Function

Responsibility: System Administrator

1. If necessary, log in to Oracle Applications and select the System Administrator


responsibility.

2. (N) Application > Function.

3. Enter the appropriate data for your new Form Function.

Description tab:
− Function: YourInitials_ FNDSCRSP (e.g., JSCS_FNDSCRSP)
− User Function Name: YourInitials View Responsibilities
− Description: View Responsibilities

Properties tab:
− Type: Form
− Maintenance Mode Support: None
− Context Dependence: Responsibility

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 23
Form tab:
− Form: Define Responsibility
− Application: Application Object Library
− Parameters: QUERY_ONLY=YES

4. Save your work. Your work should look similar to the following.

Assign your Query-Only Function to your Existing System Auditor Menu

5. If necessary, log in to Oracle Applications and select the System Administrator


responsibility.

6. Navigate to (N) Application > Menu.

7. Query the YourInitials_RESPONSIBILITY menu in the Menu form.

• Put the form in query mode by pressing F11 or by selecting (M) View > Query by
Example > Enter.

• Enter YourInitials_RESPONSIBILITY in the Menu Name field and execute your query
by pressing Ctrl-F11 or by selecting (M) View > Query by Example > Run.

8. Replace the prompt, function and description for Seq 10 Define Responsibilities.

Seq Prompt Function Description


Original 10 Define Responsibilities Responsibilities Define Responsibilities
YourInitials View
Replace with 10 View Responsibilities View Responsibilities
Responsibilities

9. Save your work. Your work should look similar to the following.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 24
10. Exit the Personal Home Page and Oracle Applications.

11. Log in as YourInitials System Auditor.

12. Your menu should be similar to the example shown in the slide.

13. Test your query-only form.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 25
Navigate to (N) View Responsibilities to open the query-only Responsibilities window. To
perform a search on responsibilities, select View > Find… from the application menu to
open the “Find” responsibilities window. You can query up a responsibility, for example
“System Administrator”, and view the details of the selected responsibility in the read-only
Responsibilities window without being able to update it.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 26
Practice - Responsibilities
Overview
The committee wants you to test creating a special, limited responsibility for an assistant System
Administrator. The steps are as follows:

• Create a new responsibility

• Modify the responsibility by excluding functions and menus from its menu

• Assign the new responsibility to a new user

• Assign the new responsibility to your existing user

Tasks
Create New Responsibility

1. Create a new responsibility. Remember to put your initials at the front of your data entries to
keep your data unique.

• Responsibility Name: YourInitials Assistant System Administrator

• Application: Application Object Library

• Responsibility Key: YourInitials_ASST_SYSADMIN (e.g.,


JSCS_ASST_SYSADMIN)

• Description: Assistant System Administrator

• Available From: Oracle Applications

• Data Group: Standard

• Data Group Application: Application Object Library

• Menu: Navigator Menu - System Administrator GUI

• Request Group: (leave blank)

Exclude Functions from Menu

2. Modify access to certain menus and functions for your new Responsibility by excluding the
items below. Menu or Function Names to exclude:

• Function, Monitor Application Users

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 27
• Function, Responsibilities

• Function, Web Enabled PL/SQL

• Menu, NAVSECVAL4.0

• Menu, ORACLE Menu – System Administrator GUI

• Menu, AuditTrail Menu – System Administrator GUI

• Menu, Concurrent Menu – System Administrator GUI

• Menu, Profile Menu – System Administrator GUI

• Menu, Application Menu – System Administrator GUI

• Menu, Install Menu – System Administrator GUI

• Menu, Workflow Administrator

Assign Responsibility to New User

3. In order to test this new responsibility, create a new user signon for your assistant system
administrator and assign your newly created responsibility to this user. Use the information
listed below.

• User Name: YourInitials_ASSIST_SA (e.g., JSCS_ASSIST_SA)

• Password: WELCOME (re-enter to verify)

• Description: YourInitials Assistant System Administrator

• Choose the Responsibility: YourInitials Assistant System Administrator (specify


security group "Standard")

4. Once you have defined it, sign off and back on using the new signon. Check that all the
specialized responsibilities and exclusions that you intended apply to this new user.

Add Responsibility to Existing User

5. Query your user (YourInitialsUser) you created, and add this responsibility to that user.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 28
Solution - Responsibilities
Create New Responsibility

Responsibility: System Administrator

1. If not currently logged in, log in to Oracle Applications with your user.

2. (N) Security > Responsibility > Define.

3. Enter the following data for your responsibility:

• Responsibility Name: YourInitials Assistant System Administrator

• Application: Application Object Library

• Responsibility Key: YourInitials_ASST_SYSADMIN

• Description: Assistant System Administrator

• Available From: Oracle Applications

• Data Group: Standard

• Data Group Application: Application Object Library

• Menu: Navigator Menu – System Administrator GUI

4. Save your work.

Exclude Functions from Menu

5. Navigate to the Menu Exclusions tab of the window.

6. Click on Type of exclusion – Function or Menu – then use the list of values to select the
appropriate function or menu to exclude in the name column. Continue until all items listed
are excluded.

Note: For each of the responsibilities shown below, ignore the Excluded Items and
Security Attributes tabbed regions.

• Function, Monitor Application Users

• Function, Responsibilities

• Function, Web Enabled PL/SQL

• Menu, NAVSECVAL4.0

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 29
• Menu, ORACLE Menu – System Administrator GUI

• Menu, AuditTrail Menu – System Administrator GUI

• Menu, Concurrent Menu – System Administrator GUI

• Menu, Profile Menu – System Administrator GUI

• Menu, Application Menu – System Administrator GUI

• Menu, Install Menu – System Administrator GUI

• Menu, Workflow Administrator

7. Click Save to save this responsibility.

8. Close the Responsibilities form.

Assign Responsibility to New User

9. Navigate to (N) Security > User > Define

10. Use the information listed below to create your new assistant system administrator user:

• User Name: YourInitials_ASSIST_SA (e.g., JSCS_ASSIST_SA).


Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 30
• Password: WELCOME (re-enter to verify).

• Description: YourInitials Assistant System Administrator

• Responsibility: YourInitials Assistant System Administrator

11. Save your work.

12. Close the Users form.

13. Exit Oracle Applications and exit the home page.

14. Enter your new user name and password. You will be prompted to change your password.

15. From the home page, select YourInitials Assistant System Administrator responsibility.

16. Review the menu items for your new responsibility and verify the correct items appear.

Add Responsibility to Existing User

17. Navigate to the Users form (N) Security > User > Define.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 31
18. Put the form in query mode by pressing F11 or by selecting
(M) View > Query by Example > Enter.

19. Enter the user name you created in the Name field (i.e., YourInitialsUser) and execute your
query by pressing Ctrl-F11 or by selecting (M) View > Query by Example > Run.

20. Navigate to the Responsibilities tab.

21. Insert a new record by clicking the New icon on the toolbar, and select YourInitials
Assistant System Administrator.

22. Save your work.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 32
Guided Demonstration - Data Security Policy Example
Responsibility: User Management

This guided demonstration shows a data security policy implementation and its definition.

View a Data Security Policy Implementation

You must log in as the SYSADMIN user to access the User Management responsibility.

1. Navigate to the function Roles & Role Inheritance.

2. Expand Roles & Responsibilities on this page.

3. Expand Security Administration.

4. Click on “Update” for the Customer Administrator role.

5. Click on the “User Administration privileges” link to show details for the grant defined for
the set of users shown, “People in the Administrator's own Organization”.

Responsibility: Functional Developer

1. Navigate to the Functional Developer responsibility.

2. In the Objects page, perform a search for the object with the code
UMX_PERSON_OBJECT.

3. Click on the object name to view its details.

4. Navigate to the Object Instance Set subtab.

5. Click on the name “People in the Administrator’s own Organization” to view the details of
this object instance set.

6. Note the predicate. The SQL statement queries the set of users based upon the party
relationships defined in TCA (the organization).

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 33
Guided Demonstration - Creating Role Categories
Login: sysadmin/sysadmin

Responsibility: User Management

1. (N) Role Categories > (B) Update

2. Select (B) Add Another Row in the Lookup Codes region.

3. Enter the required information in the Lookup Codes fields. In this case, the name is
“Administration” and the description can be something about a general category for
administration roles.

4. Save the change by selecting (B) Apply.

5. Click the Role Categories tab to view the newly created “Administration” role category.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 34
Practice - Creating a Role and Placing it in a Role Inheritance
Hierarchy
Overview
In this practice, you will create a new role and place it in a role inheritance hierarchy.

Business Scenario:

Vision Inc. is a computer systems company. The company offers its customers a full range of
computer systems and office equipment. Additionally, the company offers an array of services to
support its customers' products. Vision has decided to implement Oracle User Management to
have a flexible and scalable system for managing access privileges and user accounts.

The company wants to distribute some of its security and administrative tasks to local
administrators instead of having the system administrator retain them exclusively. To accomplish
this, the company will create roles for a partner administrator, a security administrator, and a
customer administrator. Individuals who are assigned these roles will manage a discrete subset
of the company’s users, roles, and external contacts.

As part of the implementation team, you need to perform the following tasks:

• Create a Customer Administrator role

• Place this role in a role inheritance hierarchy

• Setup delegated Administration for the role

• Grant the User Maintenance UIs to the role

• Grant the appropriate permissions for the role so that assignees can perform specific
actions on the users they manage

• Create a registration process for the role so that users can request it via self service

• Log on as a user and request the role

Assumptions
• Some parts of Oracle User Management have already been implemented, including the
Partner Administrator and Security Administrator roles as well as the User Management
responsibility and several permissions.

• Oracle User Management ships with seeded roles including Partner Administrator,
Security Administrator, and Customer Administrator. Assume for the purposes of this
course, the Customer Administrator role does not exist, and the students must create it.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 35
Tasks
Assign Security Administrator Role

Assign the Security Administrator Role to the “YourInitialsUser” to enable the User
Management responsibility for your user.

Create a Role Within a Desired Role Category

Create a customer administrator role called “YourInitials Course Administrator” within the
Security Administration Role Category.

Place the Role in a Role Inheritance Hierarchy

After creating your Course Administrator role, you will need to place it in a role inheritance
hierarchy so that it is inherited by the Partner Administrator role and it inherits the User
Management Responsibility.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 36
Solution – Creating a Role and Placing it in a Role Inheritance
Hierarchy
Assign the Security Administrator Role to Your User

Login: sysadmin/sysadmin

Responsibility: User Management

1. (N) User Management > Users

2. Search User Name: YourInitialsUser (e.g., JSCSUSER)

• Click (B) Go

• Select the Update icon

3. Click (B) Assign Roles

• Search by Roles and Responsibilities: Security

• Click (B) Go

• Select Security Administrator

• Click (B) Select

• Justification: Provide a justification (e.g., job requires role)

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 37
4. Click (B) Apply to apply and save your work.

5. Logout as the sysadmin user.

6. Login as YourInitialsUsers (e.g., JSCSUSER), verify you have the User Management
responsibility

Create a Role within a Role Category

Responsibility: User Management

7. (N) Roles & Role Inheritance > (B) Create Role

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 38
8. Enter the following information:
− Category: Security Administration
− Role Code: YourInitials_COURSE_ADMINISTRATOR
− Display Name: YourInitials Course Administrator
− Description: Duplicate of the Customer Administrator role for course purposes.
− Application: Application Object Library
− Date From: Leave the default date
− Date To: Leave Blank

9. Click (B) Apply to save your work.

Place the Role in a Role Inheritance Hierarchy

10. Expand “All Roles, Responsibilities, and Groups” category.

11. Expand “Roles and Responsibilities” category.

12. Expand “Security Administration” category.

13. Select the Add Node icon on the “Partner Administrator” role.

14. Expand “Root Node”.

15. Expand “Security Administration” category.

16. Quick select “YourInitials Course Administrator” role.

17. Expand “Partner Administrator” role.

18. Select the Add Node icon on “YourInitials Course Administrator” role beneath the “Partner
Administrator” role.

19. Enter “FND%UMX” into the Code field under the Search region, and then select (B) Go.

20. Quick select “User Management” role.

21. Verify “YourInitials Course Administrator” role inherits the User Management
responsibility which is inherited by the Partner Administrator role by viewing it in the Role
& Responsibility Hierarchy area.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 39
Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 40
Practice - Assigning Permission Sets to the Role
Overview
In this practice, you will assign permission sets to your course administrator role.

Business Scenario:

Vision Inc. is a computer systems company. The company offers its customers a full range of
computer systems and office equipment. Additionally, the company offers an array of services to
support its customers' products. Vision has decided to implement Oracle User Management to
have a flexible and scalable system for managing access privileges and user accounts.

The company wants to distribute some of its security and administrative tasks to local
administrators instead of having the system administrator retain them exclusively. To accomplish
this, the company will create roles for a partner administrator, a security administrator, and a
customer administrator. Individuals who are assigned these roles will manage a discrete subset
of the company’s users, roles, and external contacts.

As part of the implementation team, you need to perform the following tasks:

• Create a Customer Administrator role

• Place this role in a role inheritance hierarchy

• Setup delegated Administration for the role

• Grant the User Maintenance UIs to the role

• Grant the appropriate permissions for the role so that assignees can perform specific
actions on the users they manage

• Create a registration process for the role so users can make a self service request

• Log on as a user and request the role

Assumptions
• Some parts of Oracle User Management have already been implemented, including the
Partner Administrator and Security Administrator roles as well as the User Management
responsibility and several permissions.

• Oracle User Management ships with seeded roles including Partner Administrator,
Security Administrator, and Customer Administrator. Assume for the purposes of this
course, the Customer Administrator role does not exist, and the students must create it.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 41
Tasks
Assigning the User Maintenance UIs to the Course Administrator Role

Grant User Maintenance UIs to “YourInitials Course Administrator” role.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 42
Solution – Assigning Permission Sets to the Role
Assigning the User Maintenance UIs to the Course Administrator Role

Responsibility: User Management

1. (N) Roles & Role Inheritance.

2. In the Role Inheritance region, expand “Roles & Responsibilities” category.

3. Expand “Security Administration” category.

4. Click the Update icon next to “YourInitials Course Administrator” role and then click (B)
Create Grant.

5. Enter a name and description for the grant (for example, UMX Menus) and click (B) Next.

6. In the Set field, enter “User Maintenance UIs”, and then click (B) Next.

7. Review your work

8. Click (B) Finish.

9. Click (B) OK to the confirmation message to acknowledge that the grant has been
successfully created.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 43
Practice - Setting Up Delegated Administration
Overview
In this practice, you will set up delegated administration for your course administrator role.

Business Scenario:

Vision Inc. is a computer systems company. The company offers its customers a full range of
computer systems and office equipment. Additionally, the company offers an array of services to
support its customers' products. Vision has decided to implement Oracle User Management to
have a flexible and scalable system for managing access privileges and user accounts.

The company wants to distribute some of its security and administrative tasks to local
administrators instead of having the system administrator retain them exclusively. To accomplish
this, the company will create roles for a partner administrator, a security administrator, and a
customer administrator. Individuals who are assigned these roles will manage a discrete subset
of the company’s users, roles, and external contacts.

As part of the implementation team, you need to perform the following tasks:

• Create a Customer Administrator role

• Place this role in a role inheritance hierarchy

• Setup delegated Administration for the role

• Grant the User Maintenance UIs to the role

• Grant the appropriate permissions for the role so that assignees can perform specific
actions on the users they manage

• Create a registration process for the role so users can make a self service request

• Log on as a user and request the role

Tasks
Assigning the User Maintenance UIs to the Course Administrator Role

Grant User Maintenance UIs to “YourInitials Course Administrator” role.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 44
Solution – Setting Up Delegated Administration
Responsibility: User Management Responsibility

1. (N) Roles & Role Inheritance

• In the Role Inheritance region, expand “Roles & Responsibilities” category.

• Expand “Security Administration” category.

2. Locate “YourInitials Course Administrator” role and click the Update icon.

Defining User Administration for This Role

Define the users that can be managed through this role by performing the following:

3. Click (B) Security Wizards.

4. Click the Run Wizard icon for "User Management: Security Administration Setup".

5. Verify User Administration tab is selected and click (B) Add More Rows.

6. In the Users field, select “People in the Administrator’s Own Organization”

7. In the Permissions field, select “All User Administration Privileges”

Defining Organization Administration for This Role

Define the Roles that can be managed by this role by performing the following:

8. Select Organization Administration tab and then click (B) Assign Organization Privileges.

9. Perform a wildcard search in the Search By Organization Privileges, select “View the
Administrator’s Own Organization”

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 45
Defining Role Administration for This Role

Define the Roles that can be managed through this role by performing the following:

10. Select the Role Administration tab.

11. In the Available Roles area, search for “YourInitials Course Administrator” role and place it
in the Selected Roles area. Assignees of “YourInitials Course Administrator” role will be
able to grant “YourInitials Course Administrator” role to other users.

12. Optionally perform a wildcard search (e.g., %Support%) on Miscellaneous in the Type field.
Then select one or more roles from the search results, move them to the Select Roles area.
Following is an example:

13. Click (B) Apply. The assignee of “YourInitials Course Administrator” role will be able to
assign the selected roles to the users that he or she can manage.

14. Click (B) Apply.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 46
Practice - Testing Delegated Administration
Overview
In this practice, you will test delegated administration for your Course Administrator role.

Business Scenario:

Vision Inc. is a computer systems company. The company offers its customers a full range of
computer systems and office equipment. Additionally, the company offers an array of services to
support its customers' products. Vision has decided to implement Oracle User Management to
have a flexible and scalable system for managing access privileges and user accounts.

The company wants to distribute some of its security and administrative tasks to local
administrators instead of having the system administrator retain them exclusively. To accomplish
this, the company will create roles for a partner administrator, a security administrator, and a
customer administrator. Individuals who are assigned these roles will manage a discrete subset
of the company’s users, roles, and external contacts.

As part of the implementation team, you need to perform the following tasks:

• Create a Customer Administrator role

• Place this role in a role inheritance hierarchy

• Setup delegated Administration for the role

• Grant the User Maintenance UIs to the role

• Grant the appropriate permissions for the role so that assignees can perform specific
actions on the users they manage

• Create a registration process for the role so that users can self service request it

• Log on as a user and request the role

Tasks
Assigning the Course Administrator Role to a User

Query a user in the system and assign the user “YourInitials Course Administrator” role.

View Role Capabilities by Logging on as the User to Whom the Role is Assigned

Log on as the user to whom the role is assigned and view that user’s administrative capabilities.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 47
Solution – Testing Delegated Administration
Assigned Accounts:

Over the course of the next two practices, each workstation team will need to have individual
accounts that they (and only they) use. Without this exclusivity, students will collide during the
exercise. Please use the following email addresses to locate the user accounts assigned to your
workstation.

Number Account Email Name Company

1 betty.lewis@hilmanassoc.com Betty Lewis Hilman and Associates

2 hwolfschmidt@hilmanassoc.com Hilda Wolfschmidt Hilman and Associates

3 ely.alter@test.com Ely Alter A.C. Network

4 ckim@acnetworks.com Carlo Kim A.C. Network

5 jimjohnson_bworld@yahoo.com Jim Johnson Business World

6 bill_w_smith@yahoo.com Bill Smith Business World

7 sturakhi@bw.com Satish Turakhia Business World

8 skyzer@abccorp.com Stacey Kyzer ABC Corporation


Americas

9 lpetersent@ace.test.com Lydia Petersen Ace Communications

10 michaelzrobertson@yahoo.com Michael Robertson Business World

11 guest1_crm@hotmail.com Doug Jackson A.C. Networks

12 rabbott@visionhr.com Rachel Abbott PEL Consultants, LLP

13 jsnyder@cds.com John Snyder CDS, Inc.

14 swhaling@worldwidecomm.com Sean Whaling Worldwide


Communications

15 vtyagi@test.com Vishal Tyagi SmartBuy

Instructor Buddy.holly@test.com Bill Holly Big 4 Rental

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 48
Assigning the Course Administrator Role to a User

Responsibility: User Management

1. (N) Users

2. In the Email field within the search area enter “<your assigned email address per list>” and
click (B) Go.

3. The person with your assigned email address is displayed in the result set. Click the Create
User icon for this person.

Note: The name displayed in the search result is a person in the system and not a user. As
part of this procedure you will assign this person a user account that includes your Course
Administrator role.

4. Choose the “Enter Manually” radio button.

5. Reset the user’s password by typing “welcome1” in the Password and Confirm Password
fields and click (B) Submit.

6. Query the user again by searching for your assigned user’s email address such as
‘jsnyder@cds.com’.

7. Click the Update icon next to the user and then click the (B) Assign Roles.

8. In the search window, search for “YourInitials Course Administrator” role. Select this role
and click (B) Select.

9. Enter a justification in the Justification filed and click (B) Apply. You will see a
confirmation message indicating you have successfully updated the role.

Logging on as the User to Whom the Course Administrator Role is Assigned and
Viewing that User’s Administrative Capabilities

10. Log out of the system and log on as your assigned user’s address by entering the following:

• User Name: your assigned email address (such as ‘jsnyder@cds.com’)

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 49
• Password: welcome1

11. When prompted, reset the user’s password from “welcome1” to “welcome”.

12. You should be able to view and use the User Maintenance UIs upon logging in.

Observe: The Organization field is populated with the name of the organization to which
your user is associated. If your assigned user is associated with more than one organization,
you will see a drop-down allowing you to select which organization’s user you want to
manage. Following is an example of what you would see:

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 50
Practice - Creating a Registration Process for the Role
Overview
In this practice, you will create a registration process for the Customer Administrator role.

Business Scenario:

Vision Inc. is a computer systems company. The company offers its customers a full range of
computer systems and office equipment. Additionally, the company offers an array of services to
support its customers' products. Vision has decided to implement Oracle User Management to
have a flexible and scalable system for managing access privileges and user accounts.

The company wants to distribute some of its security and administrative tasks to local
administrators instead of having the system administrator retain them exclusively. To accomplish
this, the company will create roles for a partner administrator, a security administrator, and a
customer administrator. Individuals who are assigned these roles will manage a discrete subset
of the company’s users, roles, and external contacts.

The company has created the Customer Administrator Role (referred to here as Course
Administrator), defined its delegated administration (data security policies) and assigned it, the
appropriate permission sets as well as the User Maintenance UIs. The company now wants to
define a registration process for this role so users can make a self service request.

As part of the implementation team, you need to perform the following tasks:

• Create a Customer Administrator role

• Place this role in a role inheritance hierarchy

• Set up delegated Administration for the role

• Grant the User Maintenance UIs to the role

• Grant the appropriate permissions for the role so that assignees can perform specific
actions on the users they manage

• Create a registration process for the role so users can make a self service request

• Log on as a user and request the role

Tasks
Creating a Registration Process for Your Course Administrator Role

Create a registration process and tie it to “YourInitials Course Administrator” Role.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 51
Solution – Creating a Registration Process for the Role
Enter a Description of the Registration Process

Responsibility: User Management

1. Login: YourInitialsUser

2. (N) Registration Processes > (B) Create Registration Process

3. Enter the following information and then click (B) Next:

• Role: Search for “YourInitials Course Administrator” role

• Type: Additional Access (Self Service)

Note: the Registration Process Code, Display Name, and Description fields should be
populated automatically based on the selected role.

• Click (B) Next.

4. In the Notifications field, select “User Management: Additional Access Notification


workflow start” and click (B) Next.

5. When you choose to create a registration process for existing users, you can specify a
specific group of users for whom the registration process is available. For the purposes of
this course, select “All Users” from Eligible Users radio list instead of choosing a specific
group of users. Then click (B) Submit.

You should see a confirmation message populated indicating the registration process has
been successfully created.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 52
Practice - Testing the Registration Process for the Role
Overview
In this practice, you will test the registration process you created for the Customer Administrator
role.

Business Scenario:

Vision Inc. is a computer systems company. The company offers its customers a full range of
computer systems and office equipment. Additionally, the company offers an array of services to
support its customers' products. Vision has decided to implement Oracle User Management to
have a flexible and scalable system for managing access privileges and user accounts.

The company wants to distribute some of its security and administrative tasks to local
administrators instead of having the system administrator retain them exclusively. To accomplish
this, the company will create roles for a partner administrator, a security administrator, and a
customer administrator. Individuals who are assigned these roles will manage a discrete subset
of the company’s users, roles, and external contacts.

As part of the implementation team, you need to perform the following tasks:

• Create a Customer Administrator role

• Place this role in a role inheritance hierarchy

• Set up delegated Administration for the role

• Grant the User Maintenance UIs to the role

• Grant the appropriate permissions for the role so that assignees can perform specific
actions on the users they manage

• Create a registration process for the role so that users can self service request it

• Log on as a user and request the role

Tasks
Testing the Registration Process for Your Course Administrator Role

Test the registration process tied to “YourInitials Course Administrator” Role.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 53
Solution – Testing the Registration Process for the Role
Assigned Accounts:

Please use the following email addresses to locate the user accounts assigned to your
workstation. Without this exclusivity, students will collide during the exercise.

No. Account Email Username Name Company

1 aking@bw.com aking Albert King Business World

2 jmiller_bw_us@yahoo.com jmiller Jay Miller Business World

3 alec.stewart@bw.com astewart Alec Stewart Business World

4 rwang@bw.com rwang Robert Wang Business World

5 msinisi@bw.com msinisi Mary Sinisi Business World

6 hharris@yahoo.com hharris Hilda Harris Hilman and Associates

7 efrench@email.com efrench Eric French Ace Communications

8 ivyi@yahoo.com ivyi Ivy Hatfield World of Business

9 emoulds@businessworld.com emoulds Eric Moulds World of Business

10 david_alite@siliconpeak.com dalite David Alite Silicon Peak Technologies

11 RhondaSellers@spt.com rsellers Rhonda Sellers Silicon Peak Technologies

12 blam@spt.com benlam Ben Lam Silicon Peak Technologies

13 ama@spt.com ama Albert Ma Silicon Peak Technologies

Instructor: Peter Adams (show how to look up by name)

Log on as a User and Request Your Customer Administrator Role

Responsibility: User Management

1. (N) Users

2. Perform a search for “<your assigned email>” in the Email field and click (B) Go.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 54
3. Click the Reset Password icon next to the user’s name.

4. Select the “Enter Manually” radio button.

5. Reset the password as welcome1 and click (B) Submit.

6. Log on as that user, resetting the password to welcome.

7. Click the Preferences link at the top of the page, click Access Requests link (see example
below):

8. Click (B) Request Access.

9. Select the System Administration category, select “YourInitials Course Administrator” role,
click (B) Add to List (which is in the “Selected Roles” list in the right-hand panel) and then
click (B) Next.

10. Enter a justification for requesting this role, click (B) Next.

11. Click (B) Submit.

12. “YourInitials Course Administrator” role and the User Management responsibility should
both appear in the resulting window, because “YourInitials Course Administrator” role
inherits the User Management responsibility.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 55
Practice - Profile Options
Overview
The implementation committee wants you to test setting several personal profile options, and to
examine several system profile options.

Tasks
Set your Personal Profile Options

1. Query the “Concurrent:Request Priority” profile value. Note its value, and try to update it.

2. Query the “Viewer: Default Font Size”. Set the value to 10 and Save it.

3. Query the “Printer”. Use the LOV to change or add a value and Save it.

4. Query the “Concurrent:Hold Requests”. Change the user value to “Yes” and Save it.

5. Submit the “Active Users” report.

• Click the “Options…” button, and verify that the printer you selected for the Printer
profile option has defaulted in the Printer field.

• Submit your request.

• View your concurrent request.

• Take your request off hold.

• Cancel your request.

Examine your System Profile Options

6. Use the Find System Profile Values window to find “Currency:Negative Format” at the Site
level.

7. What is “Currency:Negative Format” for the Site? _______________

8. Use the Find System Profile Values window to find the “Flexfields:Shorthand Entry” profile
option at the Site and User level.

9. What is the default value at the Site level? _______________

10. At which levels can the System Administrator change the values? _______________

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 56
Solution - Profile Options
Set your Personal Profile Options

Responsibility: System Administrator

1. If necessary, log in to Oracle Applications and select the System Administrator


responsibility.

2. Navigate to (N) Profile > Personal.

3. Query up the profile option “Concurrent:Request Priority”.

• Note its value here: __________________

• Try to update the value.

(This option cannot be updated at the user level.)

4. Query up the profile option “Viewer: Default Font Size”. If there is no value specified, set it
to 10 and click Save.

5. Query up the profile option “Printer”. Use the List of Values to change or add a value. Click
Save.

6. Query up the option “Concurrent:Hold Requests”. Change the User Value to “Yes”. Click
Save.

7. Navigate to the Submit Request screen (N) Requests > Run.

• Select the “Active Users” program.

• Click the “Options…” button and verify that the printer you selected for the “Printer”
profile option has defaulted in the Printer field.

• Submit your request.

8. Navigate to the View Requests window (N) Requests > View.

• Your request should show a status of “On Hold”.

• Take your request off hold by clicking the “Remove Hold” button.

• Cancel your request by clicking the “Cancel Request” button.

Examine your System Profile Options

9. Navigate to (N) Profile > System.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 57
10. Use the Find System Profile Values window to find “Currency:Negative Format” at the Site
level.

11. What is the current setting of “Currency:Negative Format” for the Site? _______________

12. Use the Find System Profile Values window to find the “Flexfields:Shorthand Entry” profile
option at the Site and User level.

13. What is the default value at the Site level? _______________

14. At which levels can the System Administrator change the values? _______________

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 58
Practice - Auditing Resources
Overview
In this test, the committee wants to look at the results of several Signon Audit reports. They
would also like you to test the Monitor Users form. They have asked you to complete the
following tasks.

• Run the Signon Audit reports to determine what concurrent programs were run

• Run the Signon Audit reports to determine what responsibilities and users have been
accessed

• Run the Signon Audit reports to see what forms have been accessed

• Use the Monitor Users form

Tasks
Run the Signon Audit Reports

1. Run the complete set of Signon Audit Reports using the time frame of the last week.

2. Answer the following questions.

• Which concurrent programs were run in the last week? _______________________

• Which responsibilities and users were accessed in the last week? _______________

• Which forms were accessed in the last week? _______________________________

Monitor Users

3. Access the Monitor Users form, and practice monitoring users.

4. If you don’t see any users in your Monitor Users form, change the profile option “Sign-On
Audit Level” to “Form” at the user level. Then, sign on again to your user and recheck the
Monitor Users form.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 59
Solution - Auditing Resources
Run the Signon Audit Reports

Responsibility: System Administrator

1. Navigate to (N) Requests > Run.

2. Click (B) OK to accept the default to submit a single request.

3. Click the List of Values icon to get a list of all reports available for you to run.

4. Select the “Signon Audit Concurrent Requests” report.

5. Enter the following in the Parameters window:

• Sort By: User Name

• From Request Start Time: one week ago (use the format DD-MMM-YY)

6. Click (B) Submit.

7. Click (B) Yes to submit another request.

8. Select the “Signon Audit Responsibilities” report.

9. Enter the following in the Parameters window:

• Sort By: User Name

• From Request Start Time: one week ago (use the format DD-MMM-YY)

10. Click (B) Submit.

11. Click (B) Yes to submit another request.

12. Select the “Signon Audit Forms” report.

13. Enter the following in the Parameters window:

• Sort By: Form Name

• From Request Start Time: one week ago (use the format DD-MMM-YY)

14. Click (B) Submit.

15. Click (B) No.

16. Navigate to (N) Requests > View.


Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 60
17. View each report, and answer the following questions:

• Which concurrent programs were run in the last week? _______________________

• Which responsibilities and users were accessed in the last week? _______________

• Which forms were accessed in the last week? _______________________________

Monitor Users

18. Navigate to (N) Security > User > Monitor.

19. Query up your User Name and note the activity.

20. Navigate to (N) Profile > System.

21. Find the “Sign-On Audit Level” profile option at the user level for your specific signon.
Change it to “FORM” or “NONE”

(Note: Change the setting. This will enable you to note the differences.)

22. Save your work.

23. Sign off and on again.

24. Navigate to (N) Security > User > Monitor.

25. Review the changes of the data in the form.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 61
Guided Demonstration - Support Cart
Responsibility: System Administration

This demonstration illustrates the use of the Support Cart in Oracle Applications Manager, using
the Hosts page as an example. Other pages can be used also.

1. (N) Oracle Applications Manager > Site Map > Administration > Hosts (under System
Configuration).

2. Add the page to the Support Cart using the Add to Support Cart button at the bottom of the
page. Provide a description for the saved page. Click OK twice on the page that is returned.

3. Navigate to the Support Cart using the Support Cart global button or link.

4. For the Description tab, add information for the Service Request (SR) # (XXXXXXX.XXX)
and a description. Click Update.

5. Navigate to the Applications Signature tab. Select “Product Information” in the Generic
region and select the Delete button. Click Collect.

6. (Optional) Navigate to the Other Information Collected tab. You should see the page
"oam/node/nodeList" listed. Click the icon in the View column to review the Hosts page.

7. Save the page using the Save Cart button on the bottom of the page. Click Save, and then
give your zip file a suitable name as you save it to a local drive.

8. Navigate to the Other Information Collected tab. Select the "oam/node/nodeList" page and
click Delete to delete the page. The Hosts page will be deleted from the table.

9. Click the Restore Cart button.

10. From the Restore Cart Contents page, use the Browse… button to find and select your
previously-saved zip file. Click Restore.

11. The Hosts page is now back in the Support Cart. Note that “Product Information” is not
included because you deleted it in an earlier step.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 62
Practice - Scheduling Requests
Overview
The implementation committee has asked you to test a number of scenarios for scheduling
concurrent requests. The scenarios they would like to test are as follows.

• Submit a concurrent request to run once, immediately

• Submit a concurrent request to run at 2 minute intervals

• Submit a concurrent request to run in 1 week

• Submit a concurrent request to run every day at 2 pm for just 1 week

Tasks
Submit a Request to Run Once

1. Submit the “Active Responsibilities and Users” report to run once, immediately.

Submit a Request to at Two-Minute Intervals

2. Submit the “Active Users” report to run at two-minute intervals from the completion of the
prior run.

Submit a Request to Run in One Week

3. Submit the “Reports and Sets by Responsibility” report to run one week from today.

Submit a Request to Run Every Day at 2pm for just One Week

4. Submit the “Work Shifts Report” to run every day at 2pm for the next one week.

View your Concurrent Requests

5. After you have submitted all of your concurrent requests, examine the status of your
requests.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 63
Solution - Scheduling Requests
Submit a Request to Run Once

Responsibility: System Administrator

1. Log in to Oracle Applications using the username you created earlier in the class and select
the System Administrator responsibility.

2. (N) Requests > Run.

3. Click (B) OK to accept the default “Single Request.”

4. Select “Active Responsibilities and Users” report from the list of values for the Name field.
Your form should look similar to the following.

5. Click (B) Submit.

Note the Request ID displayed in the Decision window.

6. Click (B) Yes to submit another request.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 64
Submit a Request to at 2 Minute Intervals

7. Select “Active Users” report from the list of values for the Name field.

• Click (B) Schedule….

• Select the Periodically radio button from the “Run the Job…” option group.

• Enter tomorrow’s date for the End At field.

• In the “Re-run every” fields, enter 2 and select Minute(s) from the list of values.

• Select the “From the Completion of the prior run” radio button from the “Apply the
Interval…” option group. Your Schedule screen should appear similar to the following.

• Click (B) OK.

8. Click (B) Submit.

Note the Request ID displayed in the Decision window.

9. Click (B) Yes to submit another request.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 65
Submit a Request to Run in 1 Week

10. Select “Reports and Sets by Responsibility” report from the list of values for the Name field.

11. You will be prompted for parameters.


− Select “Application Object Library” from the Application list of values.
− Select “YourInitials Course Administrator” from the Responsibilities Name list of
values.

• Click (B) OK to close the Parameters window.

• Click (B) Schedule….

• Select the Once radio button from the “Run the Job…” option group.

• In the Run At field change the date to one week from today by using the popup calendar
or by typing in the date.

• Click (B) OK.

12. Click (B) Submit.

Note the Request ID displayed in the Decision window.

13. Click (B) Yes to submit another request.

Submit a Request to Run Every Day at 2pm for just 1 Week

14. Select “Work Shifts Report” from the list of values for the Name field.

• Click (B) Schedule….

• Select the Periodically radio button from the “Run the Job…” option group.

• In the Start At field keep the current date, but change the time to 2:00 PM (14:00:00) by
using the popup calendar or by typing it in.

• In the End At field change the date to one week from today and the time to 2:00 PM
(14:00:00) by using the popup calendar or by typing it in.

• Click (B) OK.

15. Click (B) Submit.

Note the Request ID displayed in the Decision window.

16. Click (B) No to finish submitted requests.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 66
View your Concurrent Requests

17. (N) Requests > View.

18. Click (B) Find to view all your requests. Your form should look similar to the following.

19. Use the appropriate buttons on this form to perform each of the tasks.

• Find the “Active Responsibilities” request. The Phase should be Completed and the
Status should be Normal.

• Select a report with Phase Completed and Status Normal (for example, the Active
Responsibilities report). Click (B) Diagnostics. The Request Diagnostics window will
appear. Review the entries and click (B) OK to close the window.

• Select a report with Phase Completed and Status Normal (for example, the Active Users
report). Click (B) View Log…. The log file will appear in a separate browser window.
Review the entries for the log and close the browser window.

• Select a report with Phase Completed and Status Normal (for example, the Active Users
report). Click (B) View Output. The report will appear in a separate browser window.
Review the report and close the browser window.

Additional Tasks

20. Cancel the Active Users request.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 67
• Click (B) Refresh Data to verify that your display is current.

• Select the “Active Users” request that is Running.

• Click (B) Cancel Request.

• A Decision window will warn you: “Cancelling a request cannot be undone. Continue?”

• Click (B) Yes.

• The Phase will be updated to Completed and the Status will be set to Cancelled.

21. Put the “Reports and Sets by Responsibility” request on hold.

• Select the “Reports and Sets by Responsibility” request.

• Click (B) Hold Request. The Phase of the request will be updated to Inactive and the
Status will be set to On Hold.

• Click (B) Remove Hold to take the request off hold.

22. Reprint the Active Users report.

• Select one of the “Active Users” requests that completed with a normal status.

• From the Tools menu select the “Reprint…” item.

• With 1 copies selected, click (B) Apply.

• You will get a confirmation page indicating that your request for reprinting existing
output has been scheduled along with the Request ID information. Click (B) OK and
Close window.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 68
Practice - Request Groups
Overview
Up until this test process, the committee has not wanted you to handle Request Groups. In this
test process, you will create a new Request Group, and assign it appropriately. The steps that will
be tested include the following.

• Create a new Request Group

• Limit the Request Groups access to concurrent reports, programs, and sets

• Assign the new Request Group to your YourInitials Assistant System Administrator
(e.g., JSCS Assistant System Administrator) responsibility

• Test your Request Group

Tasks
Create your Request Group

1. Create a new Request Group. Remember to put your initials at the front of your data entries
to keep your data unique.

• Group Name: YourInitials Assistant SysAdmin Group

• Application: YourInitials Custom Application

• Code: (leave blank)

• Description: YourInitials Assistant SysAdmin Group

• Requests:

Type Name Application


Application Application Object Library Application Object Library
Program Employee Listing Payables
Set Period End Payables

Assign your Request Group

2. Assign the new Request Group to YourInitials Assistant System Administrator


Responsibility.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 69
Test your Request Group

3. Verify your work by selecting YourInitials Assistant System Administrator Responsibility


and viewing the LOV for both Single Request and Request Set.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 70
Solution - Request Groups
Create your Request Group.

Responsibility: System Administrator

1. Log in to Oracle Applications using your username you created earlier in the class and select
the System Administrator responsibility.

2. (N) Security > Responsibility > Request.

3. Create a new Request Group.

• Group Name: YourInitials Assistant SysAdmin Group

• Application: YourInitials Custom Application

• Code: (leave blank)

• Description: YourInitials Assistant SysAdmin Group

• Requests:

Type Name Applications


Application Application Object Library Application Object Library
Program Employee Listing Payables
Set Period End Payables

4. Save your work. Your work should look similar to the following.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 71
5. Close the form.

Assign your Request Group.

6. (N) Responsibility > Define.

7. Query to find your YourInitials Assistant System Administrator responsibility. Choose your
request group from the list of values for the Request Group Name field.

8. Save your work.

Test your Request Group.

9. Exit and sign on again as your YourInitials Assistant System Administrator (e.g.,
JSCS_ASST_SYSADMIN)

10. (N) Requests > Run.

11. Click (B) OK to accept the default “Single Request”.

12. Note the reports that now exist in the list of available reports for you to run.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 72
Practice - Coded Request Groups
Overview
Now that you have completed the committee’s tests on Request Groups, they want to go into the
advanced testing of a Coded Request Group. Specifically, the committee wants to test the
following.

• Create a Coded Request Group

• Create a new form function to call your Code Request Group

• Add the new form function to an existing menu

• Test your Coded Request Group

Tasks
Create your Coded Request Group

1. Create a new Coded Request Group. Remember to put your initials at the front of your data
entries to keep your data unique.

• Group Name: YourInitials Journal Entries

• Application: YourInitials Custom Application

• Code: YourInitialsJE (e.g., JSCSJE)

• Description: Journal Entries

• Requests:

Type Name Application


Program AR: Journal Entries Report Receivables

Create a New Form Function

2. Create a new Form Function. Remember to put your initials at the front of your data entries
to keep your data unique. Accept default values unless otherwise specified.

Description tab:
− Function: YourInitials_FNDRSRUN_JOURNAL_ENTRIES
− User Function Name: YourInitials Journal Entries
− Description: Journal Entries

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 73
Properties tab:
− Type: Form

Form tab:
− Form: Run Reports
− Application: Application Object Library
− Parameters:
− Enter the following three parameters in the Parameter field and each of them
should be separated by a space
TITLE = “YourInitials Journal Entries”
REQUEST_GROUP_CODE = “YourInitialsJE”
REQUEST_GROUP_APPL_SHORT_NAME = “<your application short
name>”

Assign your Form Function to an Existing Menu

3. Query up your Level 1 custom menu, YourInitials_TOP_SYSTEM_AUDITOR

4. Add your function.

Seq Prompt Function Description Grant


50 Journal Entries Report YourInitials Journal Entries Journal Entries Checked

Test your Coded Request Group

5. Test that your Coded Request Group works as expected.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 74
Solution - Coded Request Groups
Create your Coded Request Group

Responsibility: System Administrator

1. Log in to Oracle Applications with the username that you created earlier in the class and
select the System Administrator responsibility.

2. (N) Security > Responsibility > Request

3. Create a new Coded Request Group.

• Group Name: YourInitials Journal Entries

• Application: YourInitials Custom Application

• Code: YourInitialsJE (e.g., JSCSJE)

• Description: Journal Entries

• Requests:

Type Name Application


Program AR: Journal Entries Report Receivables

4. Save your work. Your work should look similar to the following.

5. Close the form.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 75
Create your New Form Function

6. (N) Application > Function.

7. Create a new Form Function by entering the following information:

• Description tab:
− Function: YourInitials_FNDRSRUN_JOURNAL_ENTRIES
− User Function Name: YourInitials Journal Entries
− Description: Journal Entries

• Properties tab:
− Type: Form

• Form tab:
− Form: Run Reports
− Parameters: Enter the following three parameters in the Parameter field and
each of them should be separated by a space:
TITLE = “YourInitials Journal Entries”
REQUEST_GROUP_CODE = “YourInitialsJE”
REQUEST_GROUP_APPL_SHORT_NAME = “<your application short
name>”

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 76
Hint: You can use the Edit Field… icon to open an Editor window.

8. Save your work. Your work should look similar to the following.

9. Close the form.

Assign a Form Function to an Existing Menu

10. (N) Application > Menu.

11. Query up your Level 1 custom menu, YourInitials_TOP_SYSTEM_AUDITOR

12. Add your function.

Seq Prompt Function Description Grant


50 Journal Entries Report YourInitials Journal Entries Journal Entries Checked

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 77
13. Save your work and click (B) OK to acknowledge note. Your work should look similar to
the following.

14. Close the form.

Test your Coded Request Group

15. Exit Oracle Applications and the Personal Homepage. Sign on again as the System Auditor
(i.e., YourInitials_SYSTEM_AUDITOR) to see your new function on the menu. Your
request group Journal Entries Report will appear on the Navigator for this responsibility.

16. (N) Journal Entries Report.

17. Click (B) OK to accept “Single Request.”

18. When the submit request form appears, note the window title – it will be the value entered
for your parameter TITLE. The title of the form defaults to the request title because it is the
only request on the list.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 78
Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 79
Practice - Request Sets Using Wizard
Overview
To wrap up the testing of concurrent reports and programs, the implementation committee wants
you to test creating a Request Set with shared parameters. They want you to use the Request Set
Wizard to create the Request Set with its associated programs, then modify the Request Set to
add Shared Parameters. Finally, you’ll need to test your Request Set.

Tasks
Create your Request Set Using Wizard

1. Create a new Request Set using the Wizard. Remember to put your initials at the front of
your data entries to keep your data unique.

• Set Name: YourInitials Assistant System Administrator

• Set Code: (will be assigned by Wizard)

• Application: YourInitials Custom Application

• Description: YourInitials Assistant System Administrator

• Owner: (will be assigned by the Wizard)

2. Accept all of the other default values.

3. Include the following programs in your request set: Users of a Responsibility, Reports and
Sets by Responsibility, and Report Group Responsibilities.

4. Setup Shared Parameters where appropriate.

Note: The Shared Parameter label simply enables you to set an initial default value for all
occurrences of the same parameter so you can avoid typing the same value for every
occurrence.

Test your Request Set

5. Test your Request Set by submitting it to run through concurrent processing.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 80
Solution - Request Sets Using Wizard
Create your Request Set Using Wizard

Responsibility: System Administrator

1. Log in to Oracle Applications and select the System Administrator responsibility.

2. (N) Requests > Set.

3. Click (B) Request Set Wizard (DO NOT enter any other information – the Wizard will
prompt you for necessary information).

4. Accept the following default values:

• Run your set Sequentially.

• Click (B) Next (this will create three stages).

• Abort your set when the status of the stage ends in Error.

• Click (B) Next (this will link the stages).

5. Enter the following:

• Set Name: YourInitials Assistant System Administrator

• Application: YourInitials Custom Application

• Description: YourInitials Assistant System Administrator

6. Click (B) Next.

7. Accept the default “As Each Request in the Set Completes”.

8. Click (B) Next.

9. Select the following programs to be included in your set:

• Users of a Responsibility

• Reports and Sets by Responsibility

• Report Group Responsibilities

10. Click (B) Finish.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 81
11. Click (B) OK to acknowledge the note telling you that your request set has been created and
saved.

12. Verify the Owner field has the user name of the user you are currently logged in as.

13. The window should appear similar to the following example:

Set Up Shared Parameters

Review each request within the request set to identify which programs could share parameters.
Notice that Application Name and Responsibility name are parameters used in multiple requests.

14. Click (B) Define Stages.

• Verify Stage 10 is selected, click (B) Requests

• Click (B) Parameters, create the shared parameter values by typing them into the
Shared Parameter field.

Seq Prompt Shared Parameter


1 Application Name appl
2 Responsibility Name resp

15. Save your work.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 82
16. Close the Request Parameters window.

17. Select Stage 20, click (B) Requests

• Click (B) Parameters

Note: this time select the Parameter from the List of Values

Seq Prompt Shared Parameter


1 Application Name appl
2 Responsibility Name resp

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 83
18. Save your work.

19. Close the Request Parameters window.

20. Select Stage 30, click (B) Requests.

• Click (B) Parameters.

Note: select the Parameter from the List of Values.

Seq Prompt Shared Parameter


10 Application Name appl
20 Report Name
30 Request Set Name

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 84
21. Save your work.

22. Close the Request Set form.

Test your Request Set

23. Sign on as your YourInitials Assistant System Administrator.

24. (N) Requests > Run.

25. Select the “Request Set” option.

26. Click the list of values icon for the Request Set field and select YourInitials Assistant
System Administrator.

27. Supply the required parameters by clicking in the Parameters field for each request. Verify
the Shared Parameters are being shared properly.

28. Submit your request set.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 85
Practice - Administering Concurrent Managers
Overview
The implementation committee wants you to test several aspects of managing concurrent
processing. Specifically, they want you to test the following.

• Define a work shift

• Define a concurrent manager

• Assign your work shift to your concurrent manager

• Create specialization rules for your concurrent manager

• Activate your concurrent manager

Tasks
Define your Work Shifts

1. Create a new Work Shift. Remember to put your initials at the front of your data entries to
keep your data unique.

• Name: YourInitials Dayshift

• From: 08:00

• To: 17:00

• From: Monday

• To: Friday

• Description: Dayshift 8:00 – 5:00

Define your Concurrent Manager

2. Create a new Concurrent Manager. Remember to put your initials at the front of your data
entries to keep your data unique.

• Manager: YourInitials Specialized Manager

• Enabled: (Checked)

• Short Name: Your Initials_SPECIAL

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 86
• Application: YourInitials Custom Application

• Description: Concurrent Manager to run reports for YourInitials

• Type: Concurrent Manager

• Cache Size: 1

• Program Library: FNDLIBR

Assign your Work Shift to your Concurrent Manager

3. Use the following information to assign your work shift to your concurrent manager.

Workshift Processes Sleep Seconds


YourInitials Dayshift 3 60

Create Specialization Rules for your Concurrent Manager

4. Use the information below to define your specialization rules for your Concurrent Manager.

Include/Exclude Type Name


Include User YourInitialsUser

5. Exclude Your User from the Standard Concurrent Manager. A concurrent program will run
in whatever concurrent manager is available, unless it has been explicitly excluded from the
manager. Exclude your user from the Standard Manager by adding the following
specialization rules to the Standard Manager.

Include/Exclude Type Name


Exclude User YourInitialsUser

Activate your Concurrent Manager

6. In the Administer Concurrent Managers window, scroll through the list of managers until
you find the manager you defined.

7. Select your manager.

8. Click the “Activate” button.

9. The status will update to Activating.

10. Go to the View Requests window to verify that your request to activate your manager
completes successfully.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 87
11. Go to the Submit Request window and submit the “Active Users” or “Active
Responsibilities and Users” report to run once every minute for the next five minutes.

12. Go to the Administer Concurrent Managers window. Your concurrent manager will show
one request pending.

13. Click on the “Requests” button to view your request in the Concurrent Requests screen.

14. Return to the Administer Concurrent Managers window and click on the “Processes” button
to view the Processes window.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 88
Solution - Administering Concurrent Managers
Define your Work Shifts

Responsibility = System Administrator

1. If necessary, log in to Oracle Applications and select the System Administrator


responsibility.

2. Navigate to (N) Concurrent > Manager > WorkShifts.

3. From the menu, select File > New, or click the New icon on the toolbar.

4. Create a new Work Shift.

• Name: YourInitials Dayshift

• From: 08:00

• To: 17:00

• From: Monday

• To: Friday

• Description: Dayshift 8:00 – 5:00

5. Save your work. The window should appear similar to the example shown.

6. Close the form.

Define your Concurrent Manager

7. Navigate to (N) Concurrent > Manager > Define

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 89
• Manager: YourInitials Specialized Manager

• Enabled: (Checked)

• Short Name: YourInitials_SPECIAL

• Application: YourInitials Custom Application

• Description: Concurrent Manager to run reports for YourInitialsUser

• Type: Concurrent Manager

• Cache Size: 1

• Program Library: FNDLIBR

8. Save your work. The window should appear similar to the example shown.

Assign your Work Shift to your Concurrent Manager

9. Click the (B) Work Shifts.

Workshift Processes Sleep Seconds


YourInitials Dayshift 3 60

10. Save your work. The window should appear similar to the example shown.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 90
11. Close the Work Shifts window.

Create Specialization Rules for your Concurrent Manager

12. In the Concurrent Managers window, click (B) Specialization Rules.

Include/Exclude Type Name


Include User YourInitialsUser

13. Save your work. The window should appear similar to the example shown.

14. Close the Specialization Rules window to return to the Concurrent Managers window.

15. From the Concurrent Managers window, query up the Standard Manager.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 91
16. Click (B) Specialization Rules.

Include/Exclude Type Name


Exclude User YourInitialsUser

17. Save your work.

18. Close the form.

Activate your Concurrent Manager

19. Navigate to the Administer Concurrent Managers window: (N) Concurrent > Manager >
Administer.

20. In the Administer Concurrent Managers window scroll through the list of managers until
you find the manager you defined. Select your manager and click (B) Activate.

21. The status will update to Activating. The window will appear similar to the example shown.

22. Go to the View Requests window (N) Requests > View to verify that your request to
activate your manager completes successfully.

23. Navigate to (N) Requests > Run.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 92
24. Click (B) OK to accept the default of “Single Request”.

25. In the Submit Request window choose the “Active Users” or “Active Responsibilities and
Users” report.

26. Click (B) Schedule.

• Choose Periodically.

• Leave the “Start At” time as the current time and enter five minutes from now for the
“End At” time.

• In the “Re-run every” field select 1 and Minute(s) to run the report once a minute for the
next five minutes.

27. Click (B) OK and then click (B) Submit.

28. Go to the Administer Concurrent Managers window (N) Concurrent > Manager >
Administer. Your concurrent manager may show one request pending.

Note: You may have to close and reopen the Administer Concurrent Managers window until
you “catch” your process running.

29. Click (B) Requests to view your request in the Concurrent Requests screen. Your form will
look similar to the following.

30. Close this window to return to the Administer Concurrent Managers window.

31. Click (B) Processes to view the Processes window.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 93
32. In the Concurrent Processes screen you see all the requests that have run in your specialized
manager, the Oracle Process ID that was used to run the request, and the UNIX Process ID
(in the System column).

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 94
Guided Demonstration - Loading and Running a Workflow
Process
1. Start the Oracle Workflow Builder.

2. From the File menu, select Open to open the sample solution file named wfvacXX_062.wft
from the file system.

3. Display the process diagram for the sample process.

4. Save the workflow definition to the class database using File > Save As. Then close the data
store.

5. Use a Web browser to connect to a Workflow administrator responsibility. Log in as a user


with workflow administrator privileges.

6. Click the Developer Studio link. In the Search region of the Developer Studio page, enter
the name of the XX Vacation Proposal workflow item type and click Go. Then, in the
Results region, click the Run icon for the XX Vacation Proposal item type.

7. Enter a process owner, item key, user key, requestor, approver, from date, and to date. The
requestor and approver should have Workflow administrator and user responsibilities
assigned to them.

8. Click the Submit button. A confirmation message appears. Click OK.

9. Select the Status Monitor tab to review the process status in the Status Monitor Web pages.

• In the Search region, enter the XX Vacation Proposal item type and the item key you
chose, and click Go.

• In the Results region, select your process and click the Activity History button to review
the process activities.

• Click the Status Diagram button to review the graphical diagram of the status of the
process.

10. Log off and log in again as the approver. You can use either a Workflow administrator
responsibility or Workflow user responsibility.

11. Click the Notifications link.

12. In the Worklist, select the subject line for the Vacation Proposal notification sent by your
process to open the notification message.

13. On the Notification Details page, approve or reject the proposal.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 95
14. Log off and log in as the requestor. To review the updated status of the process in the Status
Monitor Web pages, select the Status Monitor tab. Then search for the process with the XX
Vacation Proposal item type and your item key, and view the status diagram again.

15. Open the Workflow Builder again and make a change to the process diagram, such as
adding a function activity by dragging and dropping the Noop function from the Standard
item type into the process. Then save the definition to the class database again.

16. Repeat steps 5 through 9 to show the new version of the workflow definition in use.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 96
Practice - Define a Descriptive Flexfield
Overview
To perform the practices in this lesson (and the next three as well), you will need a descriptive
flexfield to work on. Your instructor will assign you a descriptive flexfield that has not yet been
used in the database you are accessing. You will use the same flexfield for practices throughout
these four lessons. The list below assigns each team number a unique descriptive flexfield and
shows the navigation path to the flexfield. The paths are accessed via the General Ledger Super
User responsibility. Your instructor will inform you of which flexfield you are to configure.

Team: 01
− Descriptive Flexfield Title: Accounting Calendar: Periods
− Navigation Path: Setup > Financials > Calendars > Accounting (Periods region)

Team: 02
− Descriptive Flexfield Title: AutoPost Criteria
− Navigation Path: Setup > Journal > AutoPost

Team: 03
− Descriptive Flexfield Title: Budgetary Control Group: Rules
− Navigation Path: Budgets > Define > Controls (Budgetary Control Rules region)

Team: 04
− Descriptive Flexfield Title: Conversion Rate Types
− Navigation Path: Setup > Currencies > Rates > Types

Team: 05
− Descriptive Flexfield Title: Define Budget Organization: Organization
− Navigation Path: Budgets > Define > Organization

Team: 06
− Descriptive Flexfield Title: Define Recurring Journal: Batch
− Navigation Path: Journals > Define > Recurring

Team: 07
− Descriptive Flexfield Title: Journal Categories
− Navigation Path: Setup > Journal > Categories

Team: 08
− Descriptive Flexfield Title: Journal Sources
− Navigation Path: Setup > Journal > Sources

Team: 09
− Descriptive Flexfield Title: Open and Close Periods
− Navigation Path: Setup > Open/Close

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 97
Team: 10
− Descriptive Flexfield Title: Daily Rates
− Navigation Path: Setup > Currencies > Rates > Daily

Team: 11
− Descriptive Flexfield Title: Period Types
− Navigation Path: Setup > Financials > Calendars > Types

Team: 12
− Descriptive Flexfield Title: Summary Accounts
− Navigation Path: Setup > Accounts > Summary

Team: 13
− Descriptive Flexfield Title: Suspense Accounts
− Navigation Path: Setup > Accounts > Suspense

Team: 14
− Descriptive Flexfield Title: AutoReversal Criteria Set
− Navigation: Setup > Journal > AutoReverse [select a Journal category]

Team: 15
− Descriptive Flexfield Title: Budget Control Group: Group
− Navigation: Budgets > Define > Controls (main region)

Team: 16
− Descriptive Flexfield Title: Define Recurring Journal: Formula
− Navigation: Journals > Define > Recurring > Lines (B) (Formula region)

Team: 17
− Descriptive Flexfield Title: Define Recurring Journal: Journal Entry
− Navigation: Journals > Define > Recurring (Journal Entry region)

Team: 18
− Descriptive Flexfield Title: Define Recurring Journal: Line
− Navigation: Journals > Define > Recurring > Lines (B) (Line Description region)

Team: 19
− Descriptive Flexfield Title: Journal Authorization Limits
− Navigation: Setup > Employees > Limits

Team: 20
− Descriptive Flexfield Title: Mass Maintenance Requests
− Navigation: Setup > Other > Mass Maintenance

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 98
Scenario

Descriptive flexfields use two types of segments: global and context-sensitive. In this practice,
you will create a descriptive flexfield using only global segments. You will also create value sets
that provide lists of values for your user. The descriptive flexfield is designed to track the
following additional information about orders that have been held:

• Who held the order

• The reason the order was held

• The amount of time the order was held

Tasks
Define your Value Sets

1. Use the Value Sets window to define three value sets.

• Define an independent value set named YourInitials_WHO_HELD. Give the value set a
description, a format type of Char, and a maximum size of 2. Enable Non-Hierarchical
Security for the value set.

• Define an independent value set named YourInitials_WHY_HELD. Give the value set a
description, a format type of Char, and a maximum size of 3. Enable Non-Hierarchical
Security for the value set.

• Define an independent value set named YourInitials_HOW_LONG_HELD. Give the


value set a description, a format type of Char, and a maximum size of 3. Enable Non-
Hierarchical Security for the value set.

Define your Structure

2. After defining your value sets, use the Descriptive Flexfield Segments window to define the
structure for the descriptive flexfield assigned to you. Do not allow overrides for the context.
Define three segments for the Global Data Elements context.

• Define a segment named Who Held, with a prompt of Who. Assign the segment the
number 10, the column ATTRIBUTE1, and the value set YourInitials_WHO_HELD.

• Define a segment named Why Held, with a prompt of Why. Assign the segment the
number 20, the column ATTRIBUTE2, and the value set YourInitials_WHY_HELD.

• Define a segment named How Long, with a prompt of Length. Assign the segment the
number 30, the column ATTRIBUTE3, and the value set
YourInitials_HOW_LONG_HELD.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 99
• Ensure all three segments are displayed and enabled. When you finish defining the
structure, freeze and compile your flexfield definition.

Define your Values

3. After defining the value sets and segments for your flexfield, use the Segment Values
window to define the values associated with each of the independent value sets.

4. Define and enable the following values for the YourInitials_WHO_HELD value set.

Value Description
01 Helen Myers
02 Mien Chan
03 Michael Keller
04 Luis Galvez

5. Define and enable the following values for the YourInitials_WHY_HELD value set.

Value Description
FIR Further information required
MAR Manager authorization required
AJR Additional justification required

6. Define and enable the following values for the YourInitials_HOW_LONG_HELD value set.

Value Description
100 Less than one week
200 One week to one month
300 One month to one year
400 More than one year

Test your Descriptive Flexfield

7. After defining your value sets, segments, and values, navigate to your descriptive flexfield
and test the results of your work. When you are finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 100
Solution – Define a Descriptive Flexfield
Define your Value Sets

Responsibility: System Administrator

1. (N) Application > Validation > Set.

2. Enter the information for the first value set in the following fields:

• Value Set Name: YourInitials_WHO_HELD

• Description: YourInitials Who Held Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 2

• Validation Type: Independent

3. Save your work.

4. Enter the information for the second value set in the following fields:

• Value Set Name: YourInitials_WHY_HELD

• Description: YourInitials Why Held Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 3

• Validation Type: Independent

5. Save your work.

6. Enter the information for the third value set in the following fields:

• Value Set Name: YourInitials_HOW_LONG_HELD

• Description: YourInitials How Long Held Value Set

• Security Type: Non-Hierarchical Security

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 101
• Format Type: Char

• Maximum Size: 3

• Validation Type: Independent

7. Save your work.

Define your Structure

8. (N) Application > Flexfield > Descriptive > Segments.

9. Query your descriptive flexfield.

10. In the Context Field region, ensure the Displayed check box is cleared.

11. In the Context Field Values region, select the Global Data Elements context and click (B)
Segments to navigate to the Segments Summary window.

12. Enter the following information for the three new segments:

Note: Be sure to save after each segment, you may need to click (B) OK to acknowledge the
Caution message before proceeding.

Window
Number Name Column Value Set Displayed Enabled
Prompt
10 Who Held Who ATTRIBUTE1 YourInitials_WHO_HELD Checked Checked
20 Why Held Why ATTRIBUTE2 YourInitials_WHY_HELD Checked Checked
30 How Long Length ATTRIBUTE3 YourInitials_HOW_LONG_HELD Checked Checked

13. Save your work.

14. Close the Segments Summary window to navigate back to the Descriptive Flexfield
Segments window.

15. Select the Freeze Flexfield Definition check box.

16. Click (B) Compile to compile the flexfield definition. Click (B) OK to each note about
submitting your request to generate the flexfield view.

Define your Values

17. (N) Application > Validation > Values.

18. In the Find window, select YourInitials_WHO_HELD value set and click (B) Find.

19. In the Values, Effective region of the Segment Values window, define the following values:

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 102
Value Description Enabled
01 Helen Myers Checked
02 Mien Chan Checked
03 Michael Keller Checked
04 Luis Galvez Checked

20. Save your work.

21. In the Segment Values window, verify Value Set radio button is selected and your cursor is
in the header region, then query the YourInitials_WHY_HELD value set in the Name field.

22. In the Values, Effective region, define the following values:

Value Description Enabled


FIR Further information required Checked
MAR Manager authorization required Checked
AJR Additional justification required Checked

23. Save your work.

24. In the Segment Values window, verify Value Set radio button is selected and your cursor is
in the header region, then query the YourInitials_HOW_LONG_HELD value set.

25. In the Values, Effective region, define the following values:

Value Description Enabled


100 Less than one week Checked
200 One week to one month Checked
300 One month to one year Checked
400 More than one year Checked

26. Save your work and close the Segment Values window.

Test your Descriptive Flexfield

27. After defining your value sets, segments, and values, navigate to your descriptive flexfield
using the General Ledger Super User responsibility and test the results of your work. When
you are finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 103
Practice - Define a Descriptive Flexfield with None Validation
Overview
To perform the practices in this lesson (and the next 2 as well), you will need a descriptive
flexfield to work on. In the previous lesson, you were assigned a descriptive flexfield by your
instructor. Please use your assigned descriptive flexfield for this exercise. If you were not
assigned a descriptive flexfield, please reference the previous lesson, and have your instructor
assign one now.

This practice reinforces the concept of global segments for a descriptive flexfield and
demonstrates the use of the None validation type. In this scenario, you will define a descriptive
flexfield to track the following information about employees:

• The person who referred the employee

• Height

• Weight

Tasks
Define your Value Sets

1. Use the Value Sets window to define three value sets as follows:

• Define an independent value set named YourInitials_WHO_REFER. Give the value set a
description, a format type of Char, and a maximum size of 3. Enable Non-Hierarchical
Security for the value set.

• Define a value set of validation type None named YourInitials_EMP_HEIGHT. Give the
value set a description, a format type of Number, a maximum size of 4, and a precision
of 2.

• Define a value set of validation type None named YourInitials_EMP_WEIGHT. Give


the value set a description, a format type of Number, a maximum size of 3, a precision of
0, a minimum value of 90, and a maximum value of 999.

Define your Structure

2. After defining your value sets, use the Descriptive Flexfield Segments window to define the
structure for your descriptive flexfield. For the purposes of this practice, use the same
descriptive flexfield you worked on previously to enter your new structure. Unfreeze the
flexfield definition first in order to make changes to the structure.

3. Delete the segments that you defined previously, and define three new segments for the
Global Data Elements context.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 104
• Define a segment named Who Referred, with a prompt of Who. Assign the segment the
number 10, the column ATTRIBUTE1, and the value set YourInitials_WHO_REFER.

• Define a segment named Height, with a prompt of Height. Assign the segment the
number 20, the column ATTRIBUTE2, and the value set YourInitials_EMP_HEIGHT.

• Define a segment named Weight, with a prompt of Weight. Assign the segment the
number 30, the column ATTRIBUTE3, and the value set YourInitials_EMP_WEIGHT.

• Ensure all three segments are displayed and enabled. When you finish defining the
structure, freeze and compile your flexfield definition.

Define your Values

4. After defining the value sets and segments for your flexfield, use the Segment Values
window to define the values associated with the independent value set.

5. Define and enable the following values for the YourInitials_WHO_REFER value set.

Value Description
100 President
200 Executive Vice President
300 Senior Vice President

Test your Descriptive Flexfield

6. After defining your value sets, segments, and values, navigate to your descriptive flexfield
and test the results of your work. When you are finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 105
Solution – Define a Descriptive Flexfield with None Validation
Define your Value Sets

Responsibility: System Administrator

1. (N) Application > Validation > Set.

2. Enter the information for the first value set in the following fields:

• Value Set Name: YourInitials_WHO_REFER

• Description: YourInitials Who Refer Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 3

• Validation Type: Independent

3. Save your work.

4. Enter the information for the second value set in the following fields:

• Value Set Name: YourInitials_EMP_HEIGHT

• Description: YourInitials Employee Height Value Set

• Format Type: Number

• Maximum Size: 4

• Precision: 2

• Validation Type: None

Note: You cannot enable security for a value set of validation type None.

5. Save your work.

6. Enter the information for the third value set in the following fields:

• Value Set Name: YourInitials_EMP_WEIGHT

• Description: YourInitials Employee Weight Value Set

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 106
• Format Type: Number

• Maximum Size: 3

• Precision: 0

• Min Value: 90

• Max Value: 700

• Validation Type: None

7. Save your work.

Define your Structure

8. (N) Application > Flexfield > Descriptive > Segments.

9. Query your descriptive flexfield in the Descriptive Flexfield Segments window.

10. Clear the Freeze Flexfield Definition check box and click (B) OK to acknowledge caution.

11. In the Context Field Values region, select the Global Data Elements context and click (B)
Segments to navigate to the Segments Summary window.

12. Delete the segments that you defined previously.

13. Save your work.

14. Enter the following information for the three new segments.

Note: Be sure to save after each segment, you may need to click (B) OK to acknowledge the
Caution message before proceeding.

Window
Number Name Column Value Set Displayed Enabled
Prompt
10 Who Referred Who ATTRIBUTE1 YourInitials_WHO_REFER Checked Checked
20 Height Height ATTRIBUTE2 YourInitials_EMP_HEIGHT Checked Checked
30 Weight Weight ATTRIBUTE3 YourInitials_EMP_WEIGHT Checked Checked

15. Save your work.

16. Close the Segments Summary window to navigate back to the Descriptive Flexfield
Segments window.

17. Select the Freeze Flexfield Definition check box. Click (B) OK to acknowledge Caution.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 107
18. Click (B) Compile to compile the flexfield definition. Click (B) OK to each note about
submitting your request to generate the flexfield view.

Define your Values

19. (N) Application > Validation > Values.

20. In the Find window, select YourInitials_WHO_REFER value set and click (B) Find.

21. In the Values, Effective region of the Segment Values window, define the following values:

Value Description Enabled


100 President Checked
200 Executive Vice President Checked
300 Senior Vice President Checked

22. Save your work and close the Segment Values window. Click (B) OK to acknowledge
message.

Test your Descriptive Flexfield

23. After defining your value sets, segments, and values, navigate to your descriptive flexfield
using the General Ledger Super User responsibility and test the results of your work. When
you are finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 108
Practice - Define a Descriptive Flexfield with Context-Sensitive
Segment
Overview
To perform the practices in this lesson (and the next one as well), you will need a descriptive
flexfield to work on. In the previous lesson, you were assigned a descriptive flexfield by your
instructor. Please use your assigned descriptive flexfield for this exercise. If you were not
assigned a descriptive flexfield, please reference the previous lesson, and have your instructor
assign one now.

In this practice, you will set up a context-sensitive segment and create a table-validated value set.
By using context sensitivity, you increase the number of questions you can ask without
increasing the number of columns necessary in the table. In this scenario, you will track
additional information for a transaction based on whether or not the transaction is a project. If it
is not a project, then you do not need to capture additional information. If it is a project, then the
flexfield should track the salesperson, the salesperson’s region, and the project name. To avoid
some repetitive data entry, you will use a table that already exists within Oracle Applications to
validate the project name.

Tasks
Define your Value Sets

1. Use the Value Sets window to define three value sets.

• Define an independent value set named YourInitials_SALES_REP. Give the value set a
description, a format type of Char, and a maximum size of 3. Specify that the values
must be uppercase only, and enable non-hierarchical security for the value set.

• Define an independent value set named YourInitials_LOCATION. Give the value set a
description, a format type of Char, and a maximum size of 3. Specify that the values
must be uppercase only, and enable non-hierarchical security for the value set.

• Define a table-validated value set named YourInitials_PROJECT. Give the value set a
description, a format type of Char, and a maximum size of 30. Enable security for the
value set. Specify ARBV_CUSTOMERS in the Oracle Receivables application as the
validation table. Assign the Value column the column name CUSTOMER_NUMBER, a
type of VarChar2, and a size of 30. Assign the Meaning column the column name
CUSTOMER_NAME, a type of VarChar2, and a size of 50.

Define your Structure

2. After defining your value sets, use the Descriptive Flexfield Segments window to define the
structure for your descriptive flexfield. For the purposes of this practice, use the same

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 109
descriptive flexfield you worked on previously to enter your new structure. Unfreeze the
flexfield definition first in order to make changes to the structure.

3. For the context field, enter the prompt “Is this a project?” Specify that a value is required
and context override is allowed.

4. Delete the segments you defined previously for the Global Data Elements context.

5. Define and enable a new context named Yes with the code Yes. Define three new segments
for the Yes context.

• Define a segment named Sales Rep, with a prompt of Sales Rep. Assign the segment the
number 10, the column ATTRIBUTE1, and the value set YourInitials_SALES_REP.

• Define a segment named Location, with a prompt of Location. Assign the segment the
number 20, the column ATTRIBUTE2, and the value set YourInitials_LOCATION.

• Define a segment named Project, with a prompt of Project. Assign the segment the
number 30, the column ATTRIBUTE3, and the value set YourInitials_PROJECT.

• Ensure all three segments are displayed and enabled.

6. Define and enable another new context named No with the code No.

7. When you finish defining the structure, freeze and compile your flexfield definition.

Define your Values

8. After defining the value sets and segments for your flexfield, use the Segment Values
window to define the values associated with each of the independent value sets.

9. Define and enable the following values for the YourInitials_SALES_REP value set.

Value Description
CLJ Charles L. Jefferson
AMR Ana M. Rodriguez
PAL Philippe A. Lebeau

10. Define and enable the following values for the YourInitials_LOCATION value set.

Value Description
NYC New York
MAD Madrid
PAR Paris

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 110
Test your Descriptive Flexfield

11. After defining your value sets, segments, and values, navigate to your descriptive flexfield
using the General Ledger Super User responsibility and test the results of your work. When
you are finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 111
Solution – Define a Descriptive Flexfield with a Context-Sensitive
Segment
Define your Value Sets

Responsibility: System Administrator

1. (N) Application > Validation > Set

2. Enter the information for the first value set in the following fields:

• Value Set Name: YourInitials_SALES_REP

• Description: YourInitials Sales Rep Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 3

• Uppercase Only: Selected

• Validation Type: Independent

3. Save your work.

4. Enter the information for the second value set in the following fields:

• Value Set Name: YourInitials_LOCATION

• Description: YourInitials Location Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 3

• Uppercase Only: Selected

• Validation Type: Independent

5. Save your work.

6. Enter the information for the third value set in the following fields:

• Value Set Name: YourInitials_PROJECT


Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 112
• Description: YourInitials Project Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 30

• Validation Type: Table

7. Click (B) Edit Information to navigate to the Validation Table Information window.

8. Enter Receivables as the table application and ARBV_CUSTOMERS as the table name.

Note: ARBV_CUSTOMERS will not appear in the list of values because it has not been
registered as a table, but you can still use it for validation purposes.

9. In the Table Columns region, enter the following information:

Name Type Size


Value CUSTOMER_NUMBER VarChar2 30
Meaning CUSTOMER_NAME VarChar2 50

10. Save your work and close the Value Set window.

Define your Structure

11. (N) Application > Flexfield > Descriptive > Segments.

12. Query your descriptive flexfield in the Descriptive Flexfield Segments window.

13. Clear the Freeze Flexfield Definition check box, click (B) OK to acknowledge Caution
message.

14. In the Context Field region, enter information in the following fields:

• Prompt: Is this a project?

• Required: Selected

• Displayed: Selected

• Synchronize with Reference Field: Leave this field unchecked.

15. In the Context Field Values region, select the Global Data Elements context and click (B)
Segments to navigate to the Segments Summary window.

16. Delete the segments that you defined previously.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 113
17. Save your work.

18. Close the Segment Summary window to navigate back to the Descriptive Flexfield
Segments window.

19. In the Context Field Values region, enter the following information for the first context:

Code Name Description Enabled


Yes Yes Yes Checked

20. Click (B) Segments to navigate to the Segments Summary window.

21. Enter the following information for the segments:

Note: Be sure to save after each segment, you may need to click (B) OK to acknowledge the
Caution message before proceeding.

Window
Number Name Column Value Set Displayed Enabled
Prompt
10 Sales Rep Sales Rep ATTRIBUTE1 YourInitials_SALES_REP Checked Checked
20 Location Location ATTRIBUTE2 YourInitials_LOCATION Checked Checked
30 Project Project ATTRIBUTE3 YourInitials_PROJECT Checked Checked

22. Save your work.

23. Close the Segments Summary window to navigate back to the Descriptive Flexfield
Segments window.

24. In the Context Field Values region, enter the following information for the second context:

Code Name Description Enabled


No No No Checked

25. Save your work.

26. Select the Freeze Flexfield Definition check box. Click (B) OK to acknowledge Caution
message.

27. Click (B) Compile to compile the flexfield definition. Click (B) OK to each note about
submitting your request to generate the flexfield view.

Define your Values

28. (N) Application > Validation > Values.

29. In the Find window, select YourInitials_SALES_REP value set and click (B) Find.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 114
30. In the Values, Effective region of the Segment Values window, define the following values:

Value Description Enabled


CLJ Charles L. Jefferson Checked
AMR Ana M. Rodriguez Checked
PAL Philippe A. Lebeau Checked

31. Save your work.

32. In the Segment Values window, verify Value Set radio button is selected and your cursor is
in the header region, then query the YourInitials_LOCATION value set in the Name field

33. In the Values, Effective region, define the following values:

Value Description Enabled


NYC New York Checked
MAD Madrid Checked
PAR Paris Checked

34. Save your work and close the Segment Values window.

Test your Descriptive Flexfield

35. After defining your value sets, segments, and values, navigate to your descriptive flexfield
using the General Ledger Super User responsibility and test the results of your work. When
you are finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 115
Practice - Define a Descriptive Flexfield with a Dependent
Segment
Overview
To perform the practices in this lesson (and the next one as well), you will need a descriptive
flexfield to work on. In the previous lesson, you were assigned a descriptive flexfield by your
instructor. Please use your assigned descriptive flexfield for this exercise. If you were not
assigned a descriptive flexfield, please reference the previous lesson, and have your instructor
assign one now.

In this practice, you will create a dependent value set to validate a descriptive flexfield segment.
The descriptive flexfield will track the country and region for a salesperson. The list of values for
the region segment will change depending on the country selected.

Remember, when defining a dependent value set, you must perform the steps in the following
order:

• Define the independent value set.

• Define the dependent value set.

• Define independent values.

• Define dependent values.

Tasks
Define your Value Sets

1. Use the Value Sets window to define two value sets.

• Define an independent value set named YourInitials_COUNTRY. Give the value set a
description, a format type of Char, and a maximum size of 3. Specify that the values
must be uppercase only, and enable Non-Hierarchical Security and Longlist for the value
set.

• Define a dependent value set named YourInitials_REGION. Give the value set a
description, a format type of Char, and a maximum size of 3. Specify that the values
must be uppercase only, and enable Non-Hierarchical Security for the value set.
Associate the dependent value set with the independent value set
YourInitials_COUNTRY. Assign the dependent value set a dependent default value of
YourInitials, and give the default value a description.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 116
Define your Structure

2. After defining your value sets, use the Descriptive Flexfield Segments window to define the
structure for your descriptive flexfield. For the purposes of this practice, use the same
descriptive flexfield you worked on previously to enter your new structure. Unfreeze the
flexfield definition first in order to make changes to the structure.

3. Define two new segments for the Global Data Elements context.

• Define a segment named Country Code, with a prompt of Country. Assign the segment
the number 10, the column ATTRIBUTE4, and the value set YourInitials_COUNTRY.

• Define a segment named Region Code, with a prompt of Region. Assign the segment the
number 20, the column ATTRIBUTE5, and the value set YourInitials_REGION.

• Ensure both segments are displayed and enabled. When you finish defining the structure,
freeze and compile your flexfield definition.

Define your Values

4. After defining the value sets and segments for your flexfield, use the Segment Values
window to define the values associated with the independent and dependent value sets.

5. Define and enable the following values for the YourInitials_COUNTRY value set.

Value Description
USA United States
CAN Canada
UK United Kingdom

6. Define and enable the following values in the YourInitials_REGION value set for the
independent value USA.

Value Description
OK Oklahoma
TX Texas
WI Wisconsin

7. Define and enable the following values in the YourInitials_REGION value set for the
independent value CAN.

Value Description
SAS Saskatchewan
BC British Columbia

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 117
Value Description
YT Yukon Territory

8. Define and enable the following values in the YourInitials_REGION value set for the
independent value UK.

Value Description
WA Wales
SL Scotland
EN England

Test your Descriptive Flexfields

9. After defining your value sets, segments, and values, navigate to your descriptive flexfield
and test the results of your work. When you are finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 118
Solution – Define a Descriptive Flexfield with a Dependent
Segment
Define your Value Sets

Responsibility: System Administrator

1. (N) Application > Validation > Set.

2. Enter the information for the first value set in the following fields:

• Value Set Name: YourInitials_COUNTRY

• Description: YourInitials Country Value Set

• Security Type: Non-Hierarchical Security

• List Type: Long List of Values

• Format Type: Char

• Maximum Size: 3

• Uppercase Only: Selected

• Validation Type: Independent

3. Save your work.

4. Enter the information for the second value set in the following fields:

• Value Set Name: YourInitials_REGION

• Description: YourInitials Region Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 3

• Uppercase Only: Selected

• Validation Type: Dependent

5. Click (B) Edit Information to navigate to the Dependent Value Set Information window.

6. In the Independent Value Set region, enter YourInitials_COUNTRY in the Name field.
Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 119
7. In the Dependent Default Value region, enter NA in the Value field and Not Specified in the
Description field.

8. Save your work and close the Value Sets window.

Define your Structure

9. (N) Application > Flexfield > Descriptive > Segments.

10. Query your descriptive flexfield in the Descriptive Flexfield Segments window.

11. Clear the Freeze Flexfield Definition check box, click (B) OK to acknowledge Caution
message.

12. In the Context Field Values region, select the Global Data Elements context and click (B)
Segments to navigate to the Segments Summary window.

13. Enter the following information for the two new segments:

Note: Be sure to save after each segment, you may need to click (B) OK to acknowledge the
Caution message before proceeding.

Window
Number Name Column Value Set Displayed Enabled
Prompt
10 Country Code Country ATTRIBUTE4 YourInitials_COUNTRY Checked Checked
20 Region Code Region ATTRIBUTE5 YourInitials_REGION Checked Checked

14. Save your work.

15. Close the Segment Summary window to navigate back to the Descriptive Flexfield
Segments window.

16. Select the Freeze Flexfield Definition check box. Click (B) OK to acknowledge Caution
message.

17. Click (B) Compile to compile the flexfield definition. Click (B) OK to each note about
submitting your request to generate the flexfield view.

Define your Values

18. (N) Application > Validation > Values.

19. In the Find window, select YourInitials_COUNTRY value set and click (B) Find.

20. In the Values, Effective region of the Segment Values window, define the following values:

Value Description Enabled


USA United States Checked

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 120
Value Description Enabled
CAN Canada Checked
UK United Kingdom Checked

21. Save your work.

22. In the Segment Values window, verify Value Set radio button is selected and your cursor is
in the header region, query with YourInitials_REGION in the Dependent Value Set field
field.

23. Define and enable the following values for the Independent Value USA.

Value Description Enabled


OK Oklahoma Checked
TX Texas Checked
WI Wisconsin Checked

24. Save your work.

25. In the Segment Values window, verify Value Set radio button is selected and your cursor is
in the header region, use your down arrow to navigate to the Independent Value CAN.

26. Define and enable the following values for the Independent Value CAN.

Value Description Enabled


SAS Saskatchewan Checked
BC British Columbia Checked
YT Yukon Territory Checked

27. Save your work

28. In the Segment Values window, verify Value Set radio button is selected and your cursor is
in the header region, use your down arrow to navigate to the Independent Value UK.

29. Define and enable the following values for the Independent Value UK.

Value Description Enabled


WA Wales Checked
SL Scotland Checked
EN England Checked

30. Save your work and close the Segment Values window.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 121
Test your Descriptive Flexfields

31. After defining your value sets, segments, and values, navigate to your descriptive flexfield
using the General Ledger Super User responsibility and test the results of your work. When
you are finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 122
Practice - Define a Key Flexfield
Overview
Because many students access the system and create structures during this course, you need a
way to distinguish between the structures created by you and by your classmates. Therefore, you
will use your initials (e.g., JS) as a prefix wherever you need to define something. In this way,
you can ensure the definitions you create are unique.

Flexfield definitions can be created under many different responsibilities. However, the System
Administrator responsibility has access to all functions needed to create the definitions in these
practices. In this practice you will create a key flexfield structure and values for your chart of
accounts. The design of the structure has already been determined. The flexfield will have four
segments: a company segment, a cost center segment, an account segment, and a segment
labeled Future for possible future expansion, in that order. Before you define the structure, you
must first create the value sets, then create the structure, identifying the segments by their
respective flexfield qualifiers. Finally, you will create the valid values for each segment. After
creating the values, test your structure by performing the first steps in the process for creating a
new set of books.

Note: After saving your accounting flexfield structure, you may receive a message that the key
flexfield is not compiled. There is no need to take action. The flexfield will be compiled
automatically.

Tasks
Define your Value Sets

1. Use the Value Sets window to define four value sets.

• Define an independent value set named YourInitials_CO. Give the value set a
description, a format type of Char, and a maximum size of 2. Enable Non-Hierarchical
Security for the value set. Specify that the values should be right-justified and zero-
filled.

• Define an independent value set named YourInitials_COST. Give the value set a
description, a format type of Char, and a maximum size of 3. Enable Non-Hierarchical
Security for the value set. Specify that the values should be right-justified and zero-
filled.

• Define an independent value set named YourInitials_ACCOUNT. Give the value set a
description, a format type of Char, and a maximum size of 4. Enable Non-Hierarchical
Security and Longlist for the value set. Specify that the values should be right-justified
and zero-filled.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 123
• Define an independent value set named YourInitials_FUTURE. Give the value set a
description, a format type of Char, and a maximum size of 4. Enable Non-Hierarchical
Security for the value set. Specify that the values should be right-justified and zero-filled

Define your Structure

2. After defining your value sets, use the Key Flexfield Segments window to define a new
flexfield structure for the Accounting Flexfield in the Oracle General Ledger application.
Give your structure the code YourInitials_COA, the title YourInitials Chart of Accounts, a
description, and the view name YourInitials_AFF_VIEW. Enable the structure. Use a period
(.) as the segment separator, specify segments should be cross-validated, and allow dynamic
inserts. Define four segments for your structure.

• Define a segment named CO, with a prompt of Company. Assign the segment the
number 1, the column SEGMENT1, and the value set YourInitials_CO. Ensure the
segment is displayed and enabled. Enable security for the segment. Give the segment a
display size of 2 and a description size of 30. Enable the Balancing Segment flexfield
qualifier for the segment.

• Define a segment named CC, with a prompt of Cost Center. Assign the segment the
number 2, the column SEGMENT2, and the value set YourInitials_COST. Ensure the
segment is displayed and enabled. Enable security for the segment. Give the segment a
display size of 3 and a description size of 30. Enable the Cost Center Segment flexfield
qualifier for the segment.

• Define a segment named ACCT, with a prompt of Account. Assign the segment the
number 3, the column SEGMENT3, and the value set YourInitials_ACCOUNT. Ensure
the segment is displayed and enabled. Enable security for the segment. Give the segment
a display size of 4 and a description size of 30. Enable the Natural Account Segment
flexfield qualifier for the segment.

• Define a segment named RFU, with a prompt of Future Use. Assign the segment the
number 4, the column SEGMENT4, and the value set YourInitials_FUTURE. Ensure the
segment is displayed and enabled. Specify a default type of Constant and a default value
of 0000. Enable security for the segment. Give the segment a display size of 4 and a
description size of 30.

• When you finish defining the structure, freeze and compile your flexfield definition.

Define your Values

3. After defining the value sets and segments for your flexfield, use the Segment Values
window to define the values associated with each of the independent value sets.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 124
4. Define and enable the following values for the YourInitials_CO value set.

Value Description
01 Red Co.
02 Orange Co.
03 Yellow Co.
04 Green Co.
05 Blue Co.

5. Define and enable the following values for the YourInitials_COST value set.

Value Description
000 Not Specified
100 Sales
200 Services
300 Development

6. Define and enable the following values for the YourInitials_ACCOUNT value set. Specify
the account type segment qualifier for each value as shown.

Value Description Account Type


1110 Cash Asset
1120 Cash Clearing Asset
2110 Accounts Payable Liability
3110 Salaries Liability
4110 Travel Expense Expense

7. Define and enable the following value for the YourInitials_FUTURE value set.

Value Description
0000 Not Specified

Test your Key Flexfield

After defining your value sets, segments, and values, navigate to the Accounting Flexfield to test
the results of your work. To view the Accounting Flexfield, you will perform the beginning steps
in the process for creating your accounting structure and then view the accounting flexfield you
created earlier in this practice.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 125
Responsibility: General Ledger Super User

8. (N) Setup > Financials > Accounting Setup Manager > Accounting Setups.

9. In the Accounting Setups window, click Create Accounting Setup.

10. Click Next to access the Create Accounting Setups: Define Accounting Representations
window.

11. Enter the following information:


− Name: YourInitials_COA
− Chart of Accounts: YourInitials Chart of Accounts
− Accounting Calendar: Accounting (Year)
− Currency: USD

12. Click Next and Finish to save your accounting structure.

13. Click Define Accounting Options in the confirmation page.

14. In the Primary Ledger region, click the Update icon for Ledger Options.

15. Click Next to access the Update Ledger: Ledger Options window.

16. In the Year End Processing region, click the Search icon for the Retained Earnings Account
field to display the list of values. The Accounting Flexfield appears.

17. Enter values in the Accounting Flexfield to test your work.

18. Cancel your entries and exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 126
Solution - Define a Key Flexfield
Define your Value Sets

Responsibility: System Administrator

1. (N) Application > Validation > Set.

2. Enter the information for the first value set in the following fields:

• Value Set Name: YourInitials_CO

• Description: YourInitials Company Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 2

• Right-justify and Zero-fill Numbers: Selected

• Validation Type: Independent

3. Save your work.

4. Enter the information for the second value set in the following fields:

• Value Set Name: YourInitials_COST

• Description: YourInitials Cost Center Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 3

• Right-justify and Zero-fill Numbers: Selected

• Validation Type: Independent

5. Save your work.

6. Enter the information for the third value set in the following fields:

• Value Set Name: YourInitials_ACCOUNT

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 127
• Description: YourInitials Account Value Set

• Security Type: Non-Hierarchical Security

• List Type: Enable Long List of Values

• Format Type: Char

• Maximum Size: 4

• Right-justify and Zero-fill Numbers: Selected

• Validation Type: Independent

7. Save your work.

8. Enter the information for the fourth value set in the following fields:

• Value Set Name: YourInitials_Future

• Description: YourInitials Reserved for Future Use Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 4

• Right-justify and Zero-fill Numbers: Selected

• Validation Type: Independent

9. Save your work and close the Value Sets window.

Define your Structure

10. (N) Application > Flexfield > Key > Segments.

11. Query the application General Ledger and the flexfield title Accounting Flexfield.

12. In the Structures region, insert a new record and enter the information for the flexfield
structure in the following fields:

• Code: YourInitials_COA

• Title: YourInitials Chart of Accounts

• Description: YourInitials Chart of Accounts

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 128
• Enabled: Selected

• Segment Separator: Period (.)

• Cross-Validate Segments: Selected

• Allow Dynamic Inserts: Selected

13. Click (B) Segments to navigate to the Segments Summary window.

14. Enter the information for the first segment in the following fields:

• Number: 1

• Name: CO

• Window Prompt: Company

• Column: SEGMENT1

• Value Set: YourInitials_CO

• Displayed: Selected

• Enabled: Selected

15. Click (B) Open to navigate to the Segments window.

16. Enter the information for the first segment in the following fields:

• Security Enabled: Selected

• Display Size: 2

• Description Size: 30

17. Save your work.

18. Click (B) Flexfield Qualifiers to navigate to the Flexfield Qualifiers window.

19. Select the Enabled check box for the Balancing Segment flexfield qualifier.

20. Save your work.

21. Navigate back to the Segments Summary window.

22. Enter the information for the second segment in the following fields:

• Number: 2

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 129
• Name: CC

• Window Prompt: Cost Center

• Column: SEGMENT2

• Value Set: YourInitials_COST

• Displayed: Selected

• Enabled: Selected

23. Click (B) Open to navigate to the Segments window.

24. Enter the information for the second segment in the following fields:

• Security Enabled: Selected

• Display Size: 3

• Description Size: 30

25. Save your work.

26. Click (B) Flexfield Qualifiers to navigate to the Flexfield Qualifiers window.

27. Select the Enabled check box for the Cost Center Segment flexfield qualifier.

28. Save your work.

29. Navigate back to the Segments Summary window.

30. Enter the information for the third segment in the following fields:

• Number: 3

• Name: ACCT

• Window Prompt: Account

• Column: SEGMENT3

• Value Set: YourInitials_ACCOUNT

• Displayed: Selected

• Enabled: Selected

31. Click (B) Open to navigate to the Segments window.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 130
32. Enter the information for the third segment in the following fields:

• Security Enabled: Selected

• Display Size: 4

• Description Size: 30

33. Save your work.

34. Click (B) Flexfield Qualifiers to navigate to the Flexfield Qualifiers window.

35. Select the Enabled check box for the Natural Account Segment flexfield qualifier.

36. Save your work.

37. Navigate back to the Segments Summary window.

38. Enter the information for the fourth segment in the following fields:

• Number: 4

• Name: RFU

• Window Prompt: Future Use

• Column: SEGMENT4

• Value Set: YourInitials_FUTURE

• Displayed: Selected

• Enabled: Selected

39. Click (B) Open to navigate to the Segments window.

40. Enter the information for the fourth segment in the following fields:

• Default Type: Constant

• Default Value: 0000

• Security Enabled: Selected

• Display Size: 4

• Description Size: 30

41. Save your work and close the Segments window.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 131
42. Close the Segment Summary window to avigate back to the Key Flexfield Segments
window.

43. Select the Freeze Flexfield Definition check box. Click (B) OK to acknowledge Caution
message.

44. Click (B) Compile to compile the flexfield definition. You will find two notes indicating
that the flexfield was compiled successfully. Click (B) OK to each note about submitting
your request to generate the flexfield view.

Define your Values

45. (N) Application > Validation > Values.

46. In the Find window, select Value Set and find the YourInitials_CO value set. Click (B)
Find.

47. In the Values, Effective region of the Segment Values window, define the following values:

Value Description Enabled


01 Red Co. Checked
02 Orange Co. Checked
03 Yellow Co. Checked
04 Green Co. Checked
05 Blue Co. Checked

48. Save your work.

49. In the Segment Values window, verify Value Set radio button is selected and your cursor is
in the header region, then query the YourInitials_COST value set in the Name field.

50. In the Values, Effective region, define the following values:

Value Description Enabled


000 Not Specified Checked
100 Sales Checked
200 Services Checked
300 Development Checked

51. Save your work.

52. In the Segment Values window, verify Value Set radio button is selected and your cursor is
in the header region, then query the YourInitials_ACCOUNT value set in the Name field.

53. Define the following values:

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 132
Values, Effective Values, Hierarchy, Qualifiers
Value Description Enabled Account Type
1110 Cash Checked Asset
1120 Cash Clearing Checked Asset
2110 Accounts Payable Checked Liability
3110 Salaries Checked Liability
4110 Travel Expense Checked Expense

Note: Click in the Qualifiers field in the Values, Hierarchy, Qualifiers region to display the
Segment Qualifiers window and enter a value in the Account Type field. Accept the default
values for the other fields in the Segment Qualifiers window.

54. Save your work.

55. In the Segment Values window, select Value Set and find the YourInitials_FUTURE value
set. Click (B) Find.

56. In the Values, Effective region, define the following value:

Value Description
0000 Not Specified

57. Save your work and close the Value window. Click (B) OK to the note about submitting
your request to compile 4 value set hierarchies.

Test your Key Flexfield

After defining your value sets, segments, and values, navigate to the Accounting Flexfield to test
the results of your work. To view the Accounting Flexfield, you will perform the beginning steps
in the process for creating your accounting structure and then view the accounting flexfield you
created earlier in this practice.

Responsibility: General Ledger Super User

58. (N) Setup > Financials > Accounting Setup Manager > Accounting Setups.

59. In the Accounting Setups window, click (B) Create Accounting Setup.

60. Click (B) Next to access the Create Accounting Setups: Define Accounting Representations
window.

61. Enter the following information:


− Name: YourInitials_COA
− Chart of Accounts: YourInitials Chart of Accounts

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 133
− Accounting Calendar: Accounting (Year)
− Currency: USD

62. Click (B) Next and (B) Finish to save your accounting structure.

63. Click (B) Define Accounting Options in the confirmation page.

64. In the Primary Ledger region, click the Update icon for Ledger Options.

65. Click (B) Next to access the Update Ledger: Ledger Options window.

66. In the Year End Processing region, click the Search icon for the Retained Earnings Account
field to display the list of values. The Accounting Flexfield appears.

67. Enter values in the Accounting Flexfield to test your work.

68. Cancel your entries and exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 134
Practice - Security Rules
Overview
Flexfield security rules control access to specific segment values by responsibility. These rules
can be set up for any or all segments. Security rules are tied to a responsibility, which is in turn
associated with users. In this practice, you will create a rule preventing users from viewing an
account. You will assign the rule to the General Ledger Super User responsibility.

Note: Before you can use security for a flexfield segment, you must enable security both at
the value set level and at the segment level.

Tasks
Define your Security Rule

1. Use the Define Security Rules window to define a security rule for the ACCT segment of
the Accounting Flexfield structure, YourInitials Chart of Accounts, that you defined in the
Define a Key Flexfield lesson. Name the rule YourInitials_SR01, and give the rule a
description. Enter an error message to explain the rule to users.

• Define the first security rule element to include all the possible account values, from
0000 to zzzz.

• Define the second security rule element to exclude the account 4110.

Assign your Security Rule

2. Use the Assign Security Rules window to assign your security rule to the General Ledger
Super User responsibility in the Oracle General Ledger application.

Test your Key Flexfield

After defining your value sets, segments, and values, navigate to the Accounting Flexfield to test
the results of your work. To view the Accounting Flexfield, you will perform the beginning steps
in the process for creating your accounting structure and then view the accounting flexfield you
created earlier in this practice.

Responsibility: General Ledger Super User

3. (N) Setup > Financials > Accounting Setup Manager > Accounting Setups.

4. In the Accounting Setups window, search by Ledger YourInitials_COA, click Go

5. Select Update Accounting Options.

6. In the Primary Ledger region, click the Update icon for Ledger Options.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 135
7. Click Next to access the Update Ledger: Ledger Options window.

8. In the Year End Processing region, click the Search icon for the Retained Earnings Account
field to display the list of values. The Accounting Flexfield appears.

9. Enter values in the Accounting Flexfield to test your work.

10. Cancel your entries and exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 136
Solution – Security Rules
Define your Security Rule

Responsibility: System Administrator

1. (N) Security > Responsibility > ValueSet > Define.

2. In the Find window, select Key Flexfield and find the ACCT segment of the YourInitials
Chart of Accounts structure for the Accounting Flexfield in the General Ledger application.

3. In the Security Rules region of the Define Security Rules window, enter information in the
following fields:

• Name: YourInitials_SR01

• Description: YourInitials Security Rule 01

• Message: YourInitials_SR01 GL responsibility cannot use account 4110.

4. In the Security Rule Elements region, enter following information Security Rule Elements:

Type From To
Include 0000 zzzz
Exclude 4110 4110

5. Save your work.

Assign your Security Rule

6. Click (B) Assign.

7. In the Security Rules region of the Assign Security Rules window, enter information in the
following fields:

• Application: General Ledger

• Responsibility: General Ledger Super User

• Name: YourInitials_SR01

8. Save your work.

Test your Key Flexfield

After defining your value sets, segments, and values, navigate to the Accounting Flexfield to test
the results of your work. To view the Accounting Flexfield, you will perform the beginning steps

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 137
in the process for creating your accounting structure and then view the accounting flexfield you
created earlier in this practice.

Responsibility: General Ledger Super User

9. (N) Setup > Financials > Accounting Setup Manager > Accounting Setups.

10. In the Accounting Setups window, search by Ledger YourInitials_COA, click (B) Go.

11. Select Update Accounting Options icon.

12. In the Primary Ledger region, click the Update icon for Ledger Options.

13. Click (B) Next to access the Update Ledger: Ledger Options window.

14. In the Year End Processing region, click the Search icon for the Retained Earnings Account
field to display the list of values. The Accounting Flexfield appears.

15. Enter values in the Accounting Flexfield to test your work.

16. Cancel your entries and exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 138
Practice - Cross-Validation Rules
Overview
Cross-validation rules enable you to restrict users from entering certain combinations of segment
value codes. In this practice, you will use the Accounting Flexfield structure you defined earlier
in the Define a Key Flexfield lesson. You will create a cross-validation rule to prevent the
Orange Company from using the Development cost center.

Whenever you add or change cross-validation rules, you must recompile the flexfield structure to
ensure your changes are reflected in the applications.

Tasks
Define your Cross-Validation Rule

1. Use the Cross-Validation Rules window to define a cross-validation rule for the Accounting
Flexfield structure you defined in the Define a Key Flexfield lesson, YourInitials Chart of
Accounts. Name the rule YourInitials_CVR:01, give the rule a description, and ensure the
rule is enabled. Enter an error message to explain the rule to users, and specify the CO
segment as the error segment.

Define your Cross-Validation Rule Elements

2. Define two cross-validation rule elements.

• Define the first cross-validation rule element to include all the possible code
combinations, from lowest to highest.

• Define the second cross-validation rule element to exclude any code combinations
containing both the Orange Company and the Development cost center.

• After defining the cross-validation rule, recompile the flexfield structure definition.

Test your Key Flexfield

After defining your value sets, segments, and values, navigate to the Accounting Flexfield to test
the results of your work. To view the Accounting Flexfield, you will perform the beginning steps
in the process for creating your accounting structure and then view the accounting flexfield you
created earlier in this practice.

Responsibility: General Ledger Super User

3. (N) Setup > Financials > Accounting Setup Manager > Accounting Setups.

4. In the Accounting Setups window, search by Ledger YourInitials_COA, click Go

5. Select Update Accounting Options.


Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 139
6. In the Primary Ledger region, click the Update icon for Ledger Options.

7. Click Next to access the Update Ledger: Ledger Options window.

8. In the Year End Processing region, click the Search icon for the Retained Earnings Account
field to display the list of values. The Accounting Flexfield appears.

9. Enter values in the Accounting Flexfield to test your work.

10. Cancel your entries and exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 140
Solution - Cross-Validations
Define your Cross-Validation Rule

Responsibility: System Administrator

1. (N) Application > Flexfield > Key > CrossValidation.

2. Query the YourInitials Chart of Accounts structure for the Accounting Flexfield in the
General Ledger application.

3. In the Cross-Validation Rules region, enter the information for the rule in the following
fields:

• Name: YourInitials_CVR:01

• Description: YourInitials Cross-Validation Rule 01

• Enabled: Selected

• Error Message: YourInitials_CVR:01-The Orange company cannot use the


Development cost center.

• Error Segment: CO

Define your Cross-Validation Rule Elements

4. In the Cross-Validation Rule Elements region, enter the information:

Type From To
Include 00.000.0000.0000 zz.zzzz.zzzz.zzzz
Exclude 02.300.0000.0000 02.300.zzzz.zzzz

5. Save your work.

6. (N) Application > Flexfield > Key > Segments.

7. Query the YourInitials Chart of Accounts structure for the Accounting Flexfield in the
General Ledger application.

8. Click (B) Compile to compile the flexfield definition. You will find two notes indicating
that the flexfield was compiled successfully. Click (B) OK to each note about submitting
your request to generate the flexfield view.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 141
Test your Key Flexfield

After defining your value sets, segments, and values, navigate to the Accounting Flexfield to test
the results of your work. To view the Accounting Flexfield, you will perform the beginning steps
in the process for creating your accounting structure and then view the accounting flexfield you
created earlier in this practice.

Responsibility: General Ledger Super User

9. (N) Setup > Financials > Accounting Setup Manager > Accounting Setups.

10. In the Accounting Setups window, search by Ledger YourInitials_COA, click (B) Go.

11. Select Update Accounting Options icon.

12. In the Primary Ledger region, click the Update icon for Ledger Options.

13. Click (B) Next to access the Update Ledger: Ledger Options window.

14. In the Year End Processing region, click the Search icon for the Retained Earnings Account
field to display the list of values. The Accounting Flexfield appears.

15. Enter values in the Accounting Flexfield to test your work.

16. Cancel your entries and exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 142
Practice - Shorthand Aliases
Overview
Shorthand aliases speed data entry for end users. Aliases can be used either to define a complete
key flexfield combination or to create a template providing values for some segments, thus
allowing the user to complete the flexfield entry. Users can determine whether to use aliases in
the Flexfields: Shorthand Entry user profile option. In this practice, you will define both a
complete shorthand alias and a partial alias template for the Accounting Flexfield structure you
defined in the Define a Key Flexfield lesson.

Tasks
Define your Shorthand Alias

1. Use the Shorthand Aliases window to define shorthand aliases for the Accounting Flexfield
structure, YourInitials Chart of Accounts that you defined in the Define a Key Flexfield
lesson. Enable aliases for this structure, a maximum size of 15, and a prompt of Shorthand.

2. Define an alias named YourInitials_SA_1, give the alias a description, and specify the
complete combination 03.100.1110.0000.

3. Define an alias named YourInitials_SA_2, give the alias a description, and specify the
partial combination 04...0000.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 143
Solution – Shorthand Aliases
Define your Shorthand Alias

Responsibility: System Administrator

1. (N) Application > Flexfield > Key > Aliases.

2. Query the YourInitials Chart of Accounts structure for the Accounting Flexfield in the
General Ledger application.

3. In the Shorthand region, enter information in the following fields:

• Enabled: Selected

• Max Alias Size: 15

• Prompt: Shorthand

4. In the Aliases, Descriptions region, enter information for your aliases:

Alias Template Alias Description


YourInitials _SA_1 03.100.1110.0000 Yellow Sales Cash
YourInitials _SA_2 04…0000 Green

5. Save your work.

6. (N) Application > Flexfield > Key > Segments.

7. Query the YourInitials Chart of Accounts structure for the Accounting Flexfield in the
General Ledger application.

8. Click (B) Compile to compile the flexfield definition. Click (B) OK to each note about
submitting your request to generate the flexfield view.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 144
Practice - Table Validation
Overview
In this practice, you will use an application table to validate a descriptive flexfield segment. You
will create a table-validated value set to validate employee numbers based on a Human
Resources application table called PER_ALL_PEOPLE_F. Then you will add an additional
segment to the descriptive flexfield structure you defined in the Define a Descriptive Flexfield
lesson to track the salesperson’s employee number.

Tasks
Define your Value Set

1. Use the Value Sets window to define a table-validated value set named
YourInitials_EMP_NUM. Give the value set a description, a format type of Char, and a
maximum size of 30. Enable Non-Hierarchical Security and Longlist for the value set.
Specify the table PER_ALL_PEOPLE_F in the Oracle Human Resources application as the
validation table. Assign the Value column the column name EMPLOYEE_NUMBER, a
type of Varchar2, and a size of 30. Assign the Meaning column the column name
FULL_NAME, a type of Varchar2, and a size of 240. Restrict the value set to include only
active employees by specifying the following Where/Order By clause:

WHERE CURRENT_EMPLOYEE_FLAG = ‘Y’

Define your Structure

2. After defining your value set, use the Descriptive Flexfield Segments window to define the
structure for your descriptive flexfield. For the purposes of this practice, use the same
descriptive flexfield you worked on previously to enter your new structure. Unfreeze the
flexfield definition first in order to make changes to the structure.

3. You can keep the two segments that you defined previously for the Global Data Elements
context. Now define a new segment for the Global Data Elements context. Name the
segment Employee Number, with a prompt of Employee Number. Assign the segment the
number 30, the column ATTRIBUTE6, and the value set YourInitials_EMP_NUM.

4. Ensure the new segment is displayed and enabled. When you finish defining the structure,
freeze and compile your flexfield definition.

Test your Descriptive Flexfield

5. After defining your value set and segment, navigate to your descriptive flexfield and test the
results of your work. When you are finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 145
Solution – Table Validation
Define your Value Set

Responsibility: System Administrator

1. (N) Application > Validation > Set.

2. Enter the information for the value set in the following fields:

• Value Set Name: YourInitials_EMP_NUM

• Description: YourInitials Employee Number Value Set

• Security Type: Non-Hierarchical

• List Type: Long List of Values

• Format Type: Char

• Maximum Size: 30

• Validation Type: Table

3. Click (B) Edit Information to navigate to the Validation Table Information window.

4. Use the lists of values in the Table Application to select Human Resources as the table
application type PER_ALL_PEOPLE_F as the table name.

5. In the Table Columns region, use the lists of values in the following fields:

Name Type Size


Value EMPLOYEE_NUMBER VarChar2 30
Meaning FULL_NAME VarChar2 240

6. In the Where/Order By field, enter

7. WHERE CURRENT_EMPLOYEE_FLAG = ‘Y’

8. Save your work.

Define your Structure

9. (N) Application > Flexfield > Descriptive > Segments.

10. Query your descriptive flexfield in the Descriptive Flexfield Segments window.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 146
11. Clear the Freeze Flexfield Definition check box.

12. In the Context Field Values region, select the Global Data Elements context and click (B)
Segments to navigate to the Segments Summary window.

13. Keep the two segments you defined previously.

14. Enter the information for the third segment in the following fields:

Window
Number Name Column Value Set Displayed Enabled
Prompt
Employee Employee
30 ATTRIBUTE6 YourInitials_EMP_NUM Checked Checked
Number Number

15. Save your work.

16. Navigate back to the Descriptive Flexfield Segments window.

17. Select the Freeze Flexfield Definition check box.

18. Click (B) Compile to compile the flexfield definition. Click (B) OK to each note about
submitting your request to generate the flexfield view.

Test your Descriptive Flexfield

19. After defining your value set and segment, navigate to your descriptive flexfield using the
General Ledger Super User responsibility and test the results of your work. When you are
finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 147
Practice - Cascading Dependencies with $FLEX$
Overview
In this practice, you will create a descriptive flexfield that uses cascading dependencies to
validate the values entered. The flexfield will track the manufacturer, model, and color of a
vehicle. The possible model values will be restricted depending on the manufacturer value, and
the possible color values will be restricted depending on the model value.

To set up the cascading dependencies, you will create table-validated value sets using the
following tables:

CAR_MAKERS

MANUFACTURER_NAME MANUFACTURER_DESCRIPTION MANUFACTURER_ID


Ford Ford 01
Nissan Nissan 02
Chevrolet Chevrolet 03
Chrysler Chrysler 04

CAR_MODELS

MODEL_NAME MODEL_DESCRIPTION MODEL_ID MANUFACTURER_ID


Mustang Mustang 011 01
Windstar Windstar 012 01
240SX 240SX 013 02
Altima Altima 014 02
Corvette Corvette 015 03
Camaro Camaro 016 03
Sebring Sebring 017 04
Concorde Concorde 018 04

CAR_COLORS

COLOR_NAME COLOR_DESCRIPTION COLOR_ID MODEL_ID MANUFACTURER_ID


Red Red 0101 011 01
Black Black 0102 011 01
Green Green 0103 011 01
Black Black 0104 012 01

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 148
COLOR_NAME COLOR_DESCRIPTION COLOR_ID MODEL_ID MANUFACTURER_ID
Blue Blue 0105 012 01
White White 0106 012 01
Champagne Champagne 0107 013 02
Red Red 0108 013 02
Sea Green Sea Green 0109 013 02
Silver Silver 0110 014 02
Gold Gold 0111 014 02
Teal Teal 0112 014 02
Black Black 0113 015 03
Red Red 0114 015 03
Yellow Yellow 0115 015 03
Purple Purple 0116 016 03
Blue Blue 0117 016 03
Green Green 0118 016 03
Maroon Maroon 0119 017 04
Silver Silver 0120 017 04
Green Green 0121 017 04
White White 0122 018 04
Blue Blue 0123 018 04
Silver Silver 0124 018 04

Tasks
Define your Value Sets

1. Use the Value Sets window to define three value sets.

• Define a table-validated value set named YourInitials_MFG. Give the value set a
description, a format type of Char, and a maximum size of 10. Enable non-hierarchical
security for the value set. Specify the table CAR_MAKERS as the validation table.
Assign the Value column the column name MANUFACTURER_NAME, a type of
Varchar2, and a size of 10. Assign the Meaning column the column name
MANUFACTURER_DESCRIPTION, a type of Varchar2, and a size of 30. Assign the
ID column the column name MANUFACTURER_ID, a type of Number, and a size of 2.

• Define a table-validated value set named YourInitials_MODEL. Give the value set a
description, a format type of Char, and a maximum size of 10. Enable non-hierarchical
security for the value set. Specify the table CAR_MODELS as the validation table.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 149
Assign the Value column the column name MODEL_NAME, a type of Varchar2, and a
size of 10. Assign the Meaning column the column name MODEL_DESCRIPTION, a
type of Varchar2, and a size of 30. Assign the ID column the column name MODEL_ID,
a type of Number, and a size of 3. Specify the following Where/Order By clause:

WHERE MANUFACTURER_ID = :$FLEX$. YourInitials_MFG

• Define a table-validated value set named YourInitials_COLOR. Give the value set a
description, a format type of Char, and a maximum size of 10. Enable non-hierarchical
security for the value set. Specify the table CAR_COLORS as the validation table.
Assign the Value column the column name COLOR_NAME, a type of Varchar2, and a
size of 10. Assign the Meaning column the column name COLOR_DESCRIPTION, a
type of Varchar2, and a size of 30. Assign the ID column the column name COLOR_ID,
a type of Number, and a size of 4. Specify the following Where/Order By clause:

WHERE MODEL_ID = :$FLEX$. YourInitials_MODEL


ORDER BY COLOR_NAME

Define your Structure

2. After defining your value sets, use the Descriptive Flexfield Segments window to define the
structure for your descriptive flexfield. For the purposes of this practice, use the same
descriptive flexfield that you worked on previously to enter your new structure. Unfreeze the
flexfield definition first so that you can change the structure.

3. Delete the segments that you defined previously for the Global Data Elements context. Then
define three new segments for the Global Data Elements context.

• Define a segment named Manufacturer, with a prompt of Manufacturer. Assign the


segment the number 10, the column ATTRIBUTE1, and the value set
YourInitials_MFG.

• Define a segment named Model, with a prompt of Model. Assign the segment the
number 20, the column ATTRIBUTE2, and the value set YourInitials_MODEL.

• Define a segment named Color, with a prompt of Color. Assign the segment the number
30, the column ATTRIBUTE3, and the value set YourInitials_COLOR.

• Ensure that all three segments are displayed and enabled. When you finish defining the
structure, freeze and compile your flexfield definition.

Test your Descriptive Flexfield

4. After defining your value sets and segments, navigate to your descriptive flexfield and test
the results of your work. When you are finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 150
Solution – Cascading Dependencies with $FLEX$
Define your Value Sets

Responsibility: System Administrator

1. (N) Application > Validation > Set.

2. Enter the information for the first value set in the following fields:

• Value Set Name: YourInitials_MFG

• Description: YourInitials Car Manufacturers Value Set

• Security Type: Non-Hierarchical

• Format Type: Char

• Maximum Size: 10

• Validation Type: Table

3. Click Edit Information to navigate to the Validation Table Information window.

4. Enter CAR_MAKERS as the table name.

5. In the Table Columns region, enter the following information for the Value column:

Name Type Size


Value MANUFACTURER_NAME VarChar2 10
Meaning MANUFACTURER_DESCRIPTION VarChar2 30
ID MANUFACTURER_ID Number 2

6. Save your work.

7. Enter the information for the second value set in the following fields:

• Value Set Name: YourInitials_MODEL

• Description: YourInitials Car Models Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 10

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 151
• Validation Type: Table

8. Click Edit Information to navigate to the Validation Table Information window.

9. Enter CAR_MODELS as the table name.

10. In the Table Columns region, enter the following information for the Value column:

Name Type Size


Value MODEL_NAME VarChar2 10
Meaning MODEL_DESCRIPTION VarChar2 30
ID MODEL_ID Number 3

11. In the Where/Order By field, enter

WHERE MANUFACTURER_ID = :$FLEX$. YourInitials _MFG

12. Save your work.

13. Enter the information for the third value set in the following fields:

• Value Set Name: YourInitials_COLOR

• Description: YourInitials Car Colors Value Set

• Security Type: Non-Hierarchical Security

• Format Type: Char

• Maximum Size: 10

• Validation Type: Table

14. Click Edit Information to navigate to the Validation Table Information window.

15. Enter CAR_COLORS as the table name.

16. In the Table Columns region, enter the following information for the Value column:

Name Type Size


Value COLOR_NAME VarChar2 10
Meaning COLOR_DESCRIPTION VarChar2 30
ID COLOR_ID Number 4

17. In the Where/Order By field, enter:

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 152
WHERE MODEL_ID = :$FLEX$.YourInitials _MODEL
ORDER BY COLOR_NAME

18. Save your work.

Define your Structure

19. (N) Application > Flexfield > Descriptive > Segments.

20. Query your descriptive flexfield in the Descriptive Flexfield Segments window.

21. Clear the Freeze Flexfield Definition check box.

22. Select the Global Data Elements context and click (B) Segments to navigate to the
Segments Summary window.

23. Delete the segments that you defined previously.

24. Save your work.

25. Enter the following information for the segments:

Note: Save after each segment.

Window
Number Name Column Value Set Displayed Enabled
Prompt
10 Manufacturer Manufacturer ATTRIBUTE1 YourInitials_MFG Checked Checked
20 Model Model ATTRIBUTE2 YourInitials_MODEL Checked Checked
30 Color Color ATTRIBUTE3 YourInitials_COLOR Checked Checked

26. Save your work.

27. Navigate back to the Descriptive Flexfield Segments window.

28. Select the Freeze Flexfield Definition check box.

29. Click (B) Compile to compile the flexfield definition. Click (B) OK to each note about
submitting your request to generate the flexfield view.

Test your Descriptive Flexfield

30. After defining your value sets and segments, navigate to your descriptive flexfield using the
General Ledger Super User responsibility and test the results of your work. When you are
finished, exit without saving.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 153
Guided Demonstration - Folders
Overview
The committee wants you to test setting up and administering a Folder form. But, they are
willing to do a single test. You will see the following demonstrated.

• Create the folder

• Assign a default folder definition to a user

• Set the profile option to control modifications of the folder by the user

Tasks
1. Log on to Oracle Applications using the username you defined earlier, such as
YourInitialsUSER.

2. Select General Ledger Super User responsibility and navigate to (N) Journals > Enter.

3. The first window you see is the Find Journals window. Note that once you create your folder
and assign it to your user this window will not appear.

4. In the Find Journals window, enter Payables in the Source field.

5. Click Find.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 154
6. In the Enter Journals window, choose Folder > Save As….

7. In the Save Folder window, enter the following:

• Folder: YourInitials Payables Journals

• Autoquery: Ask each time

• Public: enable check box

• Include query: enable check box

8. Click Show Query.

9. The Show Query window displays (JE_SOURCE=‘PAYABLES’).

Note: you can view the query here, but you cannot change it. Click OK to close the
window.

10. In the Save Folder window click OK.

11. In the Enter Journals window, the upper left corner next to the Folder icon is the name you
entered for your folder.

12. Click on the Folder icon to launch the Open Folder window.

Note: the other folders that are available for your selection. These appear because they are
defined as Public.

13. Click Cancel.

14. Click on the Folder Tools icon on the toolbar (the second icon from the right) to launch the
Folder Tools window palette. Move your cursor over each icon to view its function.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 155
15. Click the Show Field… icon to launch the Show Field selection window. This allows you to
add any of the listed fields to the Enter Journals window display.

16. Choose “Category” from the Show Field window if the Category column has not been added
to the display in the Enter Journals window or select another value when needed and click
OK.

17. Click the Save icon on the Folder Tools window, or choose Save from the Folder menu to
add the Category column to your folder definition.

18. Switch Responsibilities to your System Administrator responsibility.

19. (N) Application > Administer Folders.

20. In the Find Folders screen, select “Default folder assignments by user” and choose your user
name from list of values.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 156
21. Click Find.

22. In the Default Folders by User window, enter the following.

• Folder Set: GL_JE_BATCHES_HEADERS_V

• Folder: Your Initials Payables Journals

• Behavior Mode: No restrictions

23. Save your work.

24. (N) Profile > System.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 157
25. In the Find System Profile Values window enter the following.

• User: YourInitialsUser

• Profile: Folders: Allow Customization

26. Click Find.

27. Set the Profile Option to disallow modification by your user. In the System Profile Values
screen enter “No” as the User value for the profile option.

28. Save your work.

29. Switch Responsibilities back to your General Ledger Super User.

30. (N) Journals > Enter.

31. Notice that you see a Decision window that says “Find all records in this folder?” This
window displays because you chose “Ask each time” when you defined the folder.

32. Click Yes.

33. Notice that the Journal Entries window opens with your folder displayed.

34. Click on the Folder Tools icon on the toolbar. Note that all the modification icons are
disabled (because you set the Folders: Allow Customization profile option to No).

35. Click on the Folder menu and notice that the only enabled option is Open.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 158
Practice - Incorporating Custom Programs
Overview
The committee wants you to test the process for adding a custom program. In order to speed the
testing, the committee has agreed to use an existing program, the Completed Concurrent
Requests report, to test this functionality. In order to test this process, you will do the following.

• Create a concurrent program definition

• Add the concurrent program to a request group

• Add the request group to a responsibility

• Test your custom program

Tasks
Create your Concurrent Program Definition

1. Given the executable program already created, you need to create a concurrent program to
contain it. Query up the Completed Concurrent Requests Report program in the Concurrent
Programs window and use the Copy to button to create your custom program.

• Program: YourInitials Completed Concurrent Requests

• Short Name: YourInitials_CPCRQ

• Application: Application Object Library

• Choose to Include Program Parameters when copying

• Choose to Include Program Incompatibilities when copying

Add your Concurrent Program to a Request Group

2. Add your concurrent program to your existing YourInitials Assistant SysAdmin request
group. Once you have added it to this group, it will have already been assigned to the Your
Initials Assistant System Administrator responsibility and to the YourInitials_Assist_SA
user.

Test your Concurrent Program

3. Sign-on as the YourInitials_Assist_SA user, and submit a concurrent request for your new
report.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 159
Solution - Incorporating Custom Programs
Responsibility: System Administrator

If necessary, log in to Oracle Applications and select the System Administrator responsibility.

Create your Concurrent Program Definition

1. Navigate to (N) Concurrent > Program > Define.

2. Query the Completed Concurrent Requests program.

3. Click the (B) Copy to…

4. In the Copy to window enter the following:

• Program: YourInitials Completed Concurrent Requests Report

• Short Name: YourInitials_CPCRQ (e.g., JSCS_CPCRQ)

• Application: Application Object Library

• Choose to Include Program Parameters when copying

• Choose to Include Program Incompatibilities when copying

5. Click (B) OK to close the “Copy to …” window..

6. Save your work. Your completed form should appear similar to the example shown.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 160
7. Close the form.

Add your Concurrent Program to a Request Group

9. Navigate to (N) Security > Responsibility > Request.

10. Query your request group YourInitials Assistant SysAdmin Group.

11. Insert a new record and the Program YourInitials Completed Concurrent Requests.

12. Save your work. Your completed form should appear similar to the example shown.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 161
14. Close the form.

Test your Concurrent Program

15. Switch Responsibilities to or log in as the YourInitials_Assist_SA.

16. Navigate to (N) Requests > Run.

17. Click (B) OK to submit a single request.

18. Submit your new program and watch it complete successfully.

Copyright © Oracle Corporation, 2008. All rights reserved.

Guided Demonstrations and Practices


Chapter 26 - Page 162

Вам также может понравиться