Oracle Forms 10g Triggers
Oracle Forms 10g Triggers
Oracle Forms 10g Triggers
Producing Triggers
14-2 Copyright 2004, Oracle. All rights reserved.
Objectives
After completing this lesson, you should be able to do
the following:
Write trigger code
Explain the use of built-in subprograms in Forms
applications
Describe the When-Button-Pressed trigger
Describe the When-Window-Closed trigger
14-3 Copyright 2004, Oracle. All rights reserved.
Creating Triggers in Forms Builder
To produce a trigger:
1. Select a scope in the Object Navigator.
2. Create a trigger and select a name from the
Trigger LOV, or use the SmartTriggers menu
option.
3. Define code in the PL/SQL Editor.
4. Compile.
14-4 Copyright 2004, Oracle. All rights reserved.
Creating a Trigger
Step One:
Select Trigger Scope.
Form level
Block level
Item level
14-5 Copyright 2004, Oracle. All rights reserved.
Creating a Trigger
Step Two:
Invoke the
Trigger LOV.
14-6 Copyright 2004, Oracle. All rights reserved.
Creating a Trigger
Step Three:
Use the PL/SQL Editor to define the trigger code.
Name
Item Object Type
Source
Pane
Toolbar
Step Four:
Compile.
14-7 Copyright 2004, Oracle. All rights reserved.
Setting Trigger Properties
14-8 Copyright 2004, Oracle. All rights reserved.
PL/SQL Editor Features
Split view
Split Bars
5
1 4 3 2
14-9 Copyright 2004, Oracle. All rights reserved.
PL/SQL Editor Features
The
Syntax
Palette
14-10 Copyright 2004, Oracle. All rights reserved.
The Database Trigger Editor
14-11 Copyright 2004, Oracle. All rights reserved.
Writing Trigger Code
BEGIN
END;
A PL/SQL Block
14-13 Copyright 2004, Oracle. All rights reserved.
PL/SQL variables must be declared in a trigger or
defined in a package
Forms Builder variables
Are not formally declared in PL/SQL
Need a colon (:) prefix in reference
Using Variables in Triggers
14-14 Copyright 2004, Oracle. All rights reserved.
Forms Builder Variables
Variable
Type
Items
Global
variable
System
variables
Parameters
Purpose
Presentation and
user interaction
Session-wide
character variable
Form status and
control
Passing values in
and out of module
Syntax
:block_name.item_name
:GLOBAL.variable_name
:SYSTEM.variable_name
:PARAMETER.name
14-16 Copyright 2004, Oracle. All rights reserved.
Adding Functionality with
Built-In Subprograms
Built-ins belong to either:
The Standard Extensions
package where no prefix is
required
Another Forms Builder
package where a prefix is
required
14-18 Copyright 2004, Oracle. All rights reserved.
Limits of Use
Unrestricted built-ins are allowed in any trigger or
subprogram.
Restricted built-ins are allowed only in certain
triggers and subprograms called from such
triggers.
Consult the Help
system.
Compiles:
Run-time error when
trigger fires:
14-19 Copyright 2004, Oracle. All rights reserved.
1
Using Built-In Definitions
4
2
3
14-21 Copyright 2004, Oracle. All rights reserved.
Useful Built-Ins
EDIT_TEXTITEM
ENTER_QUERY, EXECUTE_QUERY
EXIT_FORM
GET_ITEM_PROPERTY, SET_ITEM_PROPERTY
GO_BLOCK, GO_ITEM
MESSAGE
SHOW_ALERT, SHOW_EDITOR, SHOW_LOV
SHOW_VIEW, HIDE_VIEW
14-23 Copyright 2004, Oracle. All rights reserved.
Using Triggers:
When-Button-Pressed Trigger
Fires when the operator clicks a button
Accepts restricted and unrestricted built-ins
Use to provide convenient navigation, to display
LOVs and many other frequently used functions
GO_BLOCK(Stock);
EXECUTE_QUERY;
14-24 Copyright 2004, Oracle. All rights reserved.
Using Triggers:
When-Window-Closed Trigger
Fires when the operator closes a window by using
a window manager-specific close command.
Accepts restricted and unrestricted built-ins.
Used to programmatically close a window when
the operator issues a window manager-specific
close command. You can close a window by using
built-ins.
Why can't I close
this window?
14-25 Copyright 2004, Oracle. All rights reserved.
Summary
In this lesson, you should have learned that:
You can use the PL/SQL Editor to write trigger
code
Trigger code has three sections:
Declaration section (optional)
Executable statements section (required)
Exception handlers section (optional)
You can add functionality by calling built-in
subprograms from triggers
Restricted built-ins are not allowed in triggers that
fire while navigation is occurring
14-26 Copyright 2004, Oracle. All rights reserved.
Summary
The When-Button-Pressed trigger fires when the
user presses a button
The When-Window-Closed trigger fires when the
user closes a window
14-27 Copyright 2004, Oracle. All rights reserved.
Practice 14 Overview
This practice covers the following topics:
Using built-ins to display LOVs
Using the When-Button-Pressed and
When-Window-Closed triggers to add
functionality to applications
Using built-ins to display and hide the Help stack
canvas