SlideShare a Scribd company logo
Forms and OA Framework Personalization
Examples in R11i/R12
Presented By
Susan Behn
VP, Oracle Practice
Central States OAUG Spring 2011 St. Louis Conference
2
Agenda
•  Why
–  Business Benefit
•  What
–  Overview of Personalization Tools
•  How
–  Forms Personalization Examples
–  OA Framework Personalization Examples
–  Migration to other instances
•  References
3
Business Benefit – $aves Money!
Implement security policies
Less
Development
Time
Reduce
Audit Costs
Reduce
Processing
Time
Adapt terminology to your
business without coding
Attach extensions ‒
seamless processing power
Speed up data entry ‒
move or eliminate fields
Add validations ‒
reduced error correction
Reduce
Upgrade Costs
Reduce
Training Time
Declarative Menu Driven Tools
Business User Friendly
Survives patching
4
Overview
•  Personalizations – declaratively alter
behavior or appearance using tools
provided by Oracle
•  Personalization Tools
–  Forms personalizations
•  Professional Forms 6i or 10g
–  OA Framework Personalizations
–  CUSTOM.pll
•  Programmatic tool prior to 11.5.10
•  Professional forms only
5
Overview – Forms Personalization
•  Requires superuser with some sql skills
•  Survive patching and upgrades
–  Includes post patch/upgrade validation process
•  Most changes traditionally done using
CUSTOM.pll can be accomplished using Forms
Personalization
•  Effective immediately – no coding, no compiling
•  Forms Personalizations fire prior to CUSTOM.pll
for the same event
6
Overview – Forms Personalizations
What you can do?
•  Speed up data entry and processing
–  Hide fields, tabs
–  Change order of fields
–  Set default values
–  Call other forms or web address from tool bar
–  Execute processes from tool bar
•  Improve security and audit controls
–  Make fields required
–  Restrict insert or update
•  Adapt to your business rules/self training
–  Change prompts and labels
–  Alter List of Values (LOVs)
7
Overview – OA Framework Personalizations
•  OA Framework Personalization is for self-
service applications
– Introduced with 11.5.9
•  Apply Patch 3323690
– Standard with 11.5.10 and Release 12
•  Requires functional superuser
– Minimal technical expertise required
8
Overview – OA Framework Personalizations
What you can do?
•  Speed up data entry and processing
–  Reorder Columns
–  Hide Columns
–  Set Initial Values
•  Improve security and audit controls
–  Remove Buttons
–  Change Field Attributes – make fields required
•  Adapt to your business rules/self training
–  Change Page and Section Headers
–  Change Field and Column Names
–  Change Button Names
–  Add Items (Buttons, Fields, Tips and more)
9
Forms 6i and10g Personalizations
Setup and Use
Examples
Tips
10
Setup – Profile Options – Form
Personalizations
•  Hide Diagnostics menu entry
– Set to No to see the menu
•  Utilities: Diagnostics
– Set to No to require apps password
11
Accessing Forms Personalization
•  Access the form or function needing personalization
•  Help à Diagnostics à Custom Code à Personalize
12
Forms Personalization
Form/Function
Default = Function
Most often should be
Form
1 ‒ 100
Reusable
13
Forms Personalization – Condition Tab
•  Trigger event determines when the rule fires
–  Use standard trigger events (next slide)
–  Use specific events unique to the form (With Caution)
•  Find additional events using Help àDiagnostics àCustom Code
àShow Custom Events
•  Trigger object depends on trigger event
–  WHEN-NEW-BLOCK-INSTANCE requires block name
14
Forms Personalization - Standard Trigger Events
•  WHEN-NEW-FORM-INSTANCE
–  Security rules, Navigation rules, Visual attributes
•  WHEN-NEW-BLOCK-INSTANCE
–  Same as WHEN-NEW-FORM-INSTANCE
–  Message rules
•  WHEN-NEW-RECORD-INSTANCE
–  Default values
•  WHEN-NEW-ITEM-INSTANCE
–  Message rules
–  Default values dependent on entry of another
item
15
Forms Personalization - Standard Trigger Events
•  WHEN-VALIDATE-RECORD
–  Populate hidden fields
–  Additional validations
•  SPECIALn
–  Populate tools menu (SPECIAL 1-15)
–  Populate reports menu (SPECIAL 16-30)
–  Populate actions menu (SPECIAL 31-45)
•  MENUn
–  Populate tools menu (MENU1-15)
16
Forms Personalization – Condition Tab
•  Condition
–  Optional SQL code fragment to limit scope of rule
–  Use bind variables (:block.field)
–  Evaluates to true or false – use for complex
validation
17
Forms Personalization – Context
•  Who does this rule apply to?
Site
Responsibility
User ‒ Use this for
testing rules
Industry (For future use) Tip: For initial
development, set
context to your user
id
18
Forms Personalization - Property Actions
•  Sequence – non unique (1 – 100)
•  Type – property, message, built-in, menu
•  Description – (Optional)
•  Language – use to change prompts for language
Prompts change
depending on
action type
19
Example #1 – Display Message
•  What
–  GL Journal Entry – Remind users to change the
period name the first 20 days of the fiscal year
•  Why
–  During year end close, the final period is open
longer resulting in mistakes
–  Save time and money by reducing errors
–  Reduce time for training through use of
automated messages
20
Example #1 – Display Message
•  How
Message appears
Feb 1 ‒ Feb 20 every
year
Condition is checked when the user
accesses the journal name field
Enter
header
details
21
Example #1 – Display Message
•  Message Types
–  Show – Informational Message
–  Hint – Appear on status bar
–  Error – Requires user response – raises form_trigger_failure
–  Debug – Only displays if debug mode is set to Show Debug
Messages
–  Warn – Informational message with caution symbol – raises
form_trigger_failure
Action type
= message
22
Example #1 – Display Message
•  Result
Click OK to
continue
23
Example #2 – Data Access Restrictions
•  What
– Restrict users from entering or retrieving their
own invoice
•  Why
– Audit control
– Theft prevention
•  How
– Requires minimal SQL skills
24
Example #2 – Data Access Restrictions
•  Enter header and condition tab details
–  WHEN-NEW-BLOCK-INSTANCE for the invoice
block controls access at the invoice level.
25
Example #2 – Data Access Restrictions
•  Change the default where clause to prevent
retrieval of employee invoices based on user id
vendor_id NOT IN
(SELECT vendor_id
FROM po_vendors pv ,
fnd_user fusr
WHERE fusr.user_id = fnd_profile.value('USER_ID')
AND fusr.employee_id = pv.employee_id )
26
Example #3 – Menu Entries
•  What
– Create a menu item to display the invoice id
•  Why
– Access to invoice id makes workflow and
invoice approval troubleshooting faster
27
Example #3 – Menu Entries
•  How - Step 1 – establish the menu entry
•  Trigger Event = WHEN-NEW-FORM-INSTANCE
Use WHEN-NEW-FORM-
INSTANCE for visual changes
Such as establishing menu entries
28
Example #3 – Menu Entries
•  Menu action type only displays the menu
Note Menu
Entry # for
step 2
29
Example #3 – Menu Entries
•  Step 2 – create the action for the menu entry
–  Trigger Event = MENU# chosen in step 1
30
Example #3 – Menu Entries
•  Step 2 – create the action for the menu entry
Use validate button to
check sql fragment
31
Example #3 – Menu Entries
•  Result
Choose
menu item
32
Example #3 – Menu Entries
•  Result
Message is
displayed
33
Another Example – Menu Entries
•  What
–  Create invoice tax distributions for use tax for invoices where
sales tax was not charged
•  Why
–  Less manual processing saves money
•  Reduces data entry time
•  Eliminates calculation errors
•  How
–  Create a PL/SQL procedure which uses Oracle standard APIs to
calculate and create distributions
–  Call procedure from menu item with Execute a Procedure Builtin
34
Example #4 – Masking Data
•  What
– Mask the tax id (11i)
•  Supplier form has moved to OA Framework in R12
•  Why
– Compliance
•  Secure sensitive data
35
Example #4 – Masking Data
•  How - Change form appearance at
WHEN-NEW-FORM-INSTANCE trigger
36
Example #4 – Masking Data
•  CONCEAL_DATA = TRUE - replaces data with *
•  DISPLAYED = FALSE – hides field completely
Use Select By
Text button to
find correct
object by prompt
Don t need to
know object
name
37
Example #4 – Masking Data
•  Result
38
Example #5 – Changing LOVs
•  What
– Remove Taxpayer ID from List of Values
(LOVs) for find window
•  Why
– Compliance
•  Secure Sensitive Data
– Adapt to business/Reduce training time
•  Limit LOVs to only display data applicable to
business
39
Example #5 – Changing LOVs
•  Taxpayer ID is also on LOVs for find windows
40
Example #5 – Changing LOVs
•  HOW – Use Create a new record group Builtin
Must have the same
number of fields as
existing Record group
41
Example #5 – Changing LOVs
•  Assign the new record group to the LOV used for
Supplier name
Record group
created in
previous slide
42
Example #5 – Changing LOVs
•  Result
•  Additional steps
–  Mask the tax id on the find window
–  Replace the tax id with the end date for the supplier
number LOV
43
Other Process Improvement Features
•  Utilize the following Builtins to improve process flows
–  Launch SRS Form – runs concurrent request
–  Launch a Function – call another form
–  Launch a URL – call any web page
–  DO_KEY
•  DO_KEY(‘NEXT_BLOCK’) will force query execution for find window
–  GO_ITEM, GO_BLOCK – change navigation
•  Use to prevent update to a field where navigation is needed to populate
–  EXECUTE_TRIGGER
•  Execute form trigger, not database trigger
•  Use after setting default values to ensure internal code executes
44
Forms Personalization – Tips
•  Exit and re-open the form to see
personalization changes
•  Use debug messages before and after
events
•  Apply Now button - see the results
–  Does not always work if dependant on the results
of another action
•  Turn custom code off - Help à Diagnostics
à Custom Code à Off
45
Forms Personalization Maintenance
•  After upgrades, go to the personalization for each form
and choose Tools à Validate All
•  Tools à Administration will show personalized forms
–  Press the Find button with the Form Name blank
46
OA Framework Personalizations
Setup and Use
Examples 6 - 10
47
Setup – Profile Options – OA Framework
Personalizations
•  Personalize Self-Service Defn
–  Yes to allow ‘Personalize’ button to appear at the top of the page
•  FND: Personalization Region Link Enabled
–  Yes to display all the regional links above each region
–  Minimal to display key regional links
•  Disable Self-Service Personal
–  Yes will disable all personalizations at any level
•  FND: Diagnostics
–  Turns on ‘About this Page’
•  FND: Personalization Document Root Path (new in 11.5.10)
–  Required to migrate personalizations
–  Set this profile option to a tmp directory with open (777) permissions
48
OA Framework Personalizations
Personalize
Self-Service
Defn = Yes
FND: Personalization
Region Link Enabled
= Yes
FND: Diagnostics
= Yes
49
OA Framework Examples
•  Remove a button
•  Change prompts
•  Hide/reorder columns in a table
•  Set initial values
•  Display a field
50
Example #6 – Remove a button
•  What
–  Remove the Import Spreadsheet button in iExpenses for a
separate responsibility where iExpenses is utilized for
procurement card transactions
•  Why – Process Improvement
–  Adapt to your own business processes without customization
•  Importing Spreadsheets is not applicable to this business function
–  No cash or out of pocket transactions for procurement cards
•  More details: Using Personalizations to Give Your Self
Service Applications a Custom Look and Feel
–  http://www.solutionbeacon.com/
PersonalizationsOpenWorld2008.pdf
51
Example #6 – Remove a button
•  How – Click Personalize Page button
Start with
Personali
ze Page
52
Example #6 – Remove a button
•  Biggest challenge – finding the item to personalize
–  Simple View
–  Complete View
–  Expand All
–  <ctrl> F
–  Collapse All
–  Focus
53
Example #6 – Remove a button
•  My favorite – expand all and use <crtl> F
Click pencil to
edit
54
Example #6 – Remove a button
•  Set rendered = false and click Apply
button
Options for
personalization
change based on
object type
55
Example #6 – Remove a button results
•  Click the Return to Application button
Button is gone
Shown column is
now null since
rendered = false
56
Personalization Levels / Inheritance
•  Personalizations at lower levels override
personalizations at higher levels
•  Values inherit the definition from the level
immediately above unless changed
•  Order of precedence from highest to lowest:
–  Function
–  Site
–  Operating Unit
–  Responsibility
57
Example #7 – Change Prompts
•  What
– Change Id to Notification Id
•  Why
– Clarify description of field
– Eliminate confusion
– Less training
Tip: Changing prompts to your own business terminology
speeds up training of new employees and reduces error
rates!
58
Example #7 – Change Prompts
•  How
– Click the Personalize Page button and find the
Id using <ctrl> F
59
Example #7 – Change Prompts
•  How - Click the pencil
Click pencil to
edit
60
Example #7 – Change Prompts
•  How – Change the prompt at the site level
Site Level
Personalization
61
Example #7 – Change Prompts
•  Result – prompt changed
62
Example #8 – Hide/Reorder
Columns in a table
•  What
–  Hide the Duplicate column to prevent users from
duplicating expense reports
–  Reorder columns
•  Why
–  Hastily duplicating expense reports increased
error rates
–  For the procurement card usage of iExpenses,
this functionality did not apply
–  Reorder columns to match desired data entry flow
for faster entry
63
Example #8 – Hide/Reorder
Columns in a table
•  How
– Click the Personalize Page button
– Use strategies on next slide to find the
Duplicate column
64
Example #8 – Hide/Reorder
Columns in a table
•  The button to duplicate is called a Switcher
–  Switchers allow users to “switch” to another
function
•  Finding tip
–  Look for other columns in the table if searching
for a common word
•  Report Total
•  Purpose
Click
pencil
to edit
65
Example #8 – Hide/Reorder
Columns in a table
Set Rendered
= false
Duplicate
column is gone
66
Example #8 – Hide/Reorder
Columns in a table
•  Find the table to reorder table columns
– Turn on region links to find tables easier
Click the reorder
icon at the table
level
67
Example #8 – Hide/Reorder
Columns in a table
•  Check personalization level
•  Use arrows to move fields up or down
68
Example #9 – Set Initial Values
•  What
–  Set the initial value for the Purpose at the
Responsibility level as follows:
•  Expense report responsibilities
–  Purpose = ‘Internet Expenses’
•  Procurement card responsibilities
–  Purpose = “Procurement card”
•  Why
–  Save time
•  Streamline data entry
69
Example #9 – Set Initial Values
•  How
– In the appropriate responsibility, click the
Personalize Page button
70
Example #9 – Set Initial Values
•  Set the initial value based on the
responsibility
71
Example #10 – Add Item
•  What
– Add Tips to provide additional instructions
– Add a tip to direct users to the corporate
receiving training application
•  Why
– Make new users self sufficient
– Reduce training costs
– Reduce errors
72
Example #10 – Add Item
•  How – First create the text for the Tip through
the Functional Administrator responsibility
73
Example #10 – Add Item
•  Go to the receiving page where the tip is
to be added and click Personalize Page
74
Example #10 – Add Item
•  Find the item for tips and click the create
item button
Click to create new items
such as buttons, text,
messages, tips, raw text
75
Example #10 – Add Item
•  Enter the
item style,
id, Text to
identify the
tip and the
message
name for
the
message
created
76
Example #10 – Add Item
New tip is added
77
Customizations and Personalizations
Customizations or Personalizations, whether they are
protected or non protected, allow you to fundamentally
change the behavior of the application.
This could interfere with intended
functionality.
Use with caution!
TEST! TEST! TEST! TEST! TEST!
WARNING
78
Customizations and Personalizations
…THEN TEST IT
AGAIN!
***BUT NOT IN PRODUCTION**
79
Migration to Other Instances
Forms Personalizations
•  Download for a specific form:
–  FNDLOAD <userid>/<password> 0 Y DOWNLOAD $FND_TOP/
patch/115/import/affrmcus.lct <filename.ldt>
FND_FORM_CUSTOM_RULES form_name=<form name>
•  Download all personalizations
–  FNDLOAD <userid>/<password> 0 Y DOWNLOAD $FND_TOP/
patch/115/import/affrmcus.lct <filename.ldt>
FND_FORM_CUSTOM_RULES
•  Upload
–  FNDLOAD <userid>/<password> 0 Y UPLOAD $FND_TOP/
patch/115/import/affrmcus.lct <filename.ldt>
80
Migration to Other Instances
OA Framework Personalizations
•  Migrate OA Framework Personalizations from the
Functional Administrator Responsibility
–  Export to directory defined in FND: Personalization Document
Root Path
–  FTP to target instance
–  Import from Document Root Path directory
81
Summary
•  Personalizations reduce customizations
•  Personalizations are easy to implement
•  Personalizations can save you money
–  Less customizations result in lower maintenance
cost and lower patching/upgrade costs
–  Increase compliance reducing audit cost
–  Speed up data entry
–  Decrease error rates
–  Reduce training costs
–  Make users self sufficient
82
References
•  Oracle Application Framework Personalization Guide
•  Oracle Applications User Interface Standards for Forms-
Based Products
•  Oracle Applications Developer’s Guide
•  Oracle Applications System Administrator’s Guide
•  Oracle Applications User Guide
•  My Oracle Support ID: 279034.1 – Forms
Personalization
83
The Release 12 Primer ‒
Shining a Light on the
Release 12 World
The ABCs of Workflow for Oracle
E-Business Suite Release 11i and
Release 12
84
Questions and Answers
Thank You!
Susan Behn
susan.behn@infosemantics.com

