You are on page 1of 121

Oracle Forms by Dinesh Kumar S

Oracle Forms by Dinesh Kumar S

Form Development
(Basics)

Oracle Forms by Dinesh Kumar S


What is Oracle Form?
Its a graphical user interface to design form.
Components of form:
There are 3 components,

Form Builder
Form Compiler
Form Runtime

Form Builder: Used to design layouts and bind event driven data validations.
Form Compiler: Used to compile & save the form file.
Form Runtime: Used to compile & run the form created.

Form Builder & its Components:


Windows:

Object Navigator Window


Module Window

Object Navigator:
The object navigator contains the following components.
o
o
o
o
o
o

Form Module
Menus
PL/SQL Libraries
Object libraries
Built-in packages
Database Objects

Form Module: It contains the form objects.


Menus: Its a collection of objects such as items, sub menu items and even PL/SQL code blocks.
PL/SQL Libraries: The library module contains collection of PL/SQL procedures & functions in
single library file. The library file can be attached to form or Menu.
Object Libraries: It contains re-usable objects and maintains standards.

Oracle Forms by Dinesh Kumar S

Database Objects: Its a SQL Plus tool. It allows the creation of database objects like stores
procedures, functions and DB Triggers.

Form Module:
The form module consists of the following components.

Blocks
Items
Frames
Canvas Views
Window
PL/SQL Code blocks

Blocks:

It is a logical container and has no physical representation.


Only Items contained in block are visible.
Each Block is associated to set of properties.

Block (Connected to) DB Object

= Data Aware Block

Block (Not Connected to) DB Object

= Control Block

Table, View / Synonym (Connected to) Block = Base Table

Oracle Forms by Dinesh Kumar S


DB Objects Includes
o
o
o
o

Single DB Table
View
Synonym
Stored Procedures

Note** A Block can be directly related to Single Database Table.


Now I have opened the Profile Form from Application Developer Responsibility.

How to find the Block details for a Field?


1. Open the Form.
2. Go To, Help Diagnostics Examine
3. Give apps username password.
You can see the block details associated with a field.

Oracle Forms by Dinesh Kumar S

Items:
o
o
o
o

Items are objects contained in blocks.


It serves as containers for data.
The items are bound to columns in a base table.
Also it can hold calculated values.

Items (Not Connected to) DB Base Table

= Control Items

Items Supported by Oracle form builder.


Item Name
Text item
Display Item
List Item
Button
Check Box
Radio Group
Chart Item
Image Item
OCX Control Item

Description
Display Values and can be edited.
It shows info. that are fetched programmatically. The
values are un-editable.
Its a Drop Down list.
Buttons are used to trigger some action.
You can select / deselect based on user choice.
This is similar to check box functionality.
Inset graphical charts based on existing data.
Inset custom image into form like logo etc.
Custom Microsoft Control, this works only in Microsoft
Operating System only.

Frame:

It is an object on a canvas.
It contains Items that belong to a block. The items are automatically arranged inside.
It also contains items based on its properties & events.

Canvas View:

It is a background on which module objects are place.


Oracle allows creating Tab and Content type canvases.

Oracle Forms by Dinesh Kumar S


Window:

Every form is created in default window WINDOW1.


Each Canvas is associated with a window.
New Windows can be created under Window node.

PL/SQL Code Blocks:

To build events based on PL/SQL codes.


An event includes Triggers etc.

Structural View of Objects:

Oracle Forms by Dinesh Kumar S

Creating Form using


Data Block Wizard

Oracle Forms by Dinesh Kumar S


Step 1:

Step 2: Welcome Screen. Click Next

Oracle Forms by Dinesh Kumar S

Step 3: Data Source Selection


Now we need to select Data Blocks [DB Objects] Source. There are 2 options.
o Table (or) View
o PL/SQL Stored Procedures

We will be selecting Table (or) View. Click Next.

10

Oracle Forms by Dinesh Kumar S


Step 4: Select Table/View from the Database.
Click Browse, It will ask for database username & password.

Connect to Database.

Oracle Forms by Dinesh Kumar S

11

After Connecting Immediately it will display the list of Tables available in the schema.

