|
FORMS Fundamental Exam Questions
|
“Although the world is full of suffering, it is full also
of the overcoming of it.”
Helen
Keller
|
Q: What are the Oracle Developer Tool components?
Q: The Back-End development tool consists of ______
Q: The Front-End development tool consists of ______
Q: The Form Builder components are _____
Q: What is a Form Module in the Form Builder?
Q: What is a menu module in the Form Builder?
Q: What do you store in a PL/SQL library?
Q: What do you store in an Object Library?
Q:
What are the main objects of a Form Module?
Q:
Describe a window object in a Form Module.
Q:
What is a block in a Form Module?
Q:
What is an item in a From Module?
Q:
Describe a canvas in a Form Module.
Q:
What are the types of canvases in a Form Module?
Q:
Describe the Object Navigator in a Form Module.
Q:
Describe property palette in a Form Module.
Q:
What does a property palette for an object contain in a Form Module?
Q: Describe the Data Block Wizard tool.
Q: Describe the Layout Wizard tool.
|
“Character cannot be developed in ease and quiet. Only
through experience of trial and suffering can the soul be strengthened,
ambition inspired, and success achieved.”
Helen
Keller
|
Q: Use the Form Builder
tool to
create a Data block for the “Customer” table.
Q: How to you connect to the database objects using the
Form Builder tool?
Q:
How can you create a "Datablock" for a form application using
the "Form Builder
" tool?
Q: How can you create a "layout" for a form application
using the "Form Builder
" tool?
Q:
How can you use a "Content canvas" for a form application using
the "Form Builder
" tool?
Q:
Use the "Execute Query
" option to query customer's information.
Q:
How can you navigate a table using the "Form Builder
" tool?
Q:
What does the "NEXT RECORD" option do?
Q:
What does the "PREVIOUS RECORD" option do?
Q:
What does the "Enter Query
" option do?
Q:
How can you manipulate table's record?
Q:
Insert, delete and update a record.
Q:
How can you save a transaction using the "Form Builder
" tool?
|
“College isn't the place to go for ideas.”
Helen
Keller
|

Figure
1

Figure
2

Figure
3
Q:
How can you create a "Datablock" for a form application using
the "Form Builder
" tool?
Q:
How can you create a "layout" for a form application
using the "Form Builder
" tool?
Q:
How can you use a "Content canvas" for a form application using
the "Form Builder
" tool?
Q:
Use the "Execute Query
" option to query customer's information.
Q:
How can you navigate a table using the "Form Builder
" tool?
Q:
What does the "NEXT RECORD" option do?
Q:
What does the "PREVIOUS RECORD" option do?
Q:
What does the "Enter Query
" option do?
Q:
How can you manipulate table's record?
Q:
Insert, delete and update a record.
Q:
How can you save a transaction using the "Form Builder
" tool?
Q:
What is a Master/Detail relationship between two data blocks in the Form
Module?
Q:
Can a Form Module contain more than one canvas?
Q:
Having performed Fact Finding, and determine
the user's initial requirements, you are ready to create a data entry form based
on those requirements. Keeping in mind that this is an iterative process, and the
User is closely involved in the design. During your interviews, you have
identified that tables Customer, Ord, and Items
will
be required, and you have an idea of the "Look-and-Feel" of the Form.
Your client asks you to create an easy to use data entry Form for their
“Customer Order” data entry application.
See
Figure 1, 2, and 3 for screen layout requirements.
|
“Life is either a daring adventure or nothing. Security
does not exist in nature, nor do the children of men as a whole experience
it. Avoiding danger is no safer in the long run than exposure.”
Helen
Keller
|
Help
, Hint
, format mask
, properties

Figure
4
Q: Describe a property palette for an object in the Form
Module.
Q: What does a property palette provide for you to modify
an object?
Q:
How do you manipulate an object in the Form Builder tool?
Q:
During your prototyping iterations, the user
thought it would be useful to have a Help
option on the Form. A Help
function will enable them to view descriptions of Form items as they move from
item to item, and see helpful hints for each item. They also want to have
multi-lines on their “comments” item with word wrap; and apply their display
format mask
requirements.
Your
tasks are:
1-
Build Help
functionality on the data
entry Form at the items' level. The
Figure 4 is an example of tool tip for the “CUSTID” item.
2- Provide
“Display Format Mask” for all currency and date items based on your
client’s layout requirements and content. For example, date should be keyed in
the format MM-DD-YY, or currency amounts displayed with the dollar '$' sign,
with format mask
$99,999.99.
3- Provide
a multi-lines “comments” box for comments and make sure the text is word
wrapped.
4- Run
and test all user functional requirements.
Q: How can you create a help for an item in the From
Module?
Q: How can you create a hint for an item in the Form
Module?
Q: What are the differences between a help object and hint
object?
Q: How can you change a format mask of an item in the Form
Module?
Q: How can you execute a query?
|
“Many
persons have a wrong idea of what constitutes true happiness. It is not
attained through self-gratification but through fidelity to a worthy
purpose.”
Helen
Keller
|
LOVs
, Record Group