More Related Content

DOCX
How to configure LCM After receiving
DOCX
Oracle Process Manufacturing Setup EBS12.2
DOC
Oracle EBS R12 Payroll user manual
PPT
Oracle Forms Tutorial (www.aboutoracleapps.com)
PDF
Oracle Inventory Complete Implementation Setups.
DOC
Oracle ebs otl setup document
PPS
Oracle XML Publisher / BI Publisher
PDF
Configuring Parallel Approvers Notification
How to configure LCM After receiving
Oracle Process Manufacturing Setup EBS12.2
Oracle EBS R12 Payroll user manual
Oracle Forms Tutorial (www.aboutoracleapps.com)
Oracle Inventory Complete Implementation Setups.
Oracle ebs otl setup document
Oracle XML Publisher / BI Publisher
Configuring Parallel Approvers Notification

What's hot (20)

PDF
Oracle EBS Currency conversion
PDF
Oracle R12 Order Management - Back to Back (B2B) Order Flow:
DOCX
Elshayeb Oracle R12 Order Management
PDF
Oracle EBS R12 Order Management Notes
PDF
Oracle Payables R12 ivas
PDF
Oracle R12 Apps – SCM Functional Interview Questions & Answers – Purchasing M...
PPTX
Oracle R12.1.3 Costing Overview
PDF
Oracle Purchasing ivas
PDF
Om dates
PDF
Ame how to diagnose issues with the default approver list in purchasing when ...
PDF
Wip back flush
PPTX
Drop Ship Sales Order Across Operating Units
PDF
Oracle ame complete setup
PDF
R12.2.4 india localization setup
DOCX
Blanket purchase agreement and blanket release in oracle r12
PPTX
Payroll process in oracle hrms
DOCX
Oracle Purchasing Internal Requisition
DOCX
Oracle Advanced Pricing (Creating a discount modifier using qualifiers)
PDF
Otl Oracle Time and Labor
PDF
Oracle Inventory – Inventory Controls
Oracle EBS Currency conversion
Oracle R12 Order Management - Back to Back (B2B) Order Flow:
Elshayeb Oracle R12 Order Management
Oracle EBS R12 Order Management Notes
Oracle Payables R12 ivas
Oracle R12 Apps – SCM Functional Interview Questions & Answers – Purchasing M...
Oracle R12.1.3 Costing Overview
Oracle Purchasing ivas
Om dates
Ame how to diagnose issues with the default approver list in purchasing when ...
Wip back flush
Drop Ship Sales Order Across Operating Units
Oracle ame complete setup
R12.2.4 india localization setup
Blanket purchase agreement and blanket release in oracle r12
Payroll process in oracle hrms
Oracle Purchasing Internal Requisition
Oracle Advanced Pricing (Creating a discount modifier using qualifiers)
Otl Oracle Time and Labor
Oracle Inventory – Inventory Controls
Ad

