You are on page 1of 81

© 2006 Oracle Corporation – Proprietary and Confidential

<Insert Picture Here>

Oracle Forms Personalization Without Coding


Bill Sawyer
Senior Principal Curriculum Developer
Management Challenges
Globalization creates unique challenges in managing…

Compliance Mandates Competitors


Increased and varying The Internet eliminated
regulatory / security borders making all
requirements exert additional markets global markets
burdens on businesses

Customers & Employees Suppliers


Manage employees and Margin pressures force
customers dispersed across companies to search for
geographic and cultural goods & services anywhere
in the world resulting in
boundaries
complex supply networks

© 2006 Oracle Corporation – Proprietary and Confidential


To Meet These Challenges, Businesses
Must…

¾ Think Globally to make the right decisions

¾ Work Globally to be more productive

¾ Manage Systems Globally to lower cost and


increase performance

© 2006 Oracle Corporation – Proprietary and Confidential


Program Agenda

• User Overview <Insert Picture Here>

• Technical Overview
• Demonstrations

© 2006 Oracle Corporation – Proprietary and Confidential


<Insert Picture Here>

User Overview

© 2006 Oracle Corporation – Proprietary and Confidential


Have you ever wanted to …

• Remove fields, buttons, tabs, etc. from the screen because they
are not used in your implementation?
• Re-label fields, buttons, tips to match your corporate
terminology?
• Change or set default value of fields?
• Allow navigation from one form to another, passing context?
• Add additional business logic/practices/messages?
• Do any of the above for only a particular user or responsibility?
• Do any of the above only if certain conditions are true?
• Do all of the above in a upgradeable manner without writing
code, and without violating Support agreements?

© 2006 Oracle Corporation – Proprietary and Confidential


Has this been personalized?

© 2006 Oracle Corporation – Proprietary and Confidential


Menu changes

Add menu items, and


shortcuts to other
forms/URLs, with
data/parameter passing

© 2006 Oracle Corporation – Proprietary and Confidential


Icon changes

Add/enable
icons

© 2006 Oracle Corporation – Proprietary and Confidential


Default values

Change default values, auto-


fill or validate data based on
business rules, make fields
mandatory

© 2006 Oracle Corporation – Proprietary and Confidential


Messages

Create pop-up messages


generated for/with specific
conditions and/or data

© 2006 Oracle Corporation – Proprietary and Confidential


Field prompts

Modify prompt/field
title, remove fields,
change entry order.

© 2006 Oracle Corporation – Proprietary and Confidential


Business logic

Support of additional
business logic/practices
(e.g. Hold Order)

© 2006 Oracle Corporation – Proprietary and Confidential


What are the benefits?

• Change the product to match your business processes instead of


changing your processes to match the product.
• Implement your Security, your Navigation, your Defaults, your
Terminology.
• Changes can be built, tested and deployed in minutes.
• Most changes can be entered by functional experts.
• Actions can be associated with one language, or all languages
(multi-language support).
• Form Personalizations are not customizations.
• They are likely to survive upgrades (but not without testing).
• Can be developed on one instance, and deployed to others.

© 2006 Oracle Corporation – Proprietary and Confidential


Navigation Example

Requirement: Navigate to
the Supplier screen for the
selected Supplier.

© 2006 Oracle Corporation – Proprietary and Confidential


Navigation Example

© 2006 Oracle Corporation – Proprietary and Confidential


Navigation Example

© 2006 Oracle Corporation – Proprietary and Confidential


Navigation Example

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

Requirement: Place the line


on hold if margin goes below
30%.

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

Requirement: The Task Type


should be used to determine
Task Owner (and Owner Type)

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

Requirement: If item cannot be


shipped to a specific state (hazardous
materials), place the line item on hold
and warn the user.

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

Requirement: Display Workflow


status for PO.

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

Requirement: If the quantity for


an item is over a defined limit,
change the default shipping
warehouse.

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

Requirement: Map Address


of Service Request

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

Requirement: View the WIP Discrete Job


linked to this sales order to make this item

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

Requirement (Part 2): View the


material requirements for the
WIP Job

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

© 2006 Oracle Corporation – Proprietary and Confidential


Business Logic Example

© 2006 Oracle Corporation – Proprietary and Confidential


UI Changes Example
Requirement: Make a number of
cosmetic changes and add “Town of
Add a Zoom to “Personal Birth” validation
Benefits Balance”
(passing Employee
Number) Insure“Town of Birth” is entered if
“Country of Birth” = “United
Make Mandatory States”
Remove

Change prompt to
Move up “Marital Status”

© 2006 Oracle Corporation – Proprietary and Confidential


UI Changes Example

© 2006 Oracle Corporation – Proprietary and Confidential


UI Changes Example

© 2006 Oracle Corporation – Proprietary and Confidential


External Websites Example

Requirement: Display tracking details


from Shipping Carrier for order line

© 2006 Oracle Corporation – Proprietary and Confidential


External Websites Example

© 2006 Oracle Corporation – Proprietary and Confidential


External Websites Example

