Vous êtes sur la page 1sur 97

Power Forms

Varun Vijayakumar
Page 2
Introduction Why do we need Power Forms
Existing EnterpriseOne Form Types
Find/Browse, Parent/Child Browse, Search/Select, Message
Fix/Inspect, Headerless Detail, Header/Detail
What are the existing form types good for?
Easy to create
Working on one data view (2 for header detail)
Predictable Workflow: Browse first, Edit later.
What are the existing form types not intended for?
Working on multiple, interrelated data views on one screen. Need to
use form interconnects for related tasks.
Power Forms
Power Forms enable a user to work on multiple, interrelated data
views on one screen.


Page 3
Agenda
Overview
Power Forms
Subforms
Hierarchies Control vs. Business View
Subform Component Interface Design
Subform Default Push Buttons
Events
System Functions
Transactions
Security
User Interface Features
Best Practices
Q & A

Overview
Page 5
Why do you care?
Think Power Form if you need to have:
Multiple views on a form
Multiple grids on a form
Multiple tab controls on a form
Tab pages with their own business view
Business views that communicate with each other, and
even react to selection and data changes that occur in
other views on the form
Page 6
Concepts
Power Forms are new EnterpriseOne forms that
can have multiple data views (Subforms) on them.
Only Power Forms can contain Subforms.
Subforms are a new EnterpriseOne object that
represent one data view. It can have one BSVW.
Like a form, it owns the data flows between the GUI
view and the database: browse, insert, update or
delete.
Reusable Sub-forma are Subforms which can be
written once and re-used in other applications and
forms.
Page 7
Concepts
Hierarchy relationship governs how the logic flows
between Subforms and Power Form.
Power Form allows multiple tab controls, to save
real estate.
Designed in FDA
Power Forms will only run on the web.
Power Forms





Page 9
New Power Form Types Creation
Two new form types have been added under the Form
Create menu.

Power Edit
Similar to a Headerless Detail
form, a Power Edit is designed
for forms where the user will
either manipulate data or both
browse and manipulate data.

Power Browse
Similar to a Find Browse form, a
Power Browse is designed to be
used in situations where the user
only intends to browse data. Editing
capabilities are not available on this form.
Page 10
New Power Form Types Changes From Previous Forms
What is different about Power Forms?
Support for multiple tab controls
Support for Subforms
Page 11
New Power Form Types Changes From Previous Forms
What is different about Power Forms?
Support for multiple tab controls
Support for Subforms
Page 12
Runtime Look and Feel: Power Form & Tabs
Page 13
Runtime Look and Feel: Power Form
Page 14
Power Forms - Summary
Two types
Power Browse: streamlined Find/Browse behavior
Power Edit: streamlined Headerless/Detail behavior
Power Forms can contain
All regular EnterpriseOne controls
Subforms
Power Forms can contain a grid and business view.
It has a standard toolbar. Without Subforms, Power
Forms are like regular Find/Browse forms or
Headerless Detail forms.

Subforms





Page 16
Subforms What are they?
Subforms are control containers that provide the power in
Power Forms
They can have their own business view
They can have their own grid
They can have their own set of filter fields
They can be used as tab pages
They can communicate with other
Subforms
You can put as many of them on a
Power Form as you want*
Two main perspectives
To its parent, a Subform is a control.
To the controls it contains, a Subform is a form.

* be careful with this or risk creating a huge mess
Page 17
Subforms Creation
As a standard control
1. Select the form to insert in
2. Select Subform from the Create menu or from the control
toolbar.
3. Drop the newly created Subform where you want it located
on the form.
As tab pages
1. Select the tab control to insert into (like a tab page)
2. Select Subform from the Create menu or from the control
toolbar.
Switching from standard to tab page
1. Drag the Subform and drop it onto a tab control
Switching from tab page to standard
1. Select the Subform tab page you
2. Drag the tab and place the Subform where you want to
locate it on the form
How do you create a Subform?
Page 18
Subforms Set-up
Create Title
Set size and position
Set the business view
Display Options:
Show Subform Header
Collapsable
Set the Subforms parent
(described later)
Develop the Subform Interface
(data structure and mapping
links - described later)
Set Business View Options
Set Transaction Properties
Set-up is very similar to that of a form