Viewers also liked (20)

PPS
Oracle Framework Personalization
PDF
Form personalization 395117_r12_updated1212
DOCX
Oracle EBS R12 Sales order personalization
PDF
Oaf personaliztion examples
PDF
Oracle apps forms personalization oracle documents
PPT
Customizing Oracle EBS OA Framework
PDF
Efficiently handling Applications of Customer Receipts in Oracle Receivables
PDF
AhmedTawfik_CV
PPTX
New Approaches to Faster Oracle Forms System Performance
PPS
Oracle BI Publsiher Using Data Template
PDF
OOW15 - Migrating and Managing Customizations for Oracle E-Business Suite 12.2
PDF
10 tips for successful 12.2 upgrade
PDF
21.1 personalization changing-the_field_name_part_21.1
DOCX
Oracle Personalization How To Restricting users from assigning items to diffe...
DOC
Oracle Applications - Sales Order Entering,Booking,Picking And Shipping Made ...
DOC
DOC
Oracle ERP Personalization for control master items list
DOCX
Inventory in Oracle apps
PPT
Xml Publisher And Reporting To Excel
PDF
Oracle Financials R12 - GL STEP 1 - Chart Of Accounts
Oracle Framework Personalization
Form personalization 395117_r12_updated1212
Oracle EBS R12 Sales order personalization
Oaf personaliztion examples
Oracle apps forms personalization oracle documents
Customizing Oracle EBS OA Framework
Efficiently handling Applications of Customer Receipts in Oracle Receivables
AhmedTawfik_CV
New Approaches to Faster Oracle Forms System Performance
Oracle BI Publsiher Using Data Template
OOW15 - Migrating and Managing Customizations for Oracle E-Business Suite 12.2
10 tips for successful 12.2 upgrade
21.1 personalization changing-the_field_name_part_21.1
Oracle Personalization How To Restricting users from assigning items to diffe...
Oracle Applications - Sales Order Entering,Booking,Picking And Shipping Made ...
Oracle ERP Personalization for control master items list
Inventory in Oracle apps
Xml Publisher And Reporting To Excel
Oracle Financials R12 - GL STEP 1 - Chart Of Accounts
Ad

