Vous êtes sur la page 1sur 50

Oracle Forms Development

Extending Applications the Right way

NCOAUG Feb 28, 2005 Arlington Heights, IL Susan Behn www.solutionbeacon.com


1
2005 Solution Beacon, LLC. All Rights Reserved.

Introduction

nSolution
u

Beacon, LLC

Susan Behn

2005 Solution Beacon, LLC. All Rights Reserved.

Outline
n Why

Follow Standards? Started Classes Standards

n Assumptions n Getting

n Property

n Development n CUSTOM.pll n Additional n Summary

Resources

2005 Solution Beacon, LLC. All Rights Reserved.

Why Follow Standards?


nFaster

development user interface

nConsistent nWeb

compatibility maintenance with American Disabilities Act

nEasier

nCompliance nLanguage

and Currency Translation

2005 Solution Beacon, LLC. All Rights Reserved.

Assumptions/Scope
n Development

11i/Forms 6i

environment is Applications Release

n You

are familiar with Forms Builder 6i

*Oracle E-Business Suite application releases 11.x will continue to use 6i (This includes 11.5.10)

2005 Solution Beacon, LLC. All Rights Reserved.

Getting Started TEMPLATE.fmb


nDownload

from $AU_TOP/forms/US and rename nProvides standardized sample objects and references nPlatform independent
Reference to object in APPSTAND *Referenced Objects are identified by the red arrow in the lower left corner

2005 Solution Beacon, LLC. All Rights Reserved.

Getting Started TEMPLATE.fmb


nReferenced

objects (object groups) uLOVs, blocks, parameters, property classes nSample objects uCanvases, blocks, windows nForm level triggers with required code nToolbar nMenu nCalendar nColor palette nProgram unit APP_CUSTOM standard behavior

2005 Solution Beacon, LLC. All Rights Reserved.

Getting Started APPSTAND.fmb


nDownload

from $AU_TOP/forms/US nPlatform specific referenced objects nReferences other libraries

Referenced Object

2005 Solution Beacon, LLC. All Rights Reserved.

Property Classes
nProvide

visual and behavioral attributes for objects nAvailable for almost every object type nUsing property classes from these .fmb files is the single most important thing you can do to standardize!
Standard Value

2005 Solution Beacon, LLC. All Rights Reserved.

Property Classes
nDo

not override inherited property class attributes!

Property Class Inherited Objects identified by black curved arrow Standard Value

10

2005 Solution Beacon, LLC. All Rights Reserved.

Standards for Form Components


Module Libraries Triggers Windows Canvases Data Blocks Layout Addl Code
11
2005 Solution Beacon, LLC. All Rights Reserved.

Module
Module Libraries Triggers Windows Canvases Data Blocks Layout Addl Code
12
2005 Solution Beacon, LLC. All Rights Reserved.

nChange

the name of TEMPLATE.fmb nModule name must match file name nProperty class = Module nSet First Navigation Block

Libraries
Module Libraries Triggers Windows Canvases Data Blocks Layout Addl Code
13
2005 Solution Beacon, LLC. All Rights Reserved.

Core Application Specific

Libraries Core
n Download

from $AU_TOP/resource n Set FORMS60_PATH on desktop to location of local libraries


n APPCORE.pll
u

VERT.pll uGLOBE.pll t JA.pll t JE.pll t JL.pll uCUSTOM.pll n FNDSQF.pll APPDAYPK.pll APPFLDR.pll

n n

Application Standards, toolbar Specific industry features Global or regional features Asia/Pacific features Europe/Middle East/Africa features Latin America Code Customizations of standard forms Flexfields, Profiles, Currency, Concurrent Request Submission, Record History, Message Dictionary Calendar Packages for Folder Blocks
2005 Solution Beacon, LLC. All Rights Reserved.

14

Libraries Application Specific


n Additional

libraries attached to TEMPLATE.fmb n All libraries are available in $AU_TOP/resource