Figure
5
Q: What is a List of Values (LOV) in a Form Module?
Q: How can you search a List of Values for a string?
Q: What is a Record Group in the Form Module?
Q: What is a Tab Canvas?
Q: How does a Record Group work with a List of Values?
Q: Your client needs more robust customer’s information
retrieval. You are going to provide them with a list of customer names by adding
a List Of Values (LOV) to the Form. This
will help the data entry clerks to find a customer quickly without knowing the
customer’s ID. The list should
contain at a minimum, the customer's name and ID.
This
will provide a fast and quick way to access customer information and increase
the accuracy of the data entry.
See
Figure 5.
Your
tasks are:
1- Add
a List Of Values (LOV) to the Form.
2- Retrieve
customer ID by using customer name.
3- Query
specific customer information using customer name.
4- Run
and test all user functional requirements.
|
“One
can never consent to creep when one feels an impulse to soar.”
Helen
Keller
|

Figure
6
Q: Describe a Radio Button Group.
Q: How do you use a Radio Button Group?
Q: Describe a Radio Button Item.
Q: What are the differences between a Radio Button Group
and a Radio Button Item?
Q: When do you use a Radio Button?
Q: Your users have indicated that they keep track of their
salesmen's commission plans. The
company has commission plans "A," "B," "C," and
Blank. The “Blank” commission plan means that this is not applicable to
salesman. Middle Management would
like to stream line their salesmen contract assignment process. The company
assigns salesmen, based on their commission performance. Those salesmen with
higher than average commission will be rewarded and assigned to lucrative
contracts.
To
accommodate Management's need for tracking high performing salesmen, they ask
you to change the commission plan item to the radio button style.
See
Figure 6.
Your
tasks are:
1- Change
the commission plan column to the Radio Buttons
.
2- Change
the "order tab page" to implement the Radio Buttons
.
3- Run
and test all user functional requirements.
Note: The Radio Buttons
are
useful when there are two or more possible values but only one value can be
true.
|
“People do not like to think. If one thinks, one must
reach conclusions. Conclusions are not always pleasant.”
Helen
Keller
|
Display
items
, Summary
and
function columns

Figure
7
Q: Describe a Display Item in the Form Module.
Q: What are the Summary Columns in the Form Module?
Q: What are the Function Columns in the Form Module?
Q: What are the differences between Summary Columns and
Function Columns?
Q: How do you calculate a SUM of a group of items in a
block?
Q: While designing the tables, you have identified a
derived field in one of the tables (Item).
There should not be a column in a table that is calculated or generated
by two other columns. This is the Third Normal form rule. It should be rectified
for good database design. Their DBA
will remove any columns whose contents are depended on the other columns.
In the "Item" table the "itemtot" column is a column
depended on quantity * actualprice.
See
Figure 7.
Your
tasks are:
1- Modify
the "Items
" tab canvas
layout to
generate a new item called "itemtotal".
This field will be populated from other “Item” table’s column
during order entry (quantity * actualprice).
2- Avoid
populating the “itemtotal” from the table’s column.
3- Add
a display field to calculate the grand total of all calculated field call "itemtotal"
for each customer's order.
4- Run
and test all user functional requirements.
|
“Self-pity is our worst enemy and if we yield to it, we
can never do anything good in the world.”
Helen
Keller
|