Similar to Oracle forms personalization (20)

PDF
Oaf personalization examples
PPTX
Sage100 Tips and Tricks - Spring 2020
PDF
Personalizations Top Ten Rtr
PPT
QuickBooks: Setting up and Trouble Shooting
PPTX
Lightning Process Builder
PPTX
Lightning Process Builder
PPT
PPTX
Advanced Test Design Methods
PPTX
The 5.0 Demo: Building a Compelling Story
PPTX
Modern Day Accounting Applications—Intacct Cloud ERP
PPTX
Process Builder Automation and Considerations
PPTX
SugarCon 2013 -Tips and Best Practices: No code required configs round1
PPT
11i10 ATFormPersonalization_HRDv2[1].ppt
PDF
What's New In Sage MAS 90
PDF
What's new in sage mas 90
PDF
Finit creative solutions for cash flow fx analysis through dashboarding
PDF
Finit formula and business rule efficiency in one stream
PDF
Creating a Great XPages User Interface
PDF
Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014
PDF
Contractors.es - Construction/HVAC Business Management Software Manual
Oaf personalization examples
Sage100 Tips and Tricks - Spring 2020
Personalizations Top Ten Rtr
QuickBooks: Setting up and Trouble Shooting
Lightning Process Builder
Lightning Process Builder
Advanced Test Design Methods
The 5.0 Demo: Building a Compelling Story
Modern Day Accounting Applications—Intacct Cloud ERP
Process Builder Automation and Considerations
SugarCon 2013 -Tips and Best Practices: No code required configs round1
11i10 ATFormPersonalization_HRDv2[1].ppt
What's New In Sage MAS 90
What's new in sage mas 90
Finit creative solutions for cash flow fx analysis through dashboarding
Finit formula and business rule efficiency in one stream
Creating a Great XPages User Interface
Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014
Contractors.es - Construction/HVAC Business Management Software Manual