(or) You can directly give the table name (Note** while inputting the table name add
APPS.PO_HEADERS_ALL.) in Browse Field. Select the Database Columns which you are going to
be used.

12

Oracle Forms by Dinesh Kumar S


Step 5: Successfully we have create the data block.

Step 6: Building Layout Block

Oracle Forms by Dinesh Kumar S

13

Note** Items are placed/displayed within the FRAME.

Step 7: Selecting Data Block.

14

Oracle Forms by Dinesh Kumar S


Now select the Item Type for each column in Displayed Items (Like Text field, Radio Button,
LOV, Checkbox etc.).
In our example all the items of type Text item.

Step 8: Selecting Column Width.

Oracle Forms by Dinesh Kumar S

15

Step 9: Setting up Layout Style.

Step 10: Setting up Frame Properties.

16

Oracle Forms by Dinesh Kumar S


We have successfully completed layout designing. Click Finish.

Form Builder opens.

Oracle Forms by Dinesh Kumar S

17

Data Model Relation:

Data Block Details:

Step 11: Save the Form Created.


File Save As
File Extension: .FMB

18

Oracle Forms by Dinesh Kumar S


Step 12: Testing the Form.
Step 12.1) Compile the form to check errors
Navigation: Programs Compile All
Step 12.2) Run the Form
Navigation: Programs Run Form Client/Server

Oracle Forms by Dinesh Kumar S

19

Step 12.3) Execute the Query to populate the data.


Navigation: Query Execute

Insert New Record.

Remove Record.
Lock Record.
Exit Runtime.

Before building a form manually [without wizard] let us see the properties of each objects.

20

Oracle Forms by Dinesh Kumar S

Creating Form using


Data Block Wizard
Master Detail Form

Oracle Forms by Dinesh Kumar S

21

Follow Step 1 to Step 10 from the previous demo.


Step 11: Creating a child Data Block.

22

Oracle Forms by Dinesh Kumar S

Oracle Forms by Dinesh Kumar S

23

Step 12: Select Child Table.

24

Oracle Forms by Dinesh Kumar S


ELSE Create a relationship manually by un-checking Auto-join Data Blocks.
We will follow this method.
After Clicking Create Relationship button, the relation type window is displayed.
Select option Based on Join Condition.

Data Block is identified. Select & click OK.

Oracle Forms by Dinesh Kumar S

25

Now select the Join condition column from Child & Master Table. Automatically the join condition
will be populated.

Note**
Details Item Foreign Key Column in Child Table
Master Item Primary Key Column in Master Table

26

Oracle Forms by Dinesh Kumar S


Data Block Wizard Successfully completed.

Step 13: Create Layout using Layout wizard.

Click Next.

Oracle Forms by Dinesh Kumar S

27

28

Oracle Forms by Dinesh Kumar S

Oracle Forms by Dinesh Kumar S

29

30

Oracle Forms by Dinesh Kumar S

Layout created Successfully.

Oracle Forms by Dinesh Kumar S

31

The final layout with Line information.

Step 14: Compile the form to check for errors.


Navigation: Program Compile All

32

Oracle Forms by Dinesh Kumar S


Step 15: Run the Form.
Navigation: Program Run Form Client/Server
Runtime window opened successfully.

Oracle Forms by Dinesh Kumar S

33

Step 16: Execute the query.


Navigation: Query Execute
Note** Keep the Cursor in the Master Data Block Field & execute the query.

34

Oracle Forms by Dinesh Kumar S

Creating Form using


Data Block Wizard
Master Detail Form
(TAB Canvas)

Oracle Forms by Dinesh Kumar S

35

Follow Step 1 to Step 10 from the previous demo.


Step 11: Creating a Child Data Block.

36

Oracle Forms by Dinesh Kumar S

Creating Relationship:

Oracle Forms by Dinesh Kumar S

37

Click Ok.

APPS.PO_HEADERS (PO_HEADER_ID) APPS.PO_LINES_ALL

38

Oracle Forms by Dinesh Kumar S


Step 12: Creating layout using Layout Wizard.
For creating a Tab Page, A new canvas to be created of type TAB.

Oracle Forms by Dinesh Kumar S

39

40

