Previous  Next          Contents  Index    Library

Web Applications Dictionary Overview

The Web Application Dictionary is an active data dictionary that enables you to define inquiry applications for the web, and generate many of the application's characteristics at runtime. The data dictionary stores key information about your application, including appearance, language, security requirements, navigation, and data. Because this information is stored in an active data dictionary, you can create an inquiry application for the web specifically designed to meet your business needs.

An Oracle Forms user-interface is provided for you to enter your application's characteristics in the active data dictionary. Through this user-interface, you can customize existing inquiry applications for the web, or create new ones without programming effort. You can create applications that are customizable, extensible, and multi-lingual.

With Oracle Web Application Dictionary you can:

Definitions

Object A database view.

Attribute A reusable field used in a web inquiry application. For example, customer name and customer number are both attributes. An attribute is not associated with data. For example, the customer name attribute can be reused anytime a customer name field is displayed on a web inquiry screen.

Object Attribute A reusable field that results when you associate an attribute with an object.

Flow An illustration of data relationships. A flow may be exhibited in the form of a series of web pages, each displaying data and its relationship to other data. A flow may also assume a hierarchical representation in the Object Navigator.

Page (or Flow Page) A page as defined in the Web Application Dictionary becomes a web page in the flow of your application.

Region A logical grouping of data. For example, customer information can be grouped in one region and shipping information can be grouped in another region. A region also represents a section of a web page.

Page Region A region associated with a page.

Primary Region The first region of a page.

Region Item A reusable field that results when you associate an attribute or object attribute with a region.

Designing a Web Inquiry Application

Before actually registering your application in Web Application Dictionary, you must design not only the look and feel of the application, but also the supporting logical data model. You must identify the database tables that store the data to be displayed in your web inquiry application.

Because the Web Application Dictionary derives its data from database views, you must create views on the relevant database tables. You can join multiple tables to create a view, or simply create a view for each table.

This preparation is essential to your success in creating a web inquiry application.

Creating a Flow

Use the Web Application Dictionary to create flows.

Flow Components

The components of a flow are:

Objects You must create one (and only one) object for each of your database views.

Attributes Both objects and attributes comprise the backbone of a flow. You can reuse them in many flows.

You must create an attribute for each column of your database view. For example, suppose you have a view on the CUSTOMER table and the view contains the columns CUSTOMER_ID and CUSTOMER_NAME. You must create an attribute for both, even though you may not want to display the CUSTOMER_ID. When you create an attribute, you can indicate various display options, including Hidden.

The attribute definition serves as the basis of your subsequent object attribute and region item definitions.

Although you create an attribute for each view column, the attribute itself is not associated with a database column, and hence is not associated with data.

Object Attributes You may reuse attributes in many flows. When you create an object attribute, you are restricting the attribute definition to a particular object. For example, once you associate the CUSTOMER_NAME attribute with the CUSTOMER view, you have limited the definition of CUSTOMER_NAME to its corresponding column in the CUSTOMER view. You do not, however, lose your original attribute definition. This is maintained, and may be continually reused.

The characteristics of an object attribute are inherited from the original attribute definition. You may override these defaulted characteristics. Any characteristics you override only apply to the object attribute definition; the original attribute definition remains unaffected.

Object attributes are associated with data in the database. Therefore, in order to display data for a particular field on a web page, you must create an object attribute for that field.

Pages You must register each of your web pages in the Web Application Dictionary. For example, if you want one web page to display the customer name and number, and another web page to display the customer address, you must register two pages in the Web Application Dictionary.

Regions A Region is simply a section of a web page. Suppose, for example, that you want a web page to display both the customer name, number, and the address. You would likely want this information illustrated in two separate sections on the same web page. This design would require that you define two regions in the Web Application Dictionary.

Each region is based upon one and only one object. The Web Application Dictionary determines the data to display in a region from the region's underlying object.

Region Items You must define a region item for each field you want to display in a region. In the example above, you would define six region items, one for each displayed field: customer name, number, address, city, state, and zip code. Region items typically represent only those fields that you want to display in the region.

The region item definition is defaulted from the original object attribute definition, although you may override the defaults. Any overridden defaults only apply to the region item definition; the original object attribute definition is not affected.

Page Regions Like attributes, you can reuse regions in many flows. In order to specify that a particular page contains a region, you must create a page region.

Links Using the Web Application Dictionary, you can define hypertext links between the web pages in your inquiry application.

You can define a hypertext link to an external web site as well. To do this, you must define an object attribute of datatype URL. This object attribute serves as a placeholder for the external URL address. You must then place the URL attribute in the region containing the hypertext link (using the region items window).

Steps to Creating a Flow

Step Window / Navigation
  Text in brackets ([]) indicates a button.