Page 19
Subforms Set-up
Create Title
Set size and position
Set the business view
Display Options:
Show Subform Header
Collapsable
Set the Subforms parent
(described later)
Develop the Subform Interface
(data structure and mapping
links - described later)
Set Business View Options
Set Transaction Properties
Set-up is very similar to that of a form

Page 20
Subforms Set-up
Create Title
Set size and position
Set the business view
Display Options:
Show Subform Header
Collapsable
Set the Subforms parent
(described later)
Develop the Subform Interface
(data structure and mapping
links - described later)
Set Business View Options
Set Transaction Properties
Set-up is very similar to that of a form
Page 21
Subforms Set-up
Set up is very similar to that of
a form.
Create Title
Set size and position
Set the business view
Display Options:
Show Subform Header
Collapsable
Set the Subforms parent
(described later)
Develop the Subform Interface
(data structure and mapping
links - described later)
Set Business View Options
Set Transaction Properties
Page 22
Subforms Set-up
Create Title
Set size and position
Set the business view
Display Options:
Show Subform Header
Collapsable
Set the Subforms parent
(described later)
Develop the Subform Interface
(data structure and mapping
links - described later)
Set Business View Options
Set Transaction Properties

Set-up is very similar to that of a form

Page 23
Subforms Set-up
Set-up is very similar to that
of a form
Create Title
Set size and position
Set the business view
Display Options:
Show Subform Header
Collapsable
Set the Subforms parent
(described later)
Develop the Subform Interface
(data structure and mapping
links - described later)
Set Business View Options
Set Transaction Properties

Page 24
Subforms Set-up
Set-up is very similar to that
of a form

Create Title
Set size and position
Set the business view
Display Options:
Show Subform Header
Collapsable
Set the Subforms parent
(described later)
Develop the Subform Interface
(data structure and mapping
links - described later)
Set Business View Options
Set Transaction Properties

Page 25
Subform as a Form: Properties
Subforms can contain all EnterpriseOne controls other
than other Subforms.
No nested Subforms. (Reusable Subforms can contain Subforms)
They can have one Business View attached to it.
They have following default action buttons (details later):
FIND and SELECT if its on Power Browse Form.
FIND,SAVE,DELETE,CLEAR if its on Power Edit Form.
All default actions have runtime logic if there is a Business View
attached to the Subform.
They support two form options:
Update on Business View.
Fetch on Business View.

Page 26
Subform as a Form - Transactions
Three transaction options:
Transaction Disabled: all database calls (business view
and table I/O) are immediately committed.
Include in Parent Transaction: include in Parent Forms
transaction.
Subform Only Transaction: transaction boundary is
limited to the Subform itself.

Page 27
Subform as a control
To its parent, a Subform is like a control.
It has control properties like size and positions
It has settings like visible, enabled.
Following 4 Subform system functions can be called
upon Subform:
Hide Subform
Show Subform
Enable Subform
Disable Subform
Page 28
Subforms Layout Rules in FDA
What are those blue dashes?
A blue hashed line appears
at the top and bottom of a
Subform. This should be used
as a guide for placing buttons.
Initial actions, like find, should
be placed at the top. Concluding
actions, like save, should be
placed near the bottom. This promotes improved usability patterns.
Controls may only exist within the boundary of the Subform.
Cannot make the Subform smaller than the area where child controls
exist.
Restriction includes hidden controls. So, if the Subform will not shrink
to the size you want, make sure there are no hidden controls in the
way of your resize.
Reusable Subform





Page 30
Reusable Subforms What are they?
Reusable Subforms are Subforms which can be
written once and reused in any other PowerForm.
They have the same properties and functionality as a
standard Subform
They are created as their own entity within an application
You can add tab pages to them
Setup is identical to Standard Subforms
Two Types
Edit
Browse
Page 31
Reusable Subforms Creating
Main Menu
1. Select Form Menu Option
2. Select Create Menu Option
3. Choose Reusable Edit or Browse Subform
How do you create a Reusable Subform?
Page 32
Reusable Subforms Template Set-up
Create title
Set size
Set the business
view
Develop the
Subform Interface
(Data Structure &
Mapping Link)
Set Business View
Options
Set Transaction
Properties
Set-up is very similar to that of a Subform