Oracle Forms by Dinesh Kumar S

Oracle Forms by Dinesh Kumar S

41

42

Oracle Forms by Dinesh Kumar S


New Tab Canvas Created successfully.

Step 13: Compile the form.


Compile the form to check for errors.
Navigation: Program Compile All

Oracle Forms by Dinesh Kumar S

43

Step 14: Run the Form.


Navigation: Program Run Form Client/Server
Runtime window opened successfully.

44

Oracle Forms by Dinesh Kumar S


Step 15: Execute the query.
Navigation: Query Execute
Note** Keep the Cursor in the Master Data Block Field & execute the query.

Oracle Forms by Dinesh Kumar S

45

Adding Additional Page in Tab Canvas


Description: We will be adding additional page for shipments.
Step 16: Creating new page for existing tab canvas.

Page successfully created.

46

Oracle Forms by Dinesh Kumar S


Re-Arrange the Page to display after Lines page.

Oracle Forms by Dinesh Kumar S

47

Step 17: Right Click the Shipment Page and create a data block.

Select Base table for the data block

48

Oracle Forms by Dinesh Kumar S


Create Relationship.

Select PO_LINES_ALL Table to create a relationship.

Oracle Forms by Dinesh Kumar S

49

Note** Ensure all the mapping columns are included in the data blocks to create relationship.

50

Oracle Forms by Dinesh Kumar S

Step 18: Creating Layout using Layout Wizard.

Oracle Forms by Dinesh Kumar S

51

52

Oracle Forms by Dinesh Kumar S

Oracle Forms by Dinesh Kumar S

53

54

Oracle Forms by Dinesh Kumar S


Step 19: Compile the form.
Compile the form to check for errors.
Navigation: Program Compile All

Step 20: Run the Form.


Navigation: Program Run Form Client/Server
Runtime window opened successfully.
Header Block:

Oracle Forms by Dinesh Kumar S

55

Lines Tab Page:

Shipment Tab Page:

56

Oracle Forms by Dinesh Kumar S


Step 21: Execute the query.
Header Details:

Line Details:

Shipment Details:

Oracle Forms by Dinesh Kumar S

57

Creating Tab Region & Mapping in Existing Canvas


Now we will be modifying the existing form file to include a new tab.
Create the form with following details. [Steps are skipped since we have already seen creation of Data
Block & Layout].

Object Navigator:

58

Oracle Forms by Dinesh Kumar S


Canvas Details:

Now we will be creating a Tab Page below the frame PO Details.


Step 1: Create a Frame to hold tab pages using

Oracle Forms by Dinesh Kumar S

59

Picture 102

in toolbar.

Step 2: Create Tab Page using

Picture 104

Right Click the Lines Page and create Data Block & Layout Wizard.

Step 3: Data Block Details: (Table or View Type)

60

Oracle Forms by Dinesh Kumar S

Step 4: Create Parent Child Relationship.

Step 5: Create Layout.

Oracle Forms by Dinesh Kumar S

61

Note** Create a tabular Layout.

62

Oracle Forms by Dinesh Kumar S

Oracle Forms by Dinesh Kumar S

63

Similarly create Shipment Tab Page.

64

Oracle Forms by Dinesh Kumar S


Final Layout:

Oracle Forms by Dinesh Kumar S

65

Compile, Run & Execute the Query:

Shipment Details:

66

Oracle Forms by Dinesh Kumar S


Important Notes:
After creating a master details relationship between two data blocks, you can see in master data block a
trigger and relation is created automatically.
Data Block Level:

Form Level:

Relation:

Oracle Forms by Dinesh Kumar S

67

Creating Master Detail Form


(Creating Radio Button)

68

Oracle Forms by Dinesh Kumar S


Create a Form with Tab Pages as below.

Now we need to Create Radio Buttons.


Before creating Radio button one important note to be understand.
Important Note:
A Radio Group contains group of Radio Buttons. A parent Item can have either of the one value in the
radio group.
For example, Consider we are creating a Radio Group called Gender, a person can be either
Male/Female.
So when that person record is selected, based on the Gender the Radio button value will be
highlighted.
For our example, we will be creating Radio Groups for Po header CLOSED CODE.
Radio Group:

