Title: Canvases, Windows, Calling Other Forms, Chart Items, and Reports
1Chapter 8 Canvases, Windows, Calling Other Forms,
Chart Items, and Reports
2- In this chapter you will
- Learn about the behavior of canvases and window
types - Create and use stacked canvases
- Create and format tab canvases
- Call other forms
- Create toolbar canvases
- Create and use chart items
- Call a Web document from a form
- Create and use reports objects
3Canvas and Window Types and Behaviors
- A canvas is the form object that is seen by the
operator. - Canvases are displayed in a window.
- Canvases can be larger or smaller than the
window. If the canvas is larger than the window,
the window will have scroll bars that allow the
operator to scroll the canvas. - Canvases are a graphic object and can overlay
other canvases.
4Canvas and Window Types and Behaviors
- There are five different types of canvases
- Content a base canvas. A form can only display
one at a time - Stacked a secondary canvas that can overlay a
content canvas - Tab canvas a canvas that consists of a series
of tabbed pages that over lay each other - Horizontal toolbar a canvas that displays at
the top of the form - Vertical toolbar a canvas that displays on the
left side of the form
5Canvas and Window Types and Behaviors
- Canvases have a series of properties of note
- Canvas Type
- Raise on Entry
- Viewport X Position on Canvas
- Viewport Y Position on Canvas
6Canvas and Window Types and Behaviors
- There are two different types of windows. The
Window Style property determines the type - Document causes the window to be displayed
inside the applet area in the Web browser. If
you move the window toward the edge of the applet
area the window will be hidden by the Web browser
area not used by the applet area. - Dialog causes the window to be raised above the
applet area. The window can be moved anywhere
within the Web browser and remain visible.
7Canvas and Window Types and Behaviors
8Using Stacked Canvases
- Stacked canvases overlay a portion of a content
canvas. - They can be placed directly over the content
canvas and appear as if a part of the canvas.
9Using Stacked Canvases
10Using Stacked Canvases
11Using Stacked Canvases
12Using Stacked Canvases
- Stacked canvases can also be associated to a
dialog window and moved above the canvas. - The canvas Window property is used to associate
the canvas to a window. - The windows Primary Canvas property is used to
associate the window to a canvas. - Both properties must agree.
13Using Stacked Canvases
14Using Stacked Canvases
- Stacked canvases are generally displayed by
navigating into an item displayed on the canvas. - Stacked canvases are positioned using the
Viewport X Position on Canvas and Viewport Y
Position on Canvas properties. - A setting of 0,0 will position the canvas in the
top left corner of the window. - Changing the properties will move the stacked
canvas down or to the right.
15Using Stacked Canvases
- Several built-ins can be used to change the input
focus and display the stack canvas. - Go_block Built-in that moves the input focus
into the first item in a target data block. - Go_item Built-in that moves the input focus
into a specific item in the current block. - An effective way of executing the built-ins is to
place them in a data block item push button
When-Button-Pressed trigger. - It is a good idea to place a button on the
stacked canvas so that it navigates back to the
content canvas. This hides the stacked canvas
behind the content canvas giving the appearance
that it has been closed.
16Using Stacked Canvases
17Creating and Formatting Tab Canvases
- A tab canvas consists of a series of pages that
overlay each other. - Each of the pages has a tab that is visible.
Clicking the tab will bring the associated page
to the top making it current. - Tab canvases can reduce the number of form
modules by placing complementary data views on
tab pages in the same module.
18Creating and Formatting Tab Canvases
19Creating and Formatting Tab Canvases
- Tab canvases are useful tools for the Web.
- Placing forms on a tab canvas can eliminate the
need to continually download corollary forms. - Tab canvases are usually created using the Layout
Wizard Canvas page. - The NEW CANVAS and TAB CANVAS settings cause a
new tab canvas to be created. - The NEW TAB PAGE setting causes the items to be
placed on a new page.
20Creating and Formatting Tab Canvases
21Creating and Formatting Tab Canvases
- Tab pages are child tab canvas objects. They can
be viewed on the Object Navigator by expanding
the target tab canvas. - Tab canvas properties affect the child tab pages.
22Creating and Formatting Tab Canvases
- Tab pages have several properties of note
- Bevel
- Corner Style
- Width Style
- Active Style
- Tab Attachment Edge
- Label
- Tab pages can have their own distinct color that
differentiates them from the tab canvas.
23Creating and Formatting Tab Canvases
24Calling Other Forms
- Systems are composed of multiple applications.
- Three built-ins are available to call another
form module - Call_form
- New_form
- Open_form
- New_form opens the called form and closes the
calling form.
25Calling Other Forms
- Call_form opens the called form and leaves the
calling form open. - The operator will return to the calling form when
the called form is closed. - Using Call_form results in Forms Builder raising
an exception when changes are pending on both the
calling and called form and a commit is issued.
Forms Builder issues a FRM-40403 A calling form
has unapplied changes. Save not allowed error
message and stops the commit.
26Calling Other Forms
27Calling Other Forms
- Open_form leaves the calling form open while
opening the called form. - Open_form allows the operator to save changes on
the called form while changes are pending on the
calling form. - Open_form establishes a new database thread for
each application it opens. - Databases only have a pre-determined number of
threads. The Open_form built-in can result in
operators not being able to access the database.
28Calling Other Forms
- The Call_form built-in has parameters that
disable the called applications ability to issue
DML statements. - The Call_form built-in also has a setting that
will hide the called form or leave it partially
visible. - A good technique for calling a form is to use one
of the three built-ins in a When-Button-Pressed
trigger. The trigger can be associated to a push
button or an iconic button on a toolbar.
29Creating and Using a Toolbar
- Forms Builder has vertical and horizontal toolbar
canvases. - Toolbar canvases are displayed at the top or the
left side of the form. - Iconic button items can be placed on the toolbar
to perform various functions.
30Creating and Using a Toolbar
- Toolbar canvases can be assigned to a window or a
canvas. - When the toolbar is assigned to the window, the
toolbar appears within the window frame and
overlays a portion of the canvas. - Toolbars assigned to the application are
displayed inside the window frame above the
canvas.
31Creating and Using a Toolbar
32Creating and Using a Toolbar
33Creating and Using Charts in Forms
- Forms Builder 6i allows you to create chart items
within the IDE using the Chart Wizard.
34Creating and Using Charts in Forms
- Forms Builder 9i does not have this wizard.
- Both versions of the product allow you to display
chart items on the form. - The Chart Wizard allows the developer to enter
the title, the type of chart, the category axis
values data block item, the plotted value data
block item, and the name of the graphics file.
35Creating and Using Charts in Forms
36Creating and Using Charts in Forms
37Creating and Using Charts in Forms
- Charts always have numeric and character values.
- The character values describe the measurement
value. The character value is usually the
category value.
38Creating and Using Charts in Forms
39Creating and Using Charts in Forms
40Creating and Using Charts in Forms
41Creating and Using Charts in Forms
42Creating and Using Charts in Forms
- If a chart item is placed on a data block it may
display multiple times. The Number of Records
Displayed property can control the number of
chart items displayed. - Chart items by default are populated when the
data block is populated.
43Creating and Using Charts in Forms
- It is possible to delay the chart creation using
the Update on Query and Update on Commit
properties. - The Execution Mode property affects the called
chart. It has two settings - Runtime allows the operator to interact with
the chart possibly saving the chart or entering
selection values. - Batch prevents the operator from interacting
with the chart.
44Creating and Using Charts in Forms
- The Communication Mode property also affects the
called chart. It has two settings - Synchronous - determines that control returns to
the calling form only after the chart item has
been populated. - Asynchronous causes the control to return to
the form immediately after the update process has
been started.
45Calling a Web Document From the Form
- Forms Builder can display other Web documents.
- The Web.show_document built-in can be used inside
a trigger to display a Web page.
web.show_document(url, target)
46Calling a Web Document From the Form
- Target arguments determine where the page is
displayed. The following are the arguments - _self Used to load the called document into the
same window as the form. - _parent Used to load the document into the
parent window containing the hyper text
references. - _top Used to load the document into the window
containing the hypertext line and replaces any
frames currently displayed in the window. - _blank Used to load the document into a new,
unnamed top-level window.
47Creating and Using Reports Objects
- Reports are commonly called from a form.
- Forms Builder 9i and Form Builder 6i show the
reports differently. - Forms Builder 6i, the client/server version,
shows the report in the Reports Builder
Previewer. - The Previewer cannot be displayed on the Web.
48Creating and Using Reports Objects
- Developers can execute a report module from a
form, create a PDF file in cache, and view the
PDF file using the Web.show_document built-in.
This simulates the Previewer very effectively. - Forms Builder uses reports objects as argument
values when executing the report.
49Creating and Using Reports Objects
- Reports objects have the following properties
whose values are passed to Reports Builder - Filename
- Execution Mode
- Communication Mode
- Data Source Data Block
- Query Name
- Report Destination Type
50Creating and Using Reports Objects
- Reports objects are created on the Object
Navigator. - It is possible to associate the report to a form
data block or to a previously created report. - If the reports object is associated to a data
block, Forms Builder will pass search arguments
to the report module in order to limit the
records displayed on the report.
51Creating and Using Reports Objects
- When a reports object is created, the New Report
dialog is displayed. - The dialog box allows you to create a new report
using Reports Builder, to associate the object to
an existing report module, or to link the report
to a data block.
52Creating and Using Reports Objects
53Creating and Using Reports Objects
- Before a report can be executed by Forms Builder
a reports service must be started. - The Rwserver install command installs a
service. - The Rwserver server command installs a
temporary service.
54Creating and Using Reports Objects
55Creating and Using Reports Objects
- The Run_report_object built-in launches Reports
runtime and passes it the arguments contained in
the reports objects. - Reports can be executed from Form Builder 6i
using the Run_product and Host built-ins.
56Creating and Using Reports Objects
- A reports object has a Report Destination Type
property that determines whether the output of
the module will be - Preview (6i only)
- File
- Printer
- Cache
- Screen
57Creating and Using Reports Objects
- A second reports object property is Report
Destination Format that determines the output
format. Options are - PDF
- HTML
- HTMLCSS
- HTMLCSSIE
- RTE
- DELIMITED
58Creating and Using Reports Objects
- Additional reports object properties whose values
are passed to Reports Builder - Report Destination Name
- Report Destination Format
- Report Server
- Other Reports Parameters
59Creating and Using Reports Objects
- An excellent report technique that allows the
operator to see a formatted report in a
Previewer-like tool is to - Execute the report form the form
- Set the Report Destination Property to CACHE
- Set the Report Destination Type Property to PDF
- Display the PDF file using the Web.show_document
built-in
60Where You Are and Where Youre Going
- In this chapter you saw
- How to open other form windows and modules
- How to create and use stacked canvases, tab
canvases, and toolbar canvases - How to call reports and chart items
61Where You Are and Where Youre Going
- In the next chapter you will see
- How to use a menu to tie applications together
- How to create a popup menu that is launched by
the right mouse button - How to add alerts that display informational
messages to your form