iSelfSchooling.com  Since 1999     References  |  Search more  | Oracle Syntax  | Free Online Oracle Training

    Home      .Services     Login       Start Learning     Certification      .                 .Share your BELIEF(s)...

 

. Online Accounting        .Copyright & User Agreement   |
    .Vision      .Biography     .Acknowledgement

.Contact Us      .Comments/Suggestions       Email2aFriend    |

 

Online Oracle Training for beginners and advanced - The most comprehensive Oracle tutorial

The authors do not guarantee or take any responsibility for the accuracy, or completeness of the information.

Developers - FORMS

 

Lesson 01 | Lesson 02 | Lesson 03 | Lesson 04 | Lesson 05 | Lesson 06 | Lesson 07 | Lesson 08 | Lesson 09 | Lesson 10 | Lesson 11 | Lesson 12 | Lesson 13 | Lesson 14 | Lesson 15 | Lesson 16 | Lesson 17 | Lesson 18 | Lesson 19 | Lesson 20 | Lesson 21 | Lesson 22 | Lesson 23 |

 

Lesson 07

"People fail forward to success." Mary Kay Ash

 

Read first then play the video:

   FRM-VIDEO -(Hands-On 05) How to use Display items, Summary and function columns

   

Display items, Summary and function columns

Introduction

Display items are read-only items and are only useful for calculated data such as subtotals and unchangeable data.

You can use Summary Columns to calculate average, sum, min, and max of a group of items in a block. It can be read-only or text items. Use Function columns to return calculation of binding variables to your screen. It also can be read-only or text items.

 

Hands-On

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.

FYou will learn how to: display fields, summary and formula functions, use tab canvas, use "object navigator," use "Data Blocks," use "Layout Editor," use "Property Palette," use "Run Form," and "Execute Query."

 

Figure 7

 

Open a Module

In the "Object Navigator" window, highlight Forms. Go to the Main menu and choose "File," select "Open" to open an existing form (customer_orders_V04)

from the "iself" folder.

 

Save a module

Click on the "CUSTOMER_ORDERS_V04" form. The color changes to blue. Then change the name and save the Form name as version 05 (customer_orders_v05). This way the original form is untouched.

 

Move an object

In the Layout Editor window, click on the "ITEM" tab to display its canvas. Select and move the "ITEMTOT" item and Scrollbar to right to reserve a space for a new item.

To select multiple objects, push and hold the control key and then click on the objects that you wish to be part of group. You can also, go outside of the objects and click and hold the cursor on the canvas and move it until all the objects are in the box. Release the mouse. Now, you selected all your objects. Go anywhere in side of the handlers to move your selected objects.

 

In the Layout Editor window, make sure that the "Block" box shows the "ITEM" block. If not select the "ITEM" data block.

 

Create a Display item

On the toolbar in the Layout Editor Window, select "Display item" and click the "+" where you wish to have your new item (DISPLAY_ITEMnn). In this hands-on exercise, you should have your item next to the "quantity" item. Adjust its size. And open its property palette.

 

Formula Column

In its Property Palette, change "name" to itemtotal. Change "Justification" to right. Change "Datatype" to Number. Its "format mask" to $99,999.00. Change "Calculation Mode" to Formula, and type the formula on the "Formula" box (:qty * :actualprice). The colon next to an item, references to a binding variable on the screen such as actualprice and quantity. Change "database item" to no, because this is not a column from the item table. Change "prompt" to "itemtotal." Change "Prompt attachment edge" to "Top." Then close the window.

 

Add another "Display Item" to calculate the totals of "itemtotal." Notice that the "Block" box on the canvas window points to the "ITEM" block. And the "Number of Items Displayed" on this object is 5.

On the toolbar in the Layout Editor, select "Display item" and click the "+" where you wish to have your new item (DISPLAY_ITEMnn). In this hands-on exercise, you should have your item under the "ITEMTOTAL" item. You get 5 objects but we only need one. Right click on the object and open its property palette.

 

Summary Column

In its Property Palette, change "name" to "ORDERTOTAL." Change "Justification" to "Right." Change "Data Type" to "Number." Change "Calculation Mode" to "Summary."

Here, the formula property is not applicable. Change "Summary Function" to "SUM." Change "Summarized block" to "ITEM." Change "summarized Item" to ITEMTOTAL. Change "Number of items displayed" to 1. Change "Database item" to "no." Type the prompt property to "Order Totals:." Change "Prompt attachment edge" to "Start." Then, close the window.

 

Make some window adjustments, if needed.

 

In the Object Navigator window, right click on the ITEM data blocks to open its Property Palette.

In its Property Palette, change "Query all records" to "yes." Then close the window.

 

Navigate the application's layout.

 

Run the Form Runtime

Then run the application.

 

Execute Query

Click "Execute query" and navigate through the application.

Notice that the ITEMTOTAL column matches with the itemtot column.

 

There is no "Format mask" for the "order total" item.

Close the Runtime Forms.

 

Change a Format Mask

In the Layout Editor, right click on the order total (ORDERTOTAL) to open its Property Palette.

In its Property Palette, change its format mask to $999,999.00. Close the window and run the application.

 

Execute Query

Execute the query and navigate through the application.

When you are done with all your testing, then close the application and save the changes.

 

"Whenever I hear, 'It can't be done,' I know I'm close to success." Michael Flatley (Lord of the Dance) quoted by Eric Celeste

 

Questions:

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.