Open.
Closed.

Oracle Forms by Dinesh Kumar S

69

Right Click the Closed Code Field and go to its properties.


Change the Item Type as Radio Group.

After Selecting the Field CLOSED CODE will be disappeared from PO header Frame.

70

Oracle Forms by Dinesh Kumar S


Now Create a Frame to hold Radio Group Elements.

Inside the Frame create Radio Buttons by clicking

While Trying to Create it will list out available Radio Groups Select CLOSED_CODE.

Radio Buttons Successfully created. Now Right Click the radio buttons and go to properties.
The following Properties should be setup.
General Property:

Name

Set Name as OPEN, CLOSED

Oracle Forms by Dinesh Kumar S

71

Now we need to go to Data Block and select Field CLOSED_CODE and go to its properties.
Setup the property.
Functional Property:

Mapping of Other Values

Set the Value either as OPEN (or) CLOSED.

Note** By Default we have assigned value as CLOSED when the PO details are queried
automatically the respective radio button will be highlighted.
Compile the form, then run the form and execute the query.

72

Oracle Forms by Dinesh Kumar S

Now execute the query.

See based on the PO status, the radio button got automatically selected.

Oracle Forms by Dinesh Kumar S

73

Creating Form With

74

Oracle Forms by Dinesh Kumar S

Stacked CanvasStacked Canvas


Stacked canvases are displayed in a window along with the window's content canvas(s) and any
number of other stacked canvases.
This technique can be used to make items or boilerplate appear to change dynamically. When
navigating from a content canvas item to a stacked canvas item, you can only see the stacked canvas,
since the content canvas disappears.
Uses for Stacked Canvases
You can use stacked canvases to do the following:

Display items or boilerplate graphics that end users need to see only in certain situations.
Display headers that display constant information such as company names, dates, and
status information. (We will be using for this scenario.)
Create a block with items that scroll dynamically in the window where they are displayed,
much like a spreadsheet.

Scenario Description:
Creating a Content Canvas with PO Header Details and having a button to view Stacked Canvas
[Containing Line Information].
Create a Stacked Canvas using

(or) Go to Object Navigator and Create Canvas of Type

Stacked.

Oracle Forms by Dinesh Kumar S

75

Step 1: Create a Content Canvas with PO Header Information.

Block Control Design:

76

Oracle Forms by Dinesh Kumar S


Description:
Following action happens,
1) When Button clicked in Content Canvas, it should display Stacked Canvas.
2) Now Control is transferred from Block 1 to Block 2.
3) When Button Clicked in Stacked canvas, it should disappear and control should be returned
back from Block 2 to Block1.
Step 2: Create Stacked Canvas for Line Information.

Remember for stacked canvas the canvas type will be Stacked.

Oracle Forms by Dinesh Kumar S

77

Step 3: Now Create

Button using

Picture 133

Content Canvas:

After creating the button we need to create a Smart Trigger for Button click event.
Right Click Button Smart Triggers WHEN-BUTTON-PRESSED
Note 1** We need to perform two actions,

On Click Open Stacked Canvas


Transfer Control to Stacked Canvas Block.
78

Oracle Forms by Dinesh Kumar S

To do the above said actions we need to write Code in Smart Trigger.

Stacked Canvas:

Note 2** We need to perform two actions,

On Click Go back to Content Canvas.


Transfer Control back to Content Canvas Block.

Oracle Forms by Dinesh Kumar S

79

Now Create a Form Trigger WHEN-NEW-FORM-INSTANCE.


We need to create this trigger to hide the Stacked Canvas Displaying on New form.

80

Oracle Forms by Dinesh Kumar S


Compile the Form & Run the same.

Oracle Forms by Dinesh Kumar S

81

Note** Below Content Canvas the space is empty.Respective line information for the PO is displayed
in Stacked Canvas.

Now Again Click << Back to Headers button. Automatically the canvas will disappear.

82

Oracle Forms by Dinesh Kumar S

Oracle Forms by Dinesh Kumar S

83

84

Oracle Forms by Dinesh Kumar S

Creating LOV
(List of Values)

Oracle Forms by Dinesh Kumar S

85