Design the flow Not applicable. Create a navigation plan and database views.
Define an object Objects window / Navigator > Object Workbench. See Defining Objects.
Define attributes for the object Attributes window / Navigator > Object Workbench > [Create Attributes]. Choose the Create Attributes button immediately upon opening the Object Attributes window. See: Defining Attributes.
Add attributes to the object to create object attributes Object Attributes window / Navigator > Object Workbench. Close the Attributes window to return to the Object window. See Assigning Attributes to Objects.
Repeat the three steps above for each object.
Define primary keys for each object Unique Keys window / Navigator > Object Workbench > [Primary Keys]. Select an object in the Objects window and choose the Primary Keys button. See: Defining Primary Keys.
Define foreign keys for each object Foreign Keys window / Navigator > Object Workbench > [Foreign Keys]. Select an object in the Objects window and choose the Foreign Keys button. See: Defining Foreign Keys.
Identify primary unique key for each object Objects window / Navigator > Object Workbench. Close the Foreign Keys window to return to the Objects window. See Defining Objects.
Define all regions Regions window / Navigator > Region Workbench. See: Defining Regions.
Select a region and add attributes to it to create region items.
Repeat this step for each region.
Region Items window / Navigator > Region Workbench > [Region Items]. See: Creating Region Items.
Define a flow name Flows window / Navigator > Flow Workbench. See: Defining Object Flows.
Define all flow pages Flow Pages window / Navigator > Flow Workbench > [Page Regions]. See: Defining Flow Pages.
Select a page and add regions to it to create page regions.
Repeat for each page.
Page Regions window / Navigator > Flow Workbench > [Flow Pages] > [Page Regions]. See: Defining Flow Page Regions.
Define all page relationships Page Relations window / Navigator > Flow Workbench > [Flow Pages] > [Page Relations]. See: Defining Flow Page Relations.
Select a page region and define its hyperlinks.
Repeat for each page region with a link.
Links window / Navigator > Flow Workbench > [Flow Pages] > [Page Regions] > [Links]. See: Defining Flow Page Region Links.
Optionally, run the flow in Object Navigator Run Flows window / Navigator > Flow Workbench > [Run] > [Run]. See: Defining Object Flows.

Example

This section uses an example to illustrate the steps involved in creating a flow. The steps listed above are described again here, but in more detail.

Step 1. Design your flow.

Before entering data into the Web Application Dictionary, you must design your web inquiry application. This involves determining the business needs you want to satisfy with the application, identifying the source of the data to be displayed, and designing the look and feel of the application.

It is suggested that you create a navigation map before actually entering data. The navigation map should include the significant aspects of your flow:

The list below illustrates the navigation map for this example.

For this particular example, the following views must be created in the database :

SO_HEADERS

Create or replace view SO_HEADERS as

select
sh.header_id,
sh.order_number,
rc.customer_id,
rc.customer_name,
rc.customer_number
from so_headers sh,
ra_customers rc
where 
sh.customer_id = rc.customer_id;

SO_LINES

Create or replace view so_lines as

select 
sl.line_id,
sl.header_id,
sl.line_number,
sl.inventory_item_id,
sl.warehouse_id,
msi.organization_id,
msi.description item_name
from
so_lines sl,
mtl_system_items msi
where
sl.inventory_item_id =
msi.inventory_item_id and
sl.warehouse_id = 
msi.organization_id;

Step 2. Define an object

Once you have prepared a navigation map and created views for your inquiry web application, you must register the views as objects. In this particular example, two objects are created, one at a time:

Step 3. Define attributes for the object

After you create an object, you can define the attributes that correspond to the object. Your attribute definitions do not apply to a particular object at this point. You must still associate your attributes to an object.

In the example, the following attributes must be created for the object, OBJECT_SO_HEADERS:

The following attributes must be created for the object, OBJECT_SO_LINES:

You must also create an attribute for the shipments button.

In the attributes window, you can define the following information about each of the attributes:

Attribute Information Field Prompt Required?
Owning Oracle Application Application Y
User-friendly attribute identifier Attribute Id Y
User-friendly attribute name (used in LOVs in later Web Application Dictionary screens) Attribute Name Y
Field prompt to be displayed for the attribute in the Web Application Long Label Y
Textual appearance of the attribute value Bold check box, Italic check box N
Attribute alignment on the web screens V Align, H Align Y
Attribute datatype Datatype Y
Length required to display the field prompt for the attribute Label Length N
Length required to display the value of the attribute Value Length Y
Free-form text attribute description Description N

Below is an example of data that may be entered in the Attributes window for the attribute, customer name:

Attribute Information Field Prompt / Sample Data
Owning Oracle Application Application = Oracle Electronic Data Interchange
User-friendly attribute identifier Attribute Id = Customer_Name
User-friendly attribute name (used in LOVŐs in later Web Application Dictionary screens) Attribute Name = Customer Name
Field prompt to be displayed for the attribute in the Web Application Long Label = Customer
Textual appearance of the attribute value Bold check box = checked
Attribute alignment on the web screens V Align = Top, H Align = Centered
Attribute datatype Datatype = Number
Length required to display the field prompt for the attribute Label Length = 8
Length required to display the value of the attribute Value Length = 30
Free-form text attribute description Description = This attribute corresponds to the name of the customer.

Step 4. Add attributes to the object to create object attributes

At this point you have defined all attributes for your web inquiry application. Now, you must associate each attribute with an object, the object containing the data to be displayed for the attribute. In this example, the following attributes are associated with the object, OBJECT_SO_HEADERS:

The following attributes are associated with the object, OBJECT_SO_LINES:

The data in the Object Attributes window is defaulted for you from the original attribute definitions. You may override these defaults.

Additionally, you must use the object attributes window to map each object attribute to an object database column. In this example, you would map the customer name attribute to the object column, customer_name. Use the LOV option to obtain a list of valid database columns from which to choose.

Step 5. Define primary keys for each object

You must use the Unique Keys window to define primary keys for each of your objects. For this example, you would define the following primary keys:

Object Primary Key(s)
OBJECT_SO_HEADERS HEADER_ID
OBJECT_SO_LINES LINE_ID

Step 6. Define foreign keys for each object

Once you have defined all primary keys, you must use the Foreign Keys window to define the foreign keys for each of your objects. The primary key / foreign key relationships you define dictate the navigation paths through your web pages and regions. Therefore, if you intend on navigating from one region to another region based upon the same object, you must define a foreign key for that common object. In this example, you would define the following foreign keys and primary key / foreign key relationships:

Object Foreign Key(s) Relationship
OBJECT_SO_HEADERS HEADER_ID Object to Itself
OBJECT_SO_LINES HEADER_ID Header to Lines

Notice that the object, OBJECT_SO_HEADERS has a foreign key that is the same as the primary key, HEADER_ID. This is because this particular example requires that navigation occur from one region (Summary of Orders) to another region (Order Detail) that is based upon the same object.

Step 7. Identify the primary unique key for each object

If you define multiple unique keys for a particular object, you must use the objects window to identify the primary unique key. This is the unique key used for navigation through your web pages and regions. In this example, there is only one unique key for each object. Therefore, the primary unique key is just the one and only unique key.

Step 8. Return to Navigator window

Step 9. Define all regions

In the same way you define attributes and then associate them to objects, you must also define regions, and then associate them to pages. In this example, the Regions window is used to define the following regions:

In the Regions window, you can define the following information about regions:

Region Information Field Prompt Required?
User-friendly region identifier Region ID Y
User-friendly region name (this name will be displayed at the top of the region in your web application) Region Name Y
Owning Oracle Application Application Name Y
The object underlying the region Object Name Y
The number of database rows to be displayed in the region: one or many Region Style Y
The number of screen columns you would like displayed in the region before the region data wraps around to the next screen line Number of Columns N
Free-form text region description Description N

Below is an example of data that may be entered in the Regions window for the region, Order Detail:

Region Information Field Prompt / Sample Data
Region Information Screen Field / Sample Data
User-friendly region identifier Region Id = Order_Detail_Region
User-friendly region name (this name will be displayed at the top of the region in your web application) Region Name = Order Detail
Owning Oracle Application Application Name = Oracle Electronic Data Interchange
The object underlying the region Object Name = object_so_headers
The number of database rows to be displayed in the region: one or many Region Style = single-row
The number of screen columns you would like displayed in the region before the region data wraps around to the next screen line Number of Columns = 4
Free-form text region description Description = This is the Order Detail Region, used to display summary information for the drill down order

Step 10. Select a region and add attributes to it to create region items.

For each region, you must use the Region Items window to place attributes and / or object attributes in the region. Region items are typically the object attributes that you would like to display in the region, however, there are some exceptions to this rule: URL attributes must be defined as region items, and attributes by which you are securing data must also be defined as region items (for more information on defining attribute security, refer to the document, Web Inquiries).

In this example, you would define the following region items for the Summary of Orders region:

and the following region items for the Order Detail region:

and the following region items for the Order Lines region:

The data in the Region Items window is defaulted from the original attribute definitions. You may override these defaults.

In addition to the defaulted information, you can enter the following information about region items in the region items window:

Region Item Information Field Prompt Required?
Whether the region item is an attribute or an object attribute (a type of attribute is usually reserved for a button) Attribute Type Y
The order in which you would like to display the region items in the region Display Sequence Y
The display style of the region item. This can be one of the following styles:
1) button
2) check box
3) hidden (does not display in the region)
4) poplist
5) text
Item Style Y
Whether or not a web query window should be created for the region item. Queryable check box N
If you would like the region item to be in an order by clause when the Web Application Dictionary selects the data from the database. And, whether or not you would like the order by to be ascending or descending. Order Sequence and Order Direction N

Step 11. Return to Navigator window

Step 12. Define a flow name

You must enter a name for your flow in the Flows window. The name of this example flow may be, View Sales Orders.

Step 13. Define all flow pages.

Once you have entered a flow name to register your flow, you must define the web pages comprising the flow. In this example, you would define the following web pages:

You can use the Flow Pages window to enter the following information about each page:

Page Information Field Prompt Required?
User-friendly page identifier Page Id Y
User-friendly page name (this name will be displayed at the top of the web page in your web application) Page Name Y
Free-form text page description Description N
Whether or not the page is the first page in the flow. You can only have one primary page. Primary Page check box Y

Step 14. Select a page and add regions to it, creating page regions.

Now that you have defined all of your web pages and regions, you can combine them to build your flow. In this example, you would use the Page Regions window to add the following region to the Summary of Orders page:

For each page region, the data in the Page Regions window defaults from the original region definition. You may override these defaults.

In addition, you can enter the following information about regions in the Page Regions window:

Page Region Information Field Prompt Required?
Whether or not the region is the first region of the page Primary Region check box Y
If the region is not the primary region, identify the region displayed before it on the web page. Parent Region Y
The relationship between the parent and child regions (this relationship was initially defined in the foreign keys window). Relationship Y

Step 15. Define all page relationships

You must define the relationships among all web pages. For this example you would define the following page relationships:

From Page From Region Target Page Relationship (Defined in the Foreign Keys window)
Summary of Orders Summary of Orders Order Detail Object to itself

Step 16. Select a page region and define its hypertext links.

If applicable, for each page region you must define hypertext links. You can specify a page or a URL attribute as the link destination. For this example, you would define a link on the order number from the Summary of Orders page (and Summary of Orders region) to the Order Detail page.

You must also define a link from the Shipments button for this example. Because the Shipments button is supposed to cause navigation to an external web site, you would define the link destination to be the URL attribute defined above.

Optional Web Application Dictionary Windows

The steps above show one way of creating a flow using the Web Application Dictionary. However, there are additional optional screens that are provided as well. They are:

Assign Regions You can use this screen to assign an object attribute to many regions at once. You can optionally navigate to this screen from the Object Attributes window using the Multiple Assignments button.

Modifying an Existing Web Inquiry Application

You can use the Web Application Dictionary to both create a new web inquiry application or modify an existing one. The table below lists some of the information you may want to modify for an existing web inquiry application and where to make the corresponding change in the Web Application Dictionary windows.

Information to Change Where to Make the Change
Change field prompt If you want the change made globally,
Attributes window (Long Label field)
If you want the change made for an object (and everywhere else the object is used in the flow),
Object Attributes window (Long Label field)
If you want the change made for that region (and everywhere else the region is used),
Region Items window (Long Label field)
Extend or truncate the length of the field prompt If you want the change made globally,
Attributes window (Label Length field)
If you want the change made for an object (and everywhere else the object is used in the flow),
Object Attributes window (Label Length field)
If you want the change made for that region (and everywhere else the region is used),
Region Items window (Label Length field)
Extend or truncate the length of the data in a field If you want the change made globally,
Attributes window (Value Length field)
If you want the change made for an object (and everywhere else the object is used in the flow),
Object Attributes window (Display Value Length field)
If you want the change made for that region (and everywhere else the region is used),
Region Items window (Display Length field)
Change the textual appearance of the data in a field If you want the change made globally,
Attributes window (Bold and Italic check boxes)
If you want the change made for an object (and everywhere else the object is used in the flow),
Object Attributes window (Bold and Italic check boxes)
If you want the change made for that region (and everywhere else the region is used),
Region Items window (Bold and Italic check boxes)
Change the alignment of a field on the screen If you want the change made globally,
Attributes window (V Align and H Align fields)
If you want the change made for an object (and everywhere else the object is used in the flow),
Object Attributes window (V Align and H Align fields)
If you want the change made for that region (and everywhere else the region is used),
Region Items window (V Align and H Align fields)
Change the datatype of an attribute Attributes window (Datatype field)
Change the order by clause to include or exclude an attribute Region Items window (Order Seq field and Order Direction field)
Generate a web query window for an attribute Region Items window (Queryable check box)
Change the region heading Region window (Region Name field)
Change the page heading Flow Pages window (Page Name field)
Change the name of the flow Flows window (Flow Name field)


         Previous  Next          Contents  Index    Library