n FV.pll n HRKPI.pll n GHR.pll n GMS.pll

n IGILUTIL.pll n PSAC.pll n PSA.pll n PSB.pll

n IGILUTIL2.pll n PQH_GEN.pll

n OPM.pll

n APPCORE2.pll

Federal Financials Human Resources Knowledge Provider Global Human Resources Encumbrances International Public Sector International Public Sector Public Sector Applications Public Sector Human Resources Public Sector Applications Public Sector Budgeting Process Manufacturing Application standards (for CUSTOM.pll)
2005 Solution Beacon, LLC. All Rights Reserved.

15

Libraries Application Specific


nList

of application specific libraries are not all inclusive

nAdditional

libraries are attached based on your implementation nMultiple Countries nOracle Industry Applications does not support the use of APPFLDR, VERT, GLOBE, PSAC, PQH_GEN, GHR, JA, JE and JL for custom forms.

nOracle

*NEVER MODIFY ORACLE APPLICATIONS LIBRARIES OTHER THAN CUSTOM.pll*


16
2005 Solution Beacon, LLC. All Rights Reserved.

Triggers
Module Libraries Triggers Windows Canvases Data Blocks Layout Addl Code
17
2005 Solution Beacon, LLC. All Rights Reserved.

Required Restricted Optional

Triggers Required
nPRE-FORM

must be modified uRevision, Date, Author uTemplate Form change to your form name uBLOCKNAME change to the first block uFIRST_WINDOW change to the first window

18

2005 Solution Beacon, LLC. All Rights Reserved.

Optionally Modify at Form Level


Do NOT delete the APP_STANDARD.EVENT call
n n n

KEY-CLRFRM add code after standard call POST-FORM add code before standard call QUERY-FIND - add code after standard call u Its preferable to create a block-level trigger to override the form level QUERY_FIND trigger ACCEPT - add code after standard call

19

2005 Solution Beacon, LLC. All Rights Reserved.

Dont Touch These Anywhere!


n n n n n n n n n

STANDARD_ATTACHMENTS ZOOM FOLDER_ACTION KEY-HELP KEY-EXIT KEY-EDIT KEY-COMMIT WHEN-WINDOW-CLOSED CLOSE_WINDOW

20

2005 Solution Beacon, LLC. All Rights Reserved.

Optional Block or Item Level Triggers


n n n n n n n n n n

WHEN-NEW-RECORD-INSTANCE WHEN-NEW-BLOCK-INSTANCE WHEN-NEW-ITEM-INSTANCE POST-QUERY KEY-DUPREC KEY-MENU KEY-LISTVAL QUERY-FIND ACCEPT ON-ERROR

21

2005 Solution Beacon, LLC. All Rights Reserved.

Triggers Execution Hierarchy


nExecution
u

Hierarchy Default is OVERRIDE

NEW triggers set to BEFORE

POST triggers set to AFTER KEY triggers set to OVERRIDE QUERY-FIND triggers set to OVERRIDE

22

2005 Solution Beacon, LLC. All Rights Reserved.

Window
Module Libraries Triggers Windows Canvases Data Blocks Layout Addl Code
23
2005 Solution Beacon, LLC. All Rights Reserved.

Modal Non-Modal

Modal Windows
nProperty

class = WINDOW_DIALOG nCenter window using APP_WINDOW.SET_WINDOW_POSITION nExplicitly write code to close the window nCode OK and Cancel buttons in advance nUse dialog blocks with property class = BLOCK_DIALOG nDisable key triggers

24

2005 Solution Beacon, LLC. All Rights Reserved.

Non-Modal Windows
nProperty

class = WINDOW nEach window should contain one logical entity nDo not attach scroll bars to windows attach to blocks nSize between 2x2 and 7.8w x 5.0h nSize only as large as necessary nNo text on top and bottom lines nBlank left and right edge character cell except for boundary lines nUnique title for each window in a form nDont use only singular/plural forms on window titles nDont change the word order on window titles nDont pad window titles with spaces
25
2005 Solution Beacon, LLC. All Rights Reserved.