Description:
Select Distinct User from LOV and querying it, displaying the responsibilities associated with the user.

Pre-Requisites:
1] Create the below view

CREATE OR REPLACE VIEW user_v1


AS
SELECT DISTINCT
furg.user_id
,frt.responsibility_name
FROM
apps.FND_USER_RESP_GROUPS furg
,apps.fnd_responsibility_tl frt
WHERE
furg.responsibility_id=frt.responsibility_id;

86

Oracle Forms by Dinesh Kumar S


Creating LOV:
Step 1: Creating the below Data blocks and derive a relation.

FND_USER
USER_V1

Step 2: Create the below layout.

Oracle Forms by Dinesh Kumar S

87

Step 3: Creating LOV using LOV Wizard.


In Object Navigator Right Click LOV and select LOV Wizard.

88

Oracle Forms by Dinesh Kumar S

Oracle Forms by Dinesh Kumar S

89

Assigning LOV to specific Column in a Data Block.

Select the Column Name.

90

Oracle Forms by Dinesh Kumar S

Oracle Forms by Dinesh Kumar S

91

92

Oracle Forms by Dinesh Kumar S

Successfully Created LOV.

Oracle Forms by Dinesh Kumar S

93

Compile & Execute the Form.


Now Enter the Form in Query Mode.
Navigation: Query Enter
Now Cursor will be in User name Field.

To display the valid user list perform the below action.


Navigation: Edit Display List
Select the User Name.

Now Execute the Query.


Navigation: Query Execute

94

Oracle Forms by Dinesh Kumar S


The responsibilities assigned to the user will be listed.

Oracle Forms by Dinesh Kumar S

95

Creating Checkbox

96

Oracle Forms by Dinesh Kumar S


Step 1: Create a Layout as shown below.

Oracle Forms by Dinesh Kumar S

97

Note**
While creating Layout for Shipping Details Tab defines the Displayed items type as Checkbox.

Also update the Functional Property of each checkbox items as below.

98

Oracle Forms by Dinesh Kumar S


Now Compile, Run & Execute the form.
Location 1:

Oracle Forms by Dinesh Kumar S

99

Location 2:

100

Oracle Forms by Dinesh Kumar S

Creating Form Alerts

Oracle Forms by Dinesh Kumar S

101

Description:
Now we will create a small Calculator Form which performs the following function,

Addition + Alert Msg.


Subtraction + Alert Msg.
Multiplication + Alert Msg.
Division + Alert Msg.
Clear Form Fields
On Window Close
Exit Alert Message
Close Form

Step 1: Create a Dummy Data Block.

Step 2: Create a Content Canvas with below layout.

102

Oracle Forms by Dinesh Kumar S

Note** The Items [Buttons, Text etc.] created belongs to the dummy Data block.
Step 3: Define New Alerts by clicking

by selecting Alerts in Object Navigator.

Set the Functional Property for all Alerts as below.

Similarly set the property of other alerts too.

Oracle Forms by Dinesh Kumar S

103

Step 4: Define Smart Triggers [WHEN-BUTTON-PRESSED] for each Button.


Add Button:

Sub Button:

Multiply Button:

Division Button:

104

Oracle Forms by Dinesh Kumar S


Clear Field Button:

Step 5: Define Smart Triggers [WHEN-WINDOW-CLOSED] for Window.

Result:

Oracle Forms by Dinesh Kumar S

105

Clear Fields:

Window Close:

106

Oracle Forms by Dinesh Kumar S

Oracle Forms by Dinesh Kumar S

107

Triggers in Form 6i
What is Trigger?
When an event gets executed at a specific moment [based on actions like insert, update or key stroke,
mouse actions] is called trigger.
A trigger can fire with or without PL/SQL Code.
What is the usage of Triggers?
Validation of Data Entry.
Comparing value between two fields.
Mathematical computations for a field.
Display Alert messages.
Display custom error messages.

What are different Types of Triggers?


Triggers are generally based on User Actions (or) Programmatic control.
They are classified as,

Interface Triggers
o Key-Fn Triggers
o Action Triggers
o Mouse Triggers
Navigational Triggers
Block Processing Triggers
Master Detail Triggers
Message handling Triggers
Transactional Triggers
Query Time Triggers
Validation Triggers