Figure
8
Q: What is a Forms Trigger?
Q: Describe the WHEN-BUTTON-PRESSED
trigger.
Q: Describe the PRE-QUERY trigger.
Q: Describe the POST-QUERY trigger.
Q: Describe the PRE-INSERT trigger.
Q: Describe the WHEN-NEW-FORM-INSTANCE trigger.
Q: Now, the user’s DBA removed the “itemtot” column
whose content was depended on the other columns.
Your client wants you to remove the “itemtot” item from layout
screen.
Also,
your application only shows products' ID. Your
client wants to see product's description since product's ID does not tell them
what the product is.
They
want you to remove duplicate item information from "Items
" tab canvas
; and add a new item to display product's description
in the "Items" tab canvas.
See
Figure 8.
Your
tasks are:
1- Remove
duplicate item information from "Items
" tab canvas
.
2- Add
a new item to display product's description “Product Description” in the
"Items
" tab canvas
.
3- Run
and test all user functional requirements.
|
“Smell
is a potent wizard that transports you across thousand of miles and all
the years you have lived.”
Helen
Keller
|

Figure
9
Q: Describe a canvas in the Form Module.
Q: The four types of canvases are: ________
Q: Describe all four types of canvases.
Q: How do you create a horizontal toolbar?
Q: How do you create a push button item?
Q: New functional requirements came in from the users.
They need a horizontal toolbar to have on their Form.
The toolbar should contain all the frequently used options. This will
make ease of use of some options.
The
following are the list of all the frequently used functions they expect to use:
Move to previous record,
Move to next record,
Add new record,
Delete current record,
Save work, and
Exit the application.
See
Figure 9.
Your
tasks are:
1- Adding
more functionality to the application.
2- Create
a horizontal Toolbar.
3- Create
push button for above frequently used functions list.
4- Create
and compile triggers for each push button created on step 3.
5- Run
and test all user functional requirements.
|
“The best and most beautiful things in the world cannot be
seen or even touched. They must be felt within the heart.”
Helen
Keller
|
Sizing
, Layout appearances

Figure
10
Q: Describe a Window in the Form Module.
Q: The properties of an object can be changed to control
the behavior of the _____.
Q:
What is a Data Block in the Form Module?
Q:
How do you resize an object in the Layout Editor?
Q:
How do you move an object or a group of objects in the Layout Editor?
Q:
What are the handlers in a selected object?
Q:
On pervious Hands-On, your users only see the
horizontal toolbar canvas
instead
of the Customer, Orders, and Items
canvases.
They have to drag the window in order to see their “Customer Order”
application. They complain that it
is cumbersome to drag the window in order to use the application.
You have been assigned to fix this problem.
The requirement from your client is: to make sure your layout was
properly sized so your client doesn't need to drag or expand the window size.
See
Figure 10.
Your
tasks are:
1- Make
sure the canvas was sized properly.
2- Run
and test all user functional requirements.
|
“We could never learn to be brave and patient, if there
were only joy in the world.”
Helen
Keller
|
Trigger
(PRE-QUERY
), Set dynamically properties

Figure
11
Q: Describe the PRE-QUERY trigger.
Q: How do you set a block property dynamically?
Q: Can you attach several triggers to an object in the
Form Module?
Q: On the
"Orders" tab, your client wants to see the most recent or last
customer orders. They ask you to
sort the customer orders list based on their order’s date.
They like to have two radio buttons to allow them to manipulate the order
of displayed records by order date.
You
have been assigned to create two radio buttons, Labeled "Ascending"
and
"Descending"
to sort displayed record order by "order date."
See
Figure 11.
Your
tasks are:
1- Create
a Radio Group.
2- Create
two Radio Buttons
associated
with step 1 (Radio Group).
3- Label
the first Radio Button “Ascending.”
4- Label
the second Radio Button “Descending.”
5- Run
and test all user functional requirements.
|
“When one door of happiness closes, another opens; but
often we look so long at the closed door that we do not see the one which
has been opened for us.”
Helen
Keller
|

Figure
12
Q: Describe a Sequence object in a Form Module.
Q: How do you create a sequence object in a Form Module?
Q: Describe the PRE-INSERT trigger.
Q: How do you create and use a PRE-INSERT trigger in a
Form module?
Q: How do you navigator through tab canvases?
Q: What for do you use an object’s property palette?
Q: How do you read and test a sequence object?
Q: It is very cumbersome for your users to assign a new
customer ID to a new customer. It
requires finding what the last customer ID was entered into their system; then
they increment it by 1 and use that number for a new customer ID. This is not very a professional way of doing business
particularly if you have multiple transactions to enter.
You
have been assigned to solve this problem and automate this process.
They ask you to add a sequence number to customer ID (CUSTID) starting
with 200 and incremented by 1. So,
your customer ID would start from 200, 201, 202, and so on.
See
Figure 12.
Your
tasks are:
1- Create
a sequence number to generate a unique customer ID.
2- Assign
the generated sequence number to each customer each time a new customer is added
to a table.
3- Run
and test all user functional requirements.
|
“The highest result of education is tolerance.”
Helen
Keller, 'Optimism,' 1903
|