Canvases
Module Libraries Triggers Windows Canvases Data Blocks Layout Addl Code
26
2005 Solution Beacon, LLC. All Rights Reserved.

Basics Ruler

Canvas Basics
nProperty

class = CANVAS, TAB_CANVAS or CANVAS_STACKED window contains one content canvas

nEach nTab

or stacked canvases may be placed in front of a content canvas tabs to avoid scrolling

nUtilize

27

2005 Solution Beacon, LLC. All Rights Reserved.

Canvas Ruler
nRuler

Settings

nCharacter

cell height = .25 nCharacter cell width = .1 nTurn snap to grid on in the View drop down
28
2005 Solution Beacon, LLC. All Rights Reserved.

Data Blocks
Module Libraries Triggers Windows Canvases Data Blocks Layout Addl Code
29

Basics Items ADA Items


2005 Solution Beacon, LLC. All Rights Reserved.

Data Blocks Basics


nAll

blocks for a logical entity should be in one window nExceptions uInformation not perceived as attributes of the logical entity uFields not frequently needed nUse tabs or alternating regions to avoid horizontal scrolling nFor multi-record blocks always add a scroll bar and current record indicator

30

2005 Solution Beacon, LLC. All Rights Reserved.

Data Blocks Basics


nBase

complex data blocks on views uNetwork traffic is minimized because foreign keys are denormalized on the server uPOST-QUERY code for non-database fields eliminated uPRE-QUERY code for non-database fields eliminated uAllows for multi-org and multi-language nBase simple blocks on tables nNavigation style u One block: Current Record u More blocks: Next Block
2005 Solution Beacon, LLC. All Rights Reserved.

31

Data Block Items


nEnable

the calendar for every date field uUse ENABLE_LIST_LAMP LOV uCall calendar_show from KEY-LISTVAL trigger nControl valid dates nCheck boxes always have a default value nMaximum size of items = database column size nValidate items immediately when possible nLOVs uLOVs should only show valid rows uValidate from List = Yes for items with LOVs uBase LOVs on views to allow sharing uThe title in the first item of the LOV should match the prompt of the field calling the LOV
2005 Solution Beacon, LLC. All Rights Reserved.

32

Data Block Items


nButtons
u

Place buttons in the block in which they appear to sit uProvide an access key uFor multi-row blocks, set Keyboard Navigable to No uFor single row blocks, set Keyboard Navigable to Yes uIn the WHEN-BUTTON-PRESSED trigger, set Fire in Enter Query mode to No

33

2005 Solution Beacon, LLC. All Rights Reserved.

Data Block Items


Compliance with American Disabilities Act
actions must be executable using the keyboard uSpecify access keys for all non-navigable items using & in the label property for: *Buttons *Check boxes *Radio buttons *Tab pages uNavigation is left to right, top to bottom uCycle through all fields on multi-record blocks (eliminates need for scroll bar) nTimed functions are prohibited nThe user must be able to control color Use defined property classes
34
2005 Solution Beacon, LLC. All Rights Reserved.

nAll

Data Block Items


Compliance with American Disabilities Act
nSufficient

information must be available to assisted technology (i.e. screen readers)

Examples of items to specifically address


Flexfield high/low ranges Abbreviated prompts

Non-unique prompts, Region titles

35

2005 Solution Beacon, LLC. All Rights Reserved.

Data Block Items


Compliance with American Disabilities Act
nHow

is this accomplished? uEnter hint text for items uOptionally enter tool tip help are read in the following order: Hint Text Prompt Label Tool tip help

nPrompts
u u u u

36

2005 Solution Beacon, LLC. All Rights Reserved.

Layout
Module Libraries Triggers Windows Canvases Data Blocks Layout Addl Code
37

Regions Tabs Items