Interface Triggers:

Triggers associated with user interface objects are called Interface Triggers.
Some Interface Triggers will fire only in response to input or some manipulation and some in
response to both.

108

Oracle Forms by Dinesh Kumar S


Interface triggers are classified into,
Key Triggers
Action Triggers related to user objects
Mouse Triggers
Key-Fn Triggers
To view complete list of Key triggers navigate to.
Navigation: Rt. Click Triggers Smart Triggers

Oracle Forms by Dinesh Kumar S

109

Action / Interface Even Triggers:


These triggers get executed due to user interaction.
o
o
o
o
o
o
o
o
o
o
o

When-Button-Pressed
When-Radio-Changed
When-Checkbox-Changed
When-Image-Activated
When-Image-Pressed
When-Timer-Expired
When-List-hanged
When-List-Activated
When-Tree-Note-Activated
When-Tree-Note-Selected
When-Tree-Note-Expanded

Window Related Triggers:


o
o
o
o

When-Window-Activated
When-Window-Deactivated
When-Window-Closed
When-Window-Resized

Mouse Triggers:
o
o
o
o
o
o
o
o

When-Mouse-Enter
When-Mouse-Leave
When-Mouse-Move
When-Mouse-Up
When-Mouse-Down
When-Mouse-Click
When-Mouse-Double Click
When-Custom-Item-Event

110

Oracle Forms by Dinesh Kumar S


Navigational Triggers:
It fires in response to navigational events.
Navigational event occurs at different levels in oracle form builder.

Form
Block
Record
Item

They are further Sub-classified as,


o Pre and Post Triggers
o When-New-Instance-Trigger
Pre and Post Triggers:
These triggers fires when the cursor navigates internally through different levels of object hierarchy.
Possible navigations:
Cursor navigation by operator. (Like <Tab>, <Shift> etc.)
Cursor navigation initiated programmatically. (Go_Item, Go_Block)
Internal Navigation by form builder. (b/w 2 records or blocks in form using Commit Key
Sequence or by commit_form)
o
o
o
o
o
o
o
o

Pre-Form
Pre-Block
Pre-Record
Pre-Text-Item
Post-Text-Item
Post-Record
Post-Block
Post-Form

When-New-Instance Trigger:
It gets fired after the forms focus is positioned on a given form, block or item.
o
o
o
o

When-New-Form-Instance
When-New-Block-Instance
When-New-Record-Instance
When-New-Item-Instance

Oracle Forms by Dinesh Kumar S

111

Block Processing Triggers:


When the below action is taken inside a data block these triggers can be used.
o
o
o
o

When-Create-Record
When-Clear-Block
When-Database-Record
When-Remove-Record

Master Detail Triggers:


When a relation is derived between child and parent data block automatically the below triggers will be
created.
o On-Check-Delete-Master
o On-Clear-Details
o On-Populate-Details
Message Handling Triggers:
To trigger alert/message these triggers are used.
o On-Error
o On-Message
Transactional Triggers:
o
o
o
o
o
o
o
o

On-Count
On-Delete
On-Insert
On-Lock
On-Logon
On-Logout
On-Select
On-Update

o
o
o
o
o
o

Post-Database-Commit
Post-Delete
Post-Forms-Commit
Post-Insert
Post-Select
Post-Update
112

Oracle Forms by Dinesh Kumar S


o
o
o
o
o

Pre-Commit
Pre-Delete
Pre-Insert
Pre-Select
Pre-Update

Query Time Triggers:


o Pre-Query
o Post-Query
Validation Triggers:
o When-Validate-Item
o When-Validate-Record
Trigger Sequence:

Oracle Forms by Dinesh Kumar S

113

Data Block Property:


General Property:

Name: Name of the Data Block.


Subclass Information: It gives information about Source Object & Source Module details for
referenced objects.

Comments: Any user defined description /comments can be given for the data object created.

Navigation Property:

114

Oracle Forms by Dinesh Kumar S


Navigation Style: Determines how next or previous item operation is processed.
Values:
Same Record:
Change Record:
Change Block:

Next items information will be w.r.t the same record.