Figure
13
Q: What are the ways you can execute a form in a form?
Q: What are the differences between the OPEN_FORM,
CALL_FORM, and NEW_FORM build-in subprograms?
Q: What is a Global variable?
Q: How can you create a form to call another form?
Q: How do you compile a trigger in a form module?
Q: Your client wants to have another application Form to
query, insert, delete, and update their product history prices.
They want to open the Form from their “Customer Order” application.
It
is their requirement that the window size for product price should be small
enough to fit on a small portion of their application. Also, it is part of their
requirement to have a Push Button
to click
in order to open and run the product history prices application from the
“Items
” tab canvas
. You
should modify their application to provide such request.
See
Figure 13.
Your
tasks are:
1- Create
the product history prices Form.
2- Test
all its user functional requirements, such as insert, delete, and update.
3- Create
a Push Button
on the
“Items
” tab canvas
to open
the Form that created from step 1.
4- Create
and compile trigger to call the Form that was created from step 1.
5- Run
and test all user functional requirements.
|
“Science may have found a cure for most evils; but it has
found no remedy for the worst of them all - the apathy of human beings.”
Helen
Keller, My Religion, 1927
|

Figure
14
Q: How do you define a binding variable in a multiple
forms?
Q: How do you assign a value to a global variable?
Q: How do you pass a global variable value from one form
to another?
Q: How do you use a global variable to execute a query
based on its parameter?
Q: Describe the "WHEN-NEW-FORM-INSTANCE
" trigger.
Q: How do you create the "WHEN-NEW-FORM-INSTANCE
" trigger?
Q: Now, your client desires it would be better if they
could get specific history of product price rather than entire product history
prices table. They want you to add
more functionality to their application to display only current history of
product prices information.
Note: The current product would be defined by where the position of
your cursor is.
You
have been assigned to modify their application to query only history of product
price information for a product rather than entire table.
See
Figure 14.
Your
tasks are:
1- Automate
the “product history prices” application to query only a history of product
prices.
2- Pass
product ID as a parameter between these two Form applications.
3- Run
and test all user functional requirements.
|
“When we do the best that we can, we never know what
miracle is wrought in our life, or in the life of another.”
Helen
Keller, O Magazine, December 2003
|

Figure
15
Q: What is a main menu in the Form Builder?
Q: Are the main menus independent of form? How?
Q: What is the default main menu name?
Q: How do you use NAME_IN and COPY build-in subprogram?
Q: How do you create a default main menu?
Q: How do you modify a default main menu?
Q: Your client loves what you have done for them.
But they would like you add the same functionality you did at Hands-On 12
to have it on the main menu of the “Customer Order” application.
You
have been assigned to modify the main menu and add functions from Hands-On 12 to
their window's main menu.
See
Figure 15.
Your
tasks are:
1- Modify
the default main menu and add a menu item as “Data” and a sub-menu item as
“Product Price” on the “Customer Order” Form.
2- Delete
some unused menu items.
3- Pass
product ID as a parameter between these two Form applications.
4- Run
and test all user functional requirements.
|
“Security is mostly a superstition. It does not exist in
nature.... Life is either a daring adventure or nothing.”
Helen
Keller, The Open Door (1957)
|

Figure
16
Q: Describe a Pop-Up menu in a Form Module.
Q: How do you create a Pop-Up menu?
Q: Your client wants to have capability to cut, paste, and
copy words or lines when they type their comments in the "comments"
item at the "Customer" tab canvas
.
You
have been assigned to add the above functions into the "comments"
item in their application.
See
Figure 16.
Your
tasks are:
1- Add
more functionality into the “comments” text item.
2- Create
pop-up menu to have cut, past, and copy functions.
3- Associate
pop-up menu to the “comments” item.
4- Run
and test all user functional requirements.
|
“I As selfishness and complaint pervert the mind,
so love with its joy clears and sharpens the vision.”
Helen
Keller
|