Recently uploaded (20)

PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
A Presentation on Artificial Intelligence
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Electronic commerce courselecture one. Pdf
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
Spectroscopy.pptx food analysis technology
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Machine learning based COVID-19 study performance prediction
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PPTX
Machine Learning_overview_presentation.pptx
PDF
Getting Started with Data Integration: FME Form 101
PDF
Encapsulation theory and applications.pdf
PPTX
Big Data Technologies - Introduction.pptx
PPTX
Tartificialntelligence_presentation.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
Building Integrated photovoltaic BIPV_UPV.pdf
Programs and apps: productivity, graphics, security and other tools
A Presentation on Artificial Intelligence
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Electronic commerce courselecture one. Pdf
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Spectroscopy.pptx food analysis technology
Mobile App Security Testing_ A Comprehensive Guide.pdf
MYSQL Presentation for SQL database connectivity
Machine learning based COVID-19 study performance prediction
Diabetes mellitus diagnosis method based random forest with bat algorithm
Spectral efficient network and resource selection model in 5G networks
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Machine Learning_overview_presentation.pptx
Getting Started with Data Integration: FME Form 101
Encapsulation theory and applications.pdf
Big Data Technologies - Introduction.pptx
Tartificialntelligence_presentation.pptx
Network Security Unit 5.pdf for BCA BBA.

