Kbase 15414: Multiple Windows and Pass-through links in version 8
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  5/10/1998 |
|
Multiple Windows and Pass-through links in version 8
Multiple Window Applications in Version 8
-----------------------------------------
You can assign any kind of SmartObject to a page,
including another SmartWindow. When a SmartWindow
is on a page, you switch windows by switching to
a different page.
For example,
You can design Window-1 which contains a SmartBrowse
for the customer table on page 0. Also, on page 0 you
may place a button that does the following when pressed:
run select-page(1).
Now, on page 1 of Window-1 you can place another SmartWindow.
For instance, if you have already created Window-2, then you
will be able to pick it off of the list of SmartContainers
that are available from the object pallette. You can place
Window-2 on page 1 of Window-1.
Now, when you press the above-mentioned button, page 1 will
be selected and become visible. Since Window-2 has been
placed on page 1, Window-2 will be visible. This is how
Multiple Window Applications are created in version 8.
Communicating between SmartWindows via the Pass-through link
------------------------------------------------------------
When you have a multi-window application, you might need to
define links between SmartObjects that reside in different
windows. However, you cannot define a link from a
SmartObject in one window directly to a SmartObject in
another window. Instead, you define what's called a pass-
through link.
A pass-through link is a combination of:
1. A link that connects a SmartObject in one window to a
different window.
and
2. A link that connects the second window to a SmartOjbect in it.
Let's say you have a SmartBrowser in window-2 in the above
example. The SmartBrowse is for Orders of Customer and you
want the Customer record to be sent from the Customer Browse
in Window-1 to the Orders of Customer Browse in window-2.
This can be done with a pass-through link. You can set up a
record link in window-1 as follows:
source = Customer Browse (which is contained in Window-1)
target = Window-2
Now, you must set up a record link in Window-2 as follows:
source = Window-2
target = "Orders of Customer" browse (contained in Window-2)
This is called a pass-through link. Now, when you run this
application the customer record will FIRST be passed from the
Customer Browse in Window-1 to Window-2. Then Window-2 will
pass the record to the Orders of Customer Browse that Window-2
contains.
Pass-through links help to keep each window self-contained
so that a window does not have to know anything about the objects
inside other windows. In the above example, the effect is that
the record will be passed from Customer Browse in Window-1 to
the Order of Customer Browse in Window-2 all without either
window 'knowing` anything about the objects within the other.
Progress Software Technical Support Note # 15414