Page 33
Reusable Subforms Template Set-up
General Settings
not available.
Visible
Enabled
Show Subform
Header
Collapsible
They are set at
instance level
Position can not be
changed.
Rest of setup the
same
Compared to Standard Subform

Page 34
Reusable Subforms Create Instance
Main Menu
1.Select Power Form where you want to create an
instance
2.Select Insert Menu Option
3.Select Subform Alias Menu Option
4.Dialog opens to choose App. This is the App where
the Reusable Subform was created. Choose App.
5.It then shows all the Reusable Subforms available
in the chosen App.
6.Select the Reusable Subform to create an instance
of the Subform
Set-up is very similar to that of a form
interconnect

Page 35
Reusable Subforms Create Instance
Page 36
Reusable Subforms Setup Instance
Instance shows grayed out with
Alias on top of Controls
Properties
General Properties:
Visible, Disabled, Show Subform
Header,Collapsable
Position
Instance Property:
Load Text By Instance: whether to
load glossary text based on the
system code of the instance
application or the system code of
the reusable Subform template
application.
Properties defined by the template
and can not be changed at
instance level:
Title, Size
Business View and Business View
Options
Transaction Options
Data Structure
Page 37
Reusable Subforms Template Warnings
A Reusable Subform is created one time - Template.
It can be reused in other locations - Instances.
The creation point is the ONLY place meta data is stored for
the Reusable Subform.
Instances of Reusable Subforms point back to meta data of
Template.
Implications:
If anyone makes changes to the Template Reusable Subform, then
those changes will automatically propagate to all instances of the
Reusable Subform.
Be careful when changing Reusable Subforms as you may affect other
applications unknowingly.
Subform Hierarchies
Control vs. Business View






Page 39
Subforms Parenting and the Business View Hierarchy
There are now two hierarchies in FDA

1. Control Hierarchy
The current hierarchy where controls are contained in other
controls.
Form
Button
Button
Grid
Grid Column Grid Column
Tab Control
Tab Page Subform
Page 40
Subforms Parenting and the Business View Hierarchy
There are now two hierarchies in FDA
2. Business View Hierarchy
The business view hierarchy allows a developer to connect
business view containers (forms and Subforms) to each other.
Forms and Subforms can only interact with their parent and their
children. They dont know about others that exist on the form.
This hierarchy should be created based on relationships between
business views.
Power Form
Subform Subform
Subform Subform
Subform
Subform Subform
Limited to
three levels
deep
Page 41
Subforms Parenting and the Business View Hierarchy
Business View Hierarchy Details
Power Form is the top of the hierarchy.
Tree Structure
Each Subform must have one parent.
A parent can have multiple children.
Up to three levels deep.


Power Form
Subform Subform
Subform Subform
Subform
Subform Subform
Limited to
three levels
deep
Page 42
Subforms Access and the Business View Hierarchy
Data flows between parent and child (bi-directional) in the
business view hierarchy.
No direct data flow among siblings.
No direct data flow from PowerForm to GrandChild Subform.
Data flows between parent and child through a common
interface called Mapping Links. (details later).
Parent can not access child Subforms internal controls.
Power Form
Subform D Subform A
Subform B Subform C
Subform E
Subform F Subform G
Power Form can see:
Subform A
Subform D
Subform E
Page 43
Subforms Access and the Business View Hierarchy
Data flows between parent and child (bi-directional) in the
business view hierarchy.
No direct data flow among siblings.
No direct data flow from PowerForm to GrandChild Subform.
Child can not access parent forms internal controls.

Power Form
Subform D Subform A
Subform B Subform C
Subform E
Subform F Subform G
Subform D can see:
Power Form
Page 44
Subforms Access and the Business View Hierarchy
Data flows between parent and child (bi-directional) in the
business view hierarchy.
A Subform can only communicate with its parent or its
children. ER on the Subform, or its subcontrols, does not
know that the other Subforms exist and related information
will not appear in available objects.