Next item information will be invoked when change record is encountered.
Next information will be invoked when Next record from block is
Encountered.

Navigation Data Blocks: It determines the sequence of the data blocks.


Previous Navigation Data Block:
Next Navigation Data Block:

Block with Lower Sequence


block with higher Sequence.

Records Property:

Current Record Visual Attribute Group: Its similar to conditional formatting like highlighting a specific
attribute in different color.
(High) Item Block Form (low)
Query Array Size: It determines the maximum no. of records the form can fetch from the DB.
Number of Records Buffer: It determines the minimum no. of records buffered in memory during
query execution for a data block.
Number of Records Displayed: It determines the maximum no. of records the block can display. If
setting the number more than 1 will create multiple blocks.
For example, its like repeating frame in report 6i, same fields details will be repeated for no. of records
defined.

Oracle Forms by Dinesh Kumar S

115

Query All Records: it fetches all the records when the query is executed for that data block.
Yes Fetches all the records
No Fetches the records based on Query array Size property.
Record Orientation Property: It determines how to align the items inside block.
Single Record: Specifies the Control block will always contain Single Record.

Database Property:

116

Oracle Forms by Dinesh Kumar S


Enforce Primary Key: When set, it ensures the Record inserted/Updated does not have any duplicates.
Query Allowed: When set to yes, it will execute the query associated with the Block, else it will trigger
the below error.
FRM-40360: Cannot query records here.
Query Data Source type: It specifies the source where the item is referring to. The sources can be
Table, Procedure, Transactional Trigger & FROM Clause Query.
Query Data Source Name: It populates the Table name from which data is populated.
Query Data Source Column: The entire column names which are used inside a block will be listed.

Query Data Source Arguments: If you have defined Data Source as Procedures then the argument
details will be listed here in this property.

Oracle Forms by Dinesh Kumar S

117

Alias: Its table alias i.e. creating a table objects to reference columns.
Include REF Item: Its a hidden item which is usually used during creation of master detail form to
derive a relationship. It is also used to get Object ID for the row in a table.
Clause Property:
WHERE Clause: This is used to filter the query records.

ORDERBY Clause: This is used for sorting the query records.


Optimizer Hint: A Hint string will be passed to DB to increase the performance of the Query execution.
Record Actions: The below action can be taken via Form we created.
o
o
o
o

Insert Allowed
Update Allowed
Delete Allowed
Locking Mode

Key Mode: This property is usually used when the application is running in NON_ORACLE Database.
Update Changed Columns Only: Only the updated column data will be included in update script which
is generated internally.
Enforce Column Security: This ensures only a valid user who has access to update the table can modify
the data block.
Maximum query Time: It terminates the query based on the time line given in this property.
Maximum Records Fetched: It ensures how many records can be fetched before termination of the
query.

118

Oracle Forms by Dinesh Kumar S


Advance Database Property:

DML Data Target Type: Specifies the source DML target type i.e. during update action which source
type to be used either Table, Procedure, Transactional triggers.
DML Data Target Name: This is applicable only when data target type is Table.
Procedure Related Properties: The properties are classified based on 4 actions.
Insert Data:
o Insert Procedure Name
o Insert Procedure result set columns
o Insert Procedure arguments
Update Data:
o Update Procedure Name
o Update Procedure result set columns
o Update Procedure arguments

Oracle Forms by Dinesh Kumar S

119

Delete Data:
o Delete Procedure Name
o Delete Procedure result set columns
o Delete Procedure arguments
Lock Data:
o Lock Procedure Name
o Lock Procedure result set columns
o Lock Procedure arguments
DML Array Size: Specifies the maximum array size for inserting, updating, and deleting records in the
database at one time.
Precompute Summaries: Specifies that the value of any summarized item in a data block is computed
before the normal query is issued on the block.
DML Returning Value: Specifies whether Forms should use new or old behavior when updating clientside data with changed values after a database update or insert.
That is either to use insert / update logic used before & after Report 6i.
Scrollbar Property:
These properties are used to position the scroll bar for a CANVAS or for a window.

Color Property:

120

Oracle Forms by Dinesh Kumar S

Oracle Forms by Dinesh Kumar S

121

You might also like