© 2006 Oracle Corporation – Proprietary and Confidential


Legacy Integration Example

Requirement: Lookup new


account number based on
number from Legacy system

© 2006 Oracle Corporation – Proprietary and Confidential


Legacy Integration Example

Note ‘Legacy’ account number


is entered proceeded with a ‘!’

© 2006 Oracle Corporation – Proprietary and Confidential


Legacy Integration Example

Note ‘Legacy’ account number


is entered proceeded with a ‘!’

© 2006 Oracle Corporation – Proprietary and Confidential


Query Capability Example

Requirement: Add additional


item search/lookup capability

© 2006 Oracle Corporation – Proprietary and Confidential


Query Capability Example

© 2006 Oracle Corporation – Proprietary and Confidential


Query Capability Example

Any field of the Item Master can be


used to query items

© 2006 Oracle Corporation – Proprietary and Confidential


Query Capability Example

Note fields are ‘grey’. No inserts or


updates are allowed

© 2006 Oracle Corporation – Proprietary and Confidential


Query Capability Example

Closing Item Master returns item


number to Order Entry

© 2006 Oracle Corporation – Proprietary and Confidential


<Insert Picture Here>

Technical Overview

© 2006 Oracle Corporation – Proprietary and Confidential


Technical Overview

• Allows you to make changes to a form without programming


(declarative vs. coding).
• Changes are applied at runtime when the proper trigger event
(e.g. field to field navigation) occurs.
• Change object properties (e.g. name/title).
• Display messages to the user.
• Activate additional menu entries.
• Execute certain Forms builtins (e.g. database procedure call,
‘Do’ key, open form/URL).
• Change occurs based on a definable condition(s).
• Changes can be defined to occur site-wide or for a given
responsibility, industry, or user.

© 2006 Oracle Corporation – Proprietary and Confidential


Technical Overview

• Form Personalizations occur as a result of identified


navigation/form events.
• Forms Personalizations are accessed for a specific
function (i.e., function security rules apply).
• Forms Personalizations have two components.
• The personalization with it’s associated trigger event and
condition(s).
• The actions to be performed for when it is triggered.
• Form Personalizations are documented in Metalink
Note 279034.1.
• Also see the ‘11i Form Personalization’ in the Oracle
Education Online Library at www.oracle.com

© 2006 Oracle Corporation – Proprietary and Confidential


The Personalization UI

• You don’t have to think like a developer.


• Objects with prompts, titles or labels can be selected by their current
on-screen text.
• But, textual values and conditions offer powerful capabilities if
you do want to think like a developer.
• :block.fields (current form and system values)
• SQL functions/procedures
• server-side functions
• SELECT statements
• All changes can be applied and validated immediately to see
their effect.
• Changes can be disabled at multiple levels, including all, rule, or
action levels.

© 2006 Oracle Corporation – Proprietary and Confidential


Relationship to CUSTOM.PLL library

• CUSTOM.PLL is a stub library Oracle ships that


receives certain form events. Customers are able to
freely add any code they like to it.
• It is an Oracle Forms library, so you must use Oracle
Developer to edit and generate it.
• CUSTOM .PLL can do more because it has complete
access to PL/SQL and SQL.
• But Form Personalizations can and should handle the
vast majority of your changes.
• Form Personalizations and changes to the CUSTOM
.PLL library co-exist.

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Making Personalizations

© 2006 Oracle Corporation – Proprietary and Confidential


Handling Values
Constant: Hi there World!

Expression: ='Hi there '||:po_headers.vendor_name

=SELECT vendor_name "A"


SQL
from po_vendors
Statement:
where vendor_id = :po_headers.vendor_id

Expression =SOME_DATABASE_FUNCTION(
(DB function): :po_headers.vendor_id )

Note: 2000 character limit (text length and return value)!

© 2006 Oracle Corporation – Proprietary and Confidential


Development Scenario

PO_HEADERS.VENDOR_SITE_CODE

Scenario: Display a message when the


Supplier is entered that indicates the supplier
and how many open invoices they have.

© 2006 Oracle Corporation – Proprietary and Confidential


Development Scenario

© 2006 Oracle Corporation – Proprietary and Confidential


Development Scenario

© 2006 Oracle Corporation – Proprietary and Confidential


Development Scenario

© 2006 Oracle Corporation – Proprietary and Confidential


Development Scenario

Note: Column alias of “A”


and must be of type CHAR

© 2006 Oracle Corporation – Proprietary and Confidential


Development Scenario

© 2006 Oracle Corporation – Proprietary and Confidential


<Insert Picture Here>

Demonstrations

© 2006 Oracle Corporation – Proprietary and Confidential


<Insert Picture Here>

Appendix

© 2006 Oracle Corporation – Proprietary and Confidential


For More Information

http://search.oracle.com

Personalization and Extension of Apps

or
http://www.oracle.com/technology/products/
applications/development_pesonalization/

© 2006 Oracle Corporation – Proprietary and Confidential


© 2006 Oracle Corporation – Proprietary and Confidential
© 2006 Oracle Corporation – Proprietary and Confidential

You might also like