Figure
17
Q: How do you use a window in the Form Module?
Q: Describe a Data Block in the Form Module.
Q: Describe a Control Block in the Form Module.
Q: What are the differences between a control block and a
data block?
Q: How do you move an object or objects around in the
Layout Editor?
Q: How do you copy and paste an object or objects in the
Layout Editor and in the Object Navigator?
Q: How do you select a object or objects in the
Layout Editor and in the Object Navigator?
Q: All your client functional requirements have been met.
Now, your user focuses on the appearance of the application.
They would like you to move and add some objects.
They want their logo be displayed on each of their application tab
canvas.
See
Figure 17.
Your
tasks are:
-
Perform some cosmetic layout
changes.
-
Add a logo to their application.
-
Copy the logo to each tab canvas.
-
Run and test all user functional
requirements.
|
“Death is no
more than passing from one room into another. But there's a difference for
me, you know. Because in that other room I shall be able to see.”
Helen Keller
|

Figure
18
Q: How can you run an application from desktop?
Q: They ask you that they would like to run their
application from the desktop
. They
want to use Forms “Runtime” to execute their application.
See
Figure 18.
Your
tasks are:
1- Create
an icon on the client PC desktop
.
2- Use
Forms “Runtime” to run their application.
3- Associate
their “Customer Order” application to the Forms “Runtime.”
4- Run
and login to application from icon.
5- Run
and test all user functional requirements.
|
“Everything has its wonders, even darkness and silence,
and I learn, whatever state I may be in, therein to be content.”
Helen Keller
|
Q: Describe the BLOB datatype.
Q: How do you create an item containing picture in a
canvas?
Q: Since you had inserted the employee pictures into the
EMP table successfully (from PL/SQL hands-on), now the organization wants to
view the pictures that were inserted.
You
have been assigned to develop an application form to display all of the employee
information plus their pictures.
|
“I am only one; but still I am one. I cannot do
everything, but still I can do something; I will not refuse to do
something I can do.”
Helen Keller
|
Q:
What is a REF Cursor?
Q: What is a table of records?
|
"
I can see, and that is why I can be happy, in
what you call the dark, but which to me is golden. I can see a God-made
world, not a manmade world.”
Helen Keller
|
FORM
BLOCK
and
TRANSACTIONAL TRIGGERS
Q: What is a transactional trigger?
Q: How do you use a stored procedure in stead of tables to
create a form?
Q: When do you use a transactional trigger?
|
"
I do not want the peace which passeth
understanding, I want the understanding which bringeth peace.”
Helen Keller
|
Q: How do you pass a parameter from one form to another?
Q: Describe the following build-in procedures and functions:
CREATE_PARAMETER_LIST
ADD_PARAMETER
GET_PARAMETER_LIST
DESTROY_PARAMETER_LIST
DELETE_PARAMETER
|
"
It is wonderful how much time good people spend
fighting the devil. If they would only expend the same amount of energy
loving their fellow men, the devil would die in his own tracks of
ennui.”
Helen Keller
|
Q: How
can you create a table using the "Schema Builder
" tool?
Q: How can you define a column, attribute, and primary key
using the
"Schema Builder
" tool?.
Q: How can you define a required field and unique key using the
"Schema Builder
" tool?.
Q: How can you grant an object privilege to the public using the
"Schema Builder
" tool?
Q: How can you check what other users can access using the
"Schema Builder
" tool?
Q: How can you remove a table using the "Schema Builder
" tool?
|
"Life
is an exciting business, and most exciting when it is lived for others.”
Helen Keller
|
Q: Create a query using the "Query Builder
" tool.
Q:
How can you join multiple tables using the "Query Builder
" tool?
Q:
How can you establish table relationship between multiple tables using
the "Query Builder
" tool?
Q:
Execute a query using the "Query Builder
" tool.
Q:
Sort a query using the "Query Builder
" tool.
Q:
How can you add a "WHERE" clause condition to a query using the
"Query Builder
" tool?
Q:
List a query using the "Query Builder
" tool.
Q:
Save a query using the "Query Builder
" tool.
|
"
Love is like a beautiful flower which I may not
touch, but whose fragrance makes the garden a place of delight just the
same.”
Helen Keller
“Many
people know so little about what is beyond their short range of
experience. They look within themselves - and find nothing! Therefore they
conclude that there is nothing outside themselves either.”
Helen Keller
|
Q:
How can you create a chart using the "Graphics Builder
" tool?
Q: How can you run a query
against a chart?
Q:
How can you modify a query?
Q:
How can you save a query?
Answers
|