Oracle forms personalization

  • 1. Forms and OA Framework Personalization Examples in R11i/R12 Presented By Susan Behn VP, Oracle Practice Central States OAUG Spring 2011 St. Louis Conference
  • 2. 2 Agenda •  Why –  Business Benefit •  What –  Overview of Personalization Tools •  How –  Forms Personalization Examples –  OA Framework Personalization Examples –  Migration to other instances •  References
  • 3. 3 Business Benefit – $aves Money! Implement security policies Less Development Time Reduce Audit Costs Reduce Processing Time Adapt terminology to your business without coding Attach extensions ‒ seamless processing power Speed up data entry ‒ move or eliminate fields Add validations ‒ reduced error correction Reduce Upgrade Costs Reduce Training Time Declarative Menu Driven Tools Business User Friendly Survives patching
  • 4. 4 Overview •  Personalizations – declaratively alter behavior or appearance using tools provided by Oracle •  Personalization Tools –  Forms personalizations •  Professional Forms 6i or 10g –  OA Framework Personalizations –  CUSTOM.pll •  Programmatic tool prior to 11.5.10 •  Professional forms only
  • 5. 5 Overview – Forms Personalization •  Requires superuser with some sql skills •  Survive patching and upgrades –  Includes post patch/upgrade validation process •  Most changes traditionally done using CUSTOM.pll can be accomplished using Forms Personalization •  Effective immediately – no coding, no compiling •  Forms Personalizations fire prior to CUSTOM.pll for the same event
  • 6. 6 Overview – Forms Personalizations What you can do? •  Speed up data entry and processing –  Hide fields, tabs –  Change order of fields –  Set default values –  Call other forms or web address from tool bar –  Execute processes from tool bar •  Improve security and audit controls –  Make fields required –  Restrict insert or update •  Adapt to your business rules/self training –  Change prompts and labels –  Alter List of Values (LOVs)
  • 7. 7 Overview – OA Framework Personalizations •  OA Framework Personalization is for self- service applications – Introduced with 11.5.9 •  Apply Patch 3323690 – Standard with 11.5.10 and Release 12 •  Requires functional superuser – Minimal technical expertise required
  • 8. 8 Overview – OA Framework Personalizations What you can do? •  Speed up data entry and processing –  Reorder Columns –  Hide Columns –  Set Initial Values •  Improve security and audit controls –  Remove Buttons –  Change Field Attributes – make fields required •  Adapt to your business rules/self training –  Change Page and Section Headers –  Change Field and Column Names –  Change Button Names –  Add Items (Buttons, Fields, Tips and more)
  • 9. 9 Forms 6i and10g Personalizations Setup and Use Examples Tips
  • 10. 10 Setup – Profile Options – Form Personalizations •  Hide Diagnostics menu entry – Set to No to see the menu •  Utilities: Diagnostics – Set to No to require apps password
  • 11. 11 Accessing Forms Personalization •  Access the form or function needing personalization •  Help à Diagnostics à Custom Code à Personalize
  • 12. 12 Forms Personalization Form/Function Default = Function Most often should be Form 1 ‒ 100 Reusable
  • 13. 13 Forms Personalization – Condition Tab •  Trigger event determines when the rule fires –  Use standard trigger events (next slide) –  Use specific events unique to the form (With Caution) •  Find additional events using Help àDiagnostics àCustom Code àShow Custom Events •  Trigger object depends on trigger event –  WHEN-NEW-BLOCK-INSTANCE requires block name
  • 14. 14 Forms Personalization - Standard Trigger Events •  WHEN-NEW-FORM-INSTANCE –  Security rules, Navigation rules, Visual attributes •  WHEN-NEW-BLOCK-INSTANCE –  Same as WHEN-NEW-FORM-INSTANCE –  Message rules •  WHEN-NEW-RECORD-INSTANCE –  Default values •  WHEN-NEW-ITEM-INSTANCE –  Message rules –  Default values dependent on entry of another item
  • 15. 15 Forms Personalization - Standard Trigger Events •  WHEN-VALIDATE-RECORD –  Populate hidden fields –  Additional validations •  SPECIALn –  Populate tools menu (SPECIAL 1-15) –  Populate reports menu (SPECIAL 16-30) –  Populate actions menu (SPECIAL 31-45) •  MENUn –  Populate tools menu (MENU1-15)
  • 16. 16 Forms Personalization – Condition Tab •  Condition –  Optional SQL code fragment to limit scope of rule –  Use bind variables (:block.field) –  Evaluates to true or false – use for complex validation
  • 17. 17 Forms Personalization – Context •  Who does this rule apply to? Site Responsibility User ‒ Use this for testing rules Industry (For future use) Tip: For initial development, set context to your user id
  • 18. 18 Forms Personalization - Property Actions •  Sequence – non unique (1 – 100) •  Type – property, message, built-in, menu •  Description – (Optional) •  Language – use to change prompts for language Prompts change depending on action type
  • 19. 19 Example #1 – Display Message •  What –  GL Journal Entry – Remind users to change the period name the first 20 days of the fiscal year •  Why –  During year end close, the final period is open longer resulting in mistakes –  Save time and money by reducing errors –  Reduce time for training through use of automated messages
  • 20. 20 Example #1 – Display Message •  How Message appears Feb 1 ‒ Feb 20 every year Condition is checked when the user accesses the journal name field Enter header details
  • 21. 21 Example #1 – Display Message •  Message Types –  Show – Informational Message –  Hint – Appear on status bar –  Error – Requires user response – raises form_trigger_failure –  Debug – Only displays if debug mode is set to Show Debug Messages –  Warn – Informational message with caution symbol – raises form_trigger_failure Action type = message
  • 22. 22 Example #1 – Display Message •  Result Click OK to continue
  • 23. 23 Example #2 – Data Access Restrictions •  What – Restrict users from entering or retrieving their own invoice •  Why – Audit control – Theft prevention •  How – Requires minimal SQL skills
  • 24. 24 Example #2 – Data Access Restrictions •  Enter header and condition tab details –  WHEN-NEW-BLOCK-INSTANCE for the invoice block controls access at the invoice level.
  • 25. 25 Example #2 – Data Access Restrictions •  Change the default where clause to prevent retrieval of employee invoices based on user id vendor_id NOT IN (SELECT vendor_id FROM po_vendors pv , fnd_user fusr WHERE fusr.user_id = fnd_profile.value('USER_ID') AND fusr.employee_id = pv.employee_id )
  • 26. 26 Example #3 – Menu Entries •  What – Create a menu item to display the invoice id •  Why – Access to invoice id makes workflow and invoice approval troubleshooting faster
  • 27. 27 Example #3 – Menu Entries •  How - Step 1 – establish the menu entry •  Trigger Event = WHEN-NEW-FORM-INSTANCE Use WHEN-NEW-FORM- INSTANCE for visual changes Such as establishing menu entries
  • 28. 28 Example #3 – Menu Entries •  Menu action type only displays the menu Note Menu Entry # for step 2
  • 29. 29 Example #3 – Menu Entries •  Step 2 – create the action for the menu entry –  Trigger Event = MENU# chosen in step 1
  • 30. 30 Example #3 – Menu Entries •  Step 2 – create the action for the menu entry Use validate button to check sql fragment
  • 31. 31 Example #3 – Menu Entries •  Result Choose menu item
  • 32. 32 Example #3 – Menu Entries •  Result Message is displayed
  • 33. 33 Another Example – Menu Entries •  What –  Create invoice tax distributions for use tax for invoices where sales tax was not charged •  Why –  Less manual processing saves money •  Reduces data entry time •  Eliminates calculation errors •  How –  Create a PL/SQL procedure which uses Oracle standard APIs to calculate and create distributions –  Call procedure from menu item with Execute a Procedure Builtin
  • 34. 34 Example #4 – Masking Data •  What – Mask the tax id (11i) •  Supplier form has moved to OA Framework in R12 •  Why – Compliance •  Secure sensitive data
  • 35. 35 Example #4 – Masking Data •  How - Change form appearance at WHEN-NEW-FORM-INSTANCE trigger
  • 36. 36 Example #4 – Masking Data •  CONCEAL_DATA = TRUE - replaces data with * •  DISPLAYED = FALSE – hides field completely Use Select By Text button to find correct object by prompt Don t need to know object name
  • 37. 37 Example #4 – Masking Data •  Result
  • 38. 38 Example #5 – Changing LOVs •  What – Remove Taxpayer ID from List of Values (LOVs) for find window •  Why – Compliance •  Secure Sensitive Data – Adapt to business/Reduce training time •  Limit LOVs to only display data applicable to business
  • 39. 39 Example #5 – Changing LOVs •  Taxpayer ID is also on LOVs for find windows
  • 40. 40 Example #5 – Changing LOVs •  HOW – Use Create a new record group Builtin Must have the same number of fields as existing Record group
  • 41. 41 Example #5 – Changing LOVs •  Assign the new record group to the LOV used for Supplier name Record group created in previous slide
  • 42. 42 Example #5 – Changing LOVs •  Result •  Additional steps –  Mask the tax id on the find window –  Replace the tax id with the end date for the supplier number LOV
  • 43. 43 Other Process Improvement Features •  Utilize the following Builtins to improve process flows –  Launch SRS Form – runs concurrent request –  Launch a Function – call another form –  Launch a URL – call any web page –  DO_KEY •  DO_KEY(‘NEXT_BLOCK’) will force query execution for find window –  GO_ITEM, GO_BLOCK – change navigation •  Use to prevent update to a field where navigation is needed to populate –  EXECUTE_TRIGGER •  Execute form trigger, not database trigger •  Use after setting default values to ensure internal code executes
  • 44. 44 Forms Personalization – Tips •  Exit and re-open the form to see personalization changes •  Use debug messages before and after events •  Apply Now button - see the results –  Does not always work if dependant on the results of another action •  Turn custom code off - Help à Diagnostics à Custom Code à Off
  • 45. 45 Forms Personalization Maintenance •  After upgrades, go to the personalization for each form and choose Tools à Validate All •  Tools à Administration will show personalized forms –  Press the Find button with the Form Name blank
  • 46. 46 OA Framework Personalizations Setup and Use Examples 6 - 10
  • 47. 47 Setup – Profile Options – OA Framework Personalizations •  Personalize Self-Service Defn –  Yes to allow ‘Personalize’ button to appear at the top of the page •  FND: Personalization Region Link Enabled –  Yes to display all the regional links above each region –  Minimal to display key regional links •  Disable Self-Service Personal –  Yes will disable all personalizations at any level •  FND: Diagnostics –  Turns on ‘About this Page’ •  FND: Personalization Document Root Path (new in 11.5.10) –  Required to migrate personalizations –  Set this profile option to a tmp directory with open (777) permissions
  • 48. 48 OA Framework Personalizations Personalize Self-Service Defn = Yes FND: Personalization Region Link Enabled = Yes FND: Diagnostics = Yes
  • 49. 49 OA Framework Examples •  Remove a button •  Change prompts •  Hide/reorder columns in a table •  Set initial values •  Display a field
  • 50. 50 Example #6 – Remove a button •  What –  Remove the Import Spreadsheet button in iExpenses for a separate responsibility where iExpenses is utilized for procurement card transactions •  Why – Process Improvement –  Adapt to your own business processes without customization •  Importing Spreadsheets is not applicable to this business function –  No cash or out of pocket transactions for procurement cards •  More details: Using Personalizations to Give Your Self Service Applications a Custom Look and Feel –  http://www.solutionbeacon.com/ PersonalizationsOpenWorld2008.pdf
  • 51. 51 Example #6 – Remove a button •  How – Click Personalize Page button Start with Personali ze Page
  • 52. 52 Example #6 – Remove a button •  Biggest challenge – finding the item to personalize –  Simple View –  Complete View –  Expand All –  <ctrl> F –  Collapse All –  Focus
  • 53. 53 Example #6 – Remove a button •  My favorite – expand all and use <crtl> F Click pencil to edit
  • 54. 54 Example #6 – Remove a button •  Set rendered = false and click Apply button Options for personalization change based on object type
  • 55. 55 Example #6 – Remove a button results •  Click the Return to Application button Button is gone Shown column is now null since rendered = false
  • 56. 56 Personalization Levels / Inheritance •  Personalizations at lower levels override personalizations at higher levels •  Values inherit the definition from the level immediately above unless changed •  Order of precedence from highest to lowest: –  Function –  Site –  Operating Unit –  Responsibility
  • 57. 57 Example #7 – Change Prompts •  What – Change Id to Notification Id •  Why – Clarify description of field – Eliminate confusion – Less training Tip: Changing prompts to your own business terminology speeds up training of new employees and reduces error rates!
  • 58. 58 Example #7 – Change Prompts •  How – Click the Personalize Page button and find the Id using <ctrl> F
  • 59. 59 Example #7 – Change Prompts •  How - Click the pencil Click pencil to edit
  • 60. 60 Example #7 – Change Prompts •  How – Change the prompt at the site level Site Level Personalization
  • 61. 61 Example #7 – Change Prompts •  Result – prompt changed
  • 62. 62 Example #8 – Hide/Reorder Columns in a table •  What –  Hide the Duplicate column to prevent users from duplicating expense reports –  Reorder columns •  Why –  Hastily duplicating expense reports increased error rates –  For the procurement card usage of iExpenses, this functionality did not apply –  Reorder columns to match desired data entry flow for faster entry
  • 63. 63 Example #8 – Hide/Reorder Columns in a table •  How – Click the Personalize Page button – Use strategies on next slide to find the Duplicate column
  • 64. 64 Example #8 – Hide/Reorder Columns in a table •  The button to duplicate is called a Switcher –  Switchers allow users to “switch” to another function •  Finding tip –  Look for other columns in the table if searching for a common word •  Report Total •  Purpose Click pencil to edit
  • 65. 65 Example #8 – Hide/Reorder Columns in a table Set Rendered = false Duplicate column is gone
  • 66. 66 Example #8 – Hide/Reorder Columns in a table •  Find the table to reorder table columns – Turn on region links to find tables easier Click the reorder icon at the table level
  • 67. 67 Example #8 – Hide/Reorder Columns in a table •  Check personalization level •  Use arrows to move fields up or down
  • 68. 68 Example #9 – Set Initial Values •  What –  Set the initial value for the Purpose at the Responsibility level as follows: •  Expense report responsibilities –  Purpose = ‘Internet Expenses’ •  Procurement card responsibilities –  Purpose = “Procurement card” •  Why –  Save time •  Streamline data entry
  • 69. 69 Example #9 – Set Initial Values •  How – In the appropriate responsibility, click the Personalize Page button
  • 70. 70 Example #9 – Set Initial Values •  Set the initial value based on the responsibility
  • 71. 71 Example #10 – Add Item •  What – Add Tips to provide additional instructions – Add a tip to direct users to the corporate receiving training application •  Why – Make new users self sufficient – Reduce training costs – Reduce errors
  • 72. 72 Example #10 – Add Item •  How – First create the text for the Tip through the Functional Administrator responsibility
  • 73. 73 Example #10 – Add Item •  Go to the receiving page where the tip is to be added and click Personalize Page
  • 74. 74 Example #10 – Add Item •  Find the item for tips and click the create item button Click to create new items such as buttons, text, messages, tips, raw text
  • 75. 75 Example #10 – Add Item •  Enter the item style, id, Text to identify the tip and the message name for the message created
  • 76. 76 Example #10 – Add Item New tip is added
  • 77. 77 Customizations and Personalizations Customizations or Personalizations, whether they are protected or non protected, allow you to fundamentally change the behavior of the application. This could interfere with intended functionality. Use with caution! TEST! TEST! TEST! TEST! TEST! WARNING
  • 78. 78 Customizations and Personalizations …THEN TEST IT AGAIN! ***BUT NOT IN PRODUCTION**
  • 79. 79 Migration to Other Instances Forms Personalizations •  Download for a specific form: –  FNDLOAD <userid>/<password> 0 Y DOWNLOAD $FND_TOP/ patch/115/import/affrmcus.lct <filename.ldt> FND_FORM_CUSTOM_RULES form_name=<form name> •  Download all personalizations –  FNDLOAD <userid>/<password> 0 Y DOWNLOAD $FND_TOP/ patch/115/import/affrmcus.lct <filename.ldt> FND_FORM_CUSTOM_RULES •  Upload –  FNDLOAD <userid>/<password> 0 Y UPLOAD $FND_TOP/ patch/115/import/affrmcus.lct <filename.ldt>
  • 80. 80 Migration to Other Instances OA Framework Personalizations •  Migrate OA Framework Personalizations from the Functional Administrator Responsibility –  Export to directory defined in FND: Personalization Document Root Path –  FTP to target instance –  Import from Document Root Path directory
  • 81. 81 Summary •  Personalizations reduce customizations •  Personalizations are easy to implement •  Personalizations can save you money –  Less customizations result in lower maintenance cost and lower patching/upgrade costs –  Increase compliance reducing audit cost –  Speed up data entry –  Decrease error rates –  Reduce training costs –  Make users self sufficient
  • 82. 82 References •  Oracle Application Framework Personalization Guide •  Oracle Applications User Interface Standards for Forms- Based Products •  Oracle Applications Developer’s Guide •  Oracle Applications System Administrator’s Guide •  Oracle Applications User Guide •  My Oracle Support ID: 279034.1 – Forms Personalization
  • 83. 83 The Release 12 Primer ‒ Shining a Light on the Release 12 World The ABCs of Workflow for Oracle E-Business Suite Release 11i and Release 12