2005 Solution Beacon, LLC. All Rights Reserved.

Layout Items
nItems
u

Leftmost button in the window should be the default unless it is a help button uAllow 30% additional text space for language translation uSet alignment to start nTabbed regions uOne character space between fixed and alternating regions uPlace coordination check box outside the tabbed region nNavigation: Left to right, top to bottom
38
2005 Solution Beacon, LLC. All Rights Reserved.

Layout Regions
Stacked Alignment Coordination Check Box Scroll Bar Current Record Indicator

Region Frame

39

2005 Solution Beacon, LLC. All Rights Reserved.

Layout Tabs
Tab Pages

One Line

1 character cell
40
2005 Solution Beacon, LLC. All Rights Reserved.

Additional Code
Module Libraries Triggers Windows Canvases Data Blocks Layout Addl Code
41

Use program units!


2005 Solution Beacon, LLC. All Rights Reserved.

Additional Code program units


nDo

not base code on a translated field use the hidden value who fields and update them!

nUse nIf

more than one line of code is required, call a program unit, otherwise, code directly in the trigger

42

2005 Solution Beacon, LLC. All Rights Reserved.

CUSTOM.pll
nUsed

to provide customizations to Oracle Application forms that are protected from patches and upgrades implementation of customizations in CUSTOM.pll only allow one developer at a time to make modifications limitations can be an issue for implementations with many customizations can be used with custom forms as long as they were developed per standards using TEMPLATE.fmb
2005 Solution Beacon, LLC. All Rights Reserved.

nTraditional

nSize

nCUSTOM.pll

43

CUSTOM.pll
nMulti-Developer

Methodology

Create a .pll library for the form you want to customize


Package Spec
PACKAGE XXXXXAPXVDMVX IS Procedure event(event_name VARCHAR2); END;

Package Body
PACKAGE BODY XXXXXAPXVDMVX IS PROCEDURE event (event_name VARCHAR2) IS BEGIN IF event_name = WHEN-NEW-FORM-INSTANCE THEN SET_ITEM_PROPERTY(VENDOR_TYPE_DISP,REQUIRED,PROPERTY_TRUE); END IF; END event; END XXXXXAPXVDMVX;

44

2005 Solution Beacon, LLC. All Rights Reserved.

CUSTOM.pll
nMulti-Developer

Methodology

Attach your .pll to CUSTOM.pll

Navigator view of CUSTOM.pll

45

2005 Solution Beacon, LLC. All Rights Reserved.

CUSTOM.pll
nMulti-Developer

Methodology

Add the call to your new .pll to CUSTOM.pll


Package Body of CUSTOM.pll Form_name varchar2(30) := name_in(system.current_form); Begin If form_name = XXXXXAPXVDMVD THEN xxxxxapxvdmvd.event(event_name); Elsif form_name = XXXXXOEXOEORD THEN xxxxxoexoeord.event(event_name); end if; end event;

46

2005 Solution Beacon, LLC. All Rights Reserved.

Other Sources of Information


nOracle

Applications User Interface Standards for Forms-Based Products Applications Developers Guide Applications System Administrators Guide Applications User Guide

nOracle nOracle nOracle

nMetaLink

47

2005 Solution Beacon, LLC. All Rights Reserved.

Patches Client
nPatch nPatch

set 15 is most current set 13 absolute minimum!

48

2005 Solution Beacon, LLC. All Rights Reserved.

Summary
nStart

with TEMPLATE.fmb apply property classes

nAlways nSet

trigger execution hierarchy correctly layout standards

nFollow nUse

program units to keep code modular it look good!

nMake

49

2005 Solution Beacon, LLC. All Rights Reserved.

Thank you!
If you have any questions or comments please contact: Susan Behn sbehn@solutionbeacon.com

For free R11i Tools please visit our website at: www.solutionbeacon.com

50

2005 Solution Beacon, LLC. All Rights Reserved.

Vous aimerez peut-être aussi