Power Form
Subform D Subform A
Subform B Subform C
Subform E
Subform F Subform G
Subform A can see:
Power Form
Subform B
Subform C
Page 45
Subforms Parenting and the Business View Hierarchy
The business view hierarchy is created through Subform
parenting
By default, new Subforms will always be parented to the Power Form
To modify the parent, select the parent from the Subform parent
combobox in
the property dialogs
Only valid Subforms
will appear for
selection
Warning: Changing the
parenting after mapping
links have been set or
event rules have been
developed could cause
your application to
cease working.
Page 46
Hierarchy: another nice picture
Power Form Hyper items: OK, FIND,SELECT
Header
&
Grid
Child
Subform 1
Grandchild
Subform 2
Child
Subform 2
Grandchild
Subform 1
Subforms
Designing with an Interface





Page 48
Subforms Data Structure Interface
Subforms are self-contained elements (Controls, ER Objects) within it
cannot be accessed by other Subforms or the form.
Subforms communicate with its parent or children through interface.
Each Subform must present an interface that can be used to pass data into
and out of the Subform.
The interface is
presented as a data
structure used in a fashion
similar to form
interconnects.
When developing event
rules, the data structure
items will show up as
variable type Subform
Interconnect or SI.
Page 49
Subforms Data Structure Interface
The Subforms data structure interface is built using
the standard data structure designer.
Page 50
Subforms - Mapping Link
Mapping link is the data communication channel between
parent and child.
Each parent/child pair has one mapping link defined.
Mapping link contains items defined in the child forms data
structure.
On the parent side, any ER object can be used for a mapping link
item.
On the child side, its a new ER object type called Subform
Interconnect (SI).
Three Directions: Parent to Child, Child to Parent, or both.
Usage similar to Form Interconnect.
One difference is a Subform has SI ER objects instead of FI ER
objects.
Another difference is FI objects are assigned once, when the form is
started; SI objects can be updated any time the parent form is
changed.
Page 51
Subforms Set up Mapping Links
To map a parents variables to a child Subform, complete
the following steps.
1. Select the parent you want to setup and open it property dialog
2. Select the child Subform to map
3. Choose and element of the childs interface
4. Select a variable and
set it.
5. Choose a mapping
direction
6. Repeat until done
Page 52
Subforms Set up Mapping Links
To map a parents variables to a child Subform, complete
the following steps.
1. Select the parent you want to setup and open it property dialog
2. Select the child Subform to map
3. Choose and element of the childs interface
4. Select a variable and
set it.
5. Choose a mapping
direction
6. Repeat until done
Page 53
Subforms Set up Mapping Links
To map a parents variables to a child Subform, complete
the following steps.
1. Select the parent you want to setup and open it property dialog
2. Select the child Subform to map
3. Choose and element of the childs interface
4. Select a variable and
set it.
5. Choose a mapping
direction
6. Repeat until done
Page 54
Subforms Set up Mapping Links
To map a parents variables to a child Subform, complete
the following steps.
1. Select the parent you want to setup and open it property dialog
2. Select the child Subform to map
3. Choose and element of the childs interface
4. Select a variable and
set it.
5. Choose a mapping
direction
6. Repeat until done
Page 55
Subforms Set up Mapping Links
To map a parents variables to a child Subform, complete
the following steps.
1. Select the parent you want to setup and open it property dialog
2. Select the child Subform to map
3. Choose and element of the childs interface
4. Select a variable and
set it.
5. Choose a mapping
direction
6. Repeat until done
Subform New Button
Types
Access Standard Runtime Functionality







Page 57
Subform New Button Types
Subforms do not have toolbars.
To access standard hyperitem functionality (OK,
Save, Delete, Find, etc), use Push Buttons.
New Push Button type is created for each standard
hyperitem. They are called Default Push Buttons.
You can place the default push buttons anywhere
on the Subform.
You can have one of each default button types. (one
Save button, one Delete button, etc).
Default push buttons will operate on the Subforms
business view. (They may not work if the Subform
does not have a business view).
Page 58
New Button Types Setup
Create a push button on Subform.
Open Push Button Properties dialog.
1. Turn on Default
Pushbutton
2. Select from the available
button types
3. If, Other is selected,
choose whether or not the
mapping links should be
updated when the button
is pressed
Page 59
New Button Types Setup
Create a push button on Subform.
Open Push Button Properties dialog.
1. Turn on Default
Pushbutton
2. Select from the available
button types
3. If, Other is selected,
choose whether or not the
mapping links should be
updated when the button
is pressed
Page 60
New Button Types Setup
Create a push button on Subform.
Open Push Button Properties dialog.
1. Turn on Default
Pushbutton
2. Select from the available
button types
3. If Other is selected,
choose whether or not the
mapping links should be
updated when the button
is pressed
Page 61
New Button Types Default Buttons
For Embedded Subforms on Power Browse and Browse
Reusable Subforms:
Two default button types: FIND, SELECT.
FIND behaves like a Find Browse FIND.
SELECT behaves like a Find Browse SELECT.
For Embedded Subforms on Power Edit and Editable
Reusable Subforms:
Four default button types: FIND,DELETE, SAVE and CLEAR.
FIND behaves like a Headerless Detail FIND. If there is no grid on
Subform, web runtime will fetch one record like on a Fix Inspect
Form.
DELETE behaves like a Headerless Detail DELETE.
SAVE behaves like a Headerless Detail OK if the Subform has a
grid; it behaves like a Fix Inspect OK if the Subform doesnt have a
grid.
CLEAR clears all data fields and removes all data rows.

Page 62
New Button Types Type Other
If you have a custom button, you can decide
whether to load mapping links when it is pushed.
If load mapping link, runtime will first update the mapping
links and then execute Button Clicked and Post Button
Clicked events.
Otherwise, runtime simply executes Button Clicked and
Post Button Clicked events.
Events
Subforms and Power Forms






Page 64
Events Power Browse
Events supported on Power Browse Form.
Form Events
Dialog is Initialized
Post Dialog is Initialized
End Dialog
Grid/View Events
Grid Record is Fetched
Write Grid Line-Before
Last Grid Record Has Been Read
Write Grid Line-After
Row is Selected
Subform Events
Notified By Child
Page 65
Events Power Edit
Events supported on Power Edit Form
Form Events
Dialog is Initialized
Post Dialog is Initialized
End Dialog
Grid/View Events
Clear Screen Before Add
Grid Record is Fetched
Write Grid Line-Before
Last Grid Record Has Been Read
Add Record to DB Before
Add Record to DB After
Update Record to DB Before
Update Record to DB After
Write Grid Line-After
Clear Screen After Add
Row is Selected
Subform Events
Notified By Child

Page 66
Events Subforms
Events supported on Subform.
Grid/View Events
Grid Record is Fetched
Write Grid Line-Before
Last Grid Record Has Been Read
Add Record to DB Before
Add Record to DB After
Update Record to DB Before
Update Record to DB After
Write Grid Line-After
Row Is Selected
Subform Events
Notified By Child
Notified By Parent
Tab Page Events
Tab Page is Selected
Tab Page is Initialized
Page 67
Events Notified By Child and Notified By Parent
Notified By Child event is provided for Subform
and Power Form. Its triggered when a child
Subform calls system function Notify Parent.
Notified by Parent event is provided for Subform.
Its triggered when a Subforms parent calls
system function Notify Child.
Page 68
Event Row is Selected
This is a new web only grid event. It is only available for
grids on Subforms or Power Forms.
In order to use this event effectively, the web server
interactivity setting should be set to high in jas.ini.
User single click the row header (i.e., select a row). ER
Row Is Selected is executed by runtime engine.
User double clicks the row header.
Single Select Grid.
If row is not selected. Select the Row, run ER Row Is Selected, run
Select button is clicked.
If row is selected. Run Select button is clicked.
Multiple Select Grid.
Select the row, unselect rest of the rows.
If the last previously selected row is different, execute ER Row is
Selected.
Run Select button is clicked.
System Functions
New Functions for a New World






Page 70
New System Functions
A new category was created for
Subform Functions
Page 71
New System Functions- GUI Interaction
The following functions allow you to manipulate
graphical aspects of a Subform
Enable Subform
Allows a user to interact directly with the controls on a Subform.
Disable Subform
Disallows user interactions with the controls on a Subform.
Hide Subform
Hides the Subform.
Show Subform
Displays the Subform for the user to see.
Collapse Subform
Displays the Subform title only, hides all controls.
Expand Subform
Displays the Subform in its entirety.


Page 72
New System Functions Data & Logic Flow
The following functions will trigger events on other
Subforms or the Parent Form.
Notify Child
Causes the Notified by Parent event to run on the selected child
Subform. Use this function when you want to notify a child about changes
made to data in the mapping link.
Example usage: selection has changed on a grid and the child Subforms
should update accordingly.
Notify Parent
Causes the Notified by Child event to be run on the parent Subform.
Use this function when you want to notify the parent about changes made
to data in the mapping link.
Example usage: user has modified data in the Subform that the parent is
displaying.
Trigger Default Child Action
Causes a specified action, like find, to run on the selected Subform.
Runtime processing is exactly the same as user clicks on the default
button.

Page 73
New System Functions Data & Logic Flow
The following functions assist the data and logic flow
between parent and child:
Update Parent
Causes the data in the mapping link to parent to be updated.
Get Sub Form ID
Retrieves the control ID of the current Subform. This ID is what you
see at the bottom right corner of the FDA screen.
Example Usage: Set a mapping link variable to this value to allow
the parent to know which Subform called Notify Parent


Page 74
New System Functions Data & Logic Flow Summary
Down
Trigger Default Child Action
Notify Child
Up
Notify Parent
Update Parent

Page 75
What exactly happenes at runtime?
Trigger Default Child Action System Function. (same
process happens if user presses the default button
directly.)
First runtime loads mapping link values from parent ER objects into
child form SI objects.
Then runtime executes Button Clicked for the default button.
Then runtime executes default logic on the business view. (Find,
Select, Save, Delete or Clear).
Last runtime executes Post Button Clicked for the default button.
Notify Child System Function.
First runtime loads mapping link values from parent ER objects into
child Subform SI objects.
Then runtime runs ER Notified by Parent for the child Subform.
Page 76
What exactly happened at runtime?
Update Parent system function
Runtime loads mapping link values from child Subform SI
objects into parents ER objects.
Remember, only SI can be passed back to parent.
Notify Parent system function
Runtime executes ER Notified by Child on the parent.

Page 77
Example: Logic Flow From Parent To Child
Scenario: whenever user selects a row on
parent, child form needs to re-find
First make the grid control on parent single select.
Second, In ER Row is Selected for the parent
grid control, call Trigger Default Child Action
(Child ID, FIND ID).
Page 78
Example: Logic Flow from child to parent
Scenario: when a particular child Subform is
saved, parent needs to re-find.
ER Post Button Clicked of the child Save button:
1. Call Get Sub Form ID.
2. Assign the Subform id returned from the system function to an
SI object called Subform ID.
3. Call Update Parent system function to copy the SI Subform
ID object into a parent ER object (assume it is
frm_varSubformID).
4. Call Notify Parent system function.
ER Notified By Child for the parent
1. Check ER object frm_varSubformID to see if it is the particular
Subform that sent the notification.
2. If so, call PushButton(Find)
Page 79
Cascade Logic Control
Cascade Down
Call the system function Trigger Default Child Action or Notify
Child on a child Subform.
Child Subform, can then call this system function again on its child
Subforms.
Cascade Up
Call system function Notify Parent from a grandchild Subform.
Child Subform, can then call this system function again on its
parent.
Application designer can combine the above system
functions and flow logic between Subforms.
Page 80
New System Functions - Errors and Warnings
The following functions retrieve error and warning
information from a Subform
Get Error Count (Subform ID)
Returns the number of errors of a given child Subform or the current
Subform.
The count returned includes the errors found on Subforms beneath that
of the selected Subform in the hierarchy.
Get Warning Count (Subform ID)
Returns the number of warnings of a given child Subform or the current
Subform.
The count returned includes the warnings found on Subforms beneath
that of the selected Subform in the hierarchy.
Page 81
OK on Power Edit
OK on Power Edit will validate the data based on
the Power Form Business View. If there are no
errors on the Power Form , runtime will save the
data into the Power Forms business view,
regardless of if there are errors on child Subforms or
not. This is because OK is only applied to the Power
Form Business View.
However, by using the getErrorCount system
function, application designer can stop the OK
process by setting errors on a field on Power Form
if getErrorCount returns at least one error.
Page 82
Complex logic examples
OK click example.
In OK button click on Power Edit form, calls Trigger
Default Child Action (SAVE) on all its children, and in
Save button is clicked on its child, calls this again on
the grandchildren. Use getErrorCount and/or
getWarningCount to do validation before saving data.
This not only updates the BSVW associated with Power
Form, but also updates the BSVWs associated with
Subforms.
Infinite loop example. BE CAREFUL.
Call Notify Parent on Find button is clicked on a
Subform, then call Trigger Default Child Action(Find)
from Notified by Child ER. This forms an infinite loop.
Transactions
How do you protect your data
in a Subform world?



Page 84
Transaction Processing
Power Edit
Transaction checkbox
Same meaning as other form types
Scoped to OK processing
Can be extended to Business Functions, Table I/O, other
Forms
Subform
Scoped to Save processing
Can be extended to Business Functions, Table
I/O, forms
Three transaction styles

Page 85
Transactions
Subforms include three transaction styles
Transaction Disabled
Include in Parent Transaction
Subforms Only Translations
Parent
Form or Subform
Subform
Child Subform
Page 86
Transactions
Subforms include three transaction styles
Transaction Disabled
Include in Parent Transaction
Subforms Only Translations
Parent
Form or Subform
Subform
Child Subform
Example 1:
Parent with transactions on
Subforms only transactions set
transaction
boundary
Page 87
Transactions
Subforms include three transaction styles
Transaction Disabled
Include in Parent Transaction
Subforms Only Translations
Parent
Form or Subform
Subform
Child Subform
Example 1:
Parent with transactions on
Include in Parent Transaction set
transaction
boundary
Page 88
Security
Power Form has the same existing security types as
other form types: Action, Exit, Application,
Column, tab, PO, row, exclusive-application.
Subform supports only Column security.
4 levels: app, form(*), table and *all.
3 user categories: User, Group and *public.
*: since Subform is not an independent form, cant
set column security at Subform level.






User Interface Features
Page 90
User Interface Features : Overview
Multiple tab controls on Power Form.
Tab control on Subform.
If Subform is inside a tab page, it can not have tab control.
Can get around this by putting an embedded Subform in a
Reusable Subform and then putting a tab control on the
embedded Subform. Then if you put the Reusable Subform
inside a Tab Page on a Power Form you can have nested tabs.
You can have more than one Subform in a tab page
Import/Export features are redesigned to attach to grid,
not form.
Maximize grid is supported for all grids on Power
Forms.
Rest of GUI should remain similar to current Interactive
HTML client.

Page 91
User Interface Features: Subform
There are no toolbars or form/row exits on
Subforms.
User has to explicitly add default action buttons on
Subform.
Default actions can be placed anywhere on
Subform. For example, Save can be placed just
below the grid.
Page 92
User Interface Features : Error and Warning
Error (red) and Warning (yellow).
All Power Form errors/warnings plus Subform
errors/warnings are shown from the error button on
the Power Form.
Click the error button to show the details of all
errors.
Subform errors and warnings include the Subform
name to help user identify where the errors and
warnings come from.

Page 93
User Interface Features : Scroll Bars
Vertical and Horizontal scroll bars on Power Form.
Vertical and Horizontal scroll bars on grids.
There are NO scroll bars on Subforms. You have to
display all controls within a Subform.
If there are too many tab pages(6), the tab pages
become a dropdown in HTML client.
Maximize grid works on all grids on Power Form.
This provides ways to help users to view single data
view.
Page 94
Miscellaneous Changes in the Tools
Comparison mode works with Power Forms
Form copy requires Subforms to be copied individually
Tab Order menu item moved to the Layout menu
The Power Form has a tab order, in which each Subform
is considered a tab stop.
Each Subform has its own tab order for all the controls in
its context.
New Tab Order toolbar
Lets you choose which tab order to set, e.g. Power Form,
SF1, SF2..
ER Debugger is available for Power Forms






Best Practices
Page 96
Usage of Power Form
1. Use the best form type for your task.
1. Do use Power Form when your application requires
multiple data views on one screen.
2. Do not use Power Form if another form type is a better
fit.
2. Do not over-crowd a Power Form.
Keep the balance between:
Maintaining multiple data views and
Easy of use.
3. Provide a good info-flow and action-flow on the
Power Form. (User needs directions when faced
with a complex screen!)
4. Design with the users need in mind.









Q&A

Questions???

Vous aimerez peut-être aussi