Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne –...

110

Transcript of Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne –...

Page 1: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer
Page 2: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Kendra Barton Principal Software Engineer

JD Edwards EnterpriseOne

Page 3: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Developing Powerform-Based

JD Edwards EnterpriseOne

Applications

Page 4: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Agenda • Speaker Introduction

• Assumptions

• Web Development Client Architecture

• Powerforms & Subforms • Problem Space & Terms

• Powerforms – properties/features

• Reusable & Embedded Subforms – properties/features

• Best Practices

• “Converting” Existing Forms

• Portlets & Wizard Forms

• Summary

• Questions

Page 5: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Speaker Introduction

• 11 years with EnterpriseOne – Runtime

• Three companies

• Six product names

• Tools perspective

• Customer is Application Development

• Business knowledge = none

• Hands On will be simple

• Usability Engineering knowledge = little

• All recommendations are from UE group

Page 6: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Assumptions

• Familiarity with E1 Windows Platform

• Familiarity with E1 Windows Development

• Object Management Workbench

• Design Objects – Data Dictionary, Tables,

Business Views, Forms

• Design Tools – Forms Design Aid

• Familiarity with E1 Form Types

Page 7: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Web Development Client

Architecture

Page 8: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

App

Specs

Serialized

Specs

Web Development Client Architecture

EnterpriseOne Windows Client

Local Web

OMW

Solution

Explorer

Design

Tools

Local

Business

Function

Execution

Local Application Server

Web Runtime Engine

HTML Browser(s)

Page 9: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

App

Specs

Serialized

Specs

Web Development Client Architecture

EnterpriseOne Windows Client

Local Web

OMW

Solution

Explorer

Design

Tools

Local

Business

Function

Execution

Local Application Server

Web Runtime Engine

HTML Browser(s)

Page 10: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

App

Specs

Serialized

Specs

Web Development Client Architecture

EnterpriseOne Windows Client

Local Web

OMW

Solution

Explorer

Design

Tools

Local

Business

Function

Execution

Local Application Server

Web Runtime Engine

HTML Browser(s)

Page 11: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

App

Specs

Serialized

Specs

Web Development Client Architecture

EnterpriseOne Windows Client

Local Web

OMW

Solution

Explorer

Design

Tools

Local

Business

Function

Execution

Local Application Server

Web Runtime Engine

HTML Browser(s)

Dynamic

Generation

Page 12: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

App

Specs

Serialized

Specs

Web Development Client Architecture

EnterpriseOne Windows Client

Local Web

OMW

Solution

Explorer

Design

Tools

Local

Business

Function

Execution

Local Application Server

Web Runtime Engine

HTML Browser(s)

Dynamic

Generation

Page 13: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab Machines

• Web Development Client plus

• Enterprise Server

• Security Server

• Database Server

• Deployment Server

• Same image Sales uses for Customer

demonstrations

• Application release 8.11, Tools release 8.94

Page 14: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerforms & Subforms

Page 15: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Problem Space • Previous EnterpriseOne Form Types

• Find Browse, Parent/Child Browse, Search Select, Message

• Fix/Inspect, Headerless Detail, Header Detail

• These form types are good for: • Ease of creation

• Working on one data view (2 for header detail)

• Predictable Workflow: Browse first, Edit later.

• These form types are not intended for: • Working on multiple, interrelated data views on one screen.

• Need to use form interconnects for related tasks.

• Powerforms • Powerforms enable a user to work on multiple, interrelated

data views on one screen.

Page 16: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Problem Space

• No good answer for the complex use case

• Separate forms had to be created when an app

needed

• Multiple views of interrelated data

• Multiple grids

• Multiple tab controls

• Tab pages with their own business view

• Business views that communicate, and even react to user

actions that occur in other views

• Existing form types too rigid

Page 17: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Supporting the Complex Case

• A new Web-only form type to solve all the

issues in the problem space – Powerform

• Powerform itself is not complex

• Power Browse – similar to Find Browse

• Power Edit

• With grid – similar to Headerless Detail

• Without grid – similar to Fix Inspect

• Supports the complex cases because only

Powerforms can contain Subforms

Page 18: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Subforms

• A new control/form hybrid

• Form-like

• Associated with a business view

• Owns the data flow between the UI and the database –

fetch, insert, update, delete

• Defined data structure to pass values in/out

• Can contain any control types

• Control-like

• Contained by a form

• Takes up real estate

• System functions to dynamically modify attributes/actions

Page 19: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

A Powerform example – SOE

Page 20: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Approach

• A simple example

• Address and Phone records

• Build a Powerform and Subforms feature by

feature

• Powerform – browse Address Book grid

• Subform – Address Book (update fields)

• Buttons, Structured communication, Functions,

Layout, Transaction boundaries, and more

• Reusable Subform – Phones (update grid)

Page 21: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Create App

• Run Solution Explorer (activconsole.exe)

• Log in as PSFT/PSFT on lab machines

• Fast path to OMW

• Add

• Interactive Application - OK

• Object name – P55PWRFM

• Product Code/Product System Code – 55

• OK

• Design Tools tab

• Start Forms Design Aid

• OK

Page 22: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – PowerEdit form

• Form > Create > PowerEdit

• Description – Address Book PowerEdit

• Business View – V0101JB Address Book Master

F0101/Address by Date F0116

• Enable In-Your-Face-Errors

• Form > Menu/Toolbar Exits

• Add Find

• Remove OK

Page 23: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – PowerEdit grid columns

• Insert > Grid

• Add grid columns • F0101.AN8 – Address Number

• F0101.ALPH – Alpha Name

• F0116.CTY1 – City

• F0116.ADDS – State

• Set grid property to disable (read only)

• Set grid property for „No adds on update grid‟

• Disable Form property „Update on Grid Business View‟

Page 24: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Embedded Subform

• Insert > Subform

• Description – Address Book Detail

• Business View – V0101JB Address Book Master

F0101/Address by Date F0116

• Create the Subform Data Structure with

• AN8 – Address Number

• CTY1 – City

• ADDS - State

Page 25: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Embedded Subform fields

• Add text fields

• F0101.AN8 – Address Number

• Disable Next Numbers

• F0101.ALPH – Alpha Name

• F01161.ADD1 – AddressLine1

• F01161.ADD2 – AddressLine2

• F01161.CTY1 – City

• F01161.ADDS – State

• F01161.ADDZ – Zip Code

Page 26: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Subform buttons

• Insert > Button

• Open the button properties to make this Find

• Repeat for Save

• Set tab sequence

Page 27: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Subform buttons

• Subforms have buttons, no toolbar

• There is a Button substitute for each standard toolbar

item

• Buttons can be „standard‟ AKA „default‟

• Save (think OK)

• Find

• Delete

• Clear

• Each Subform has at most one of each standard type

• Available types differs for Browse and Edit

Page 28: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Interrelated Data

• There is a hierarchical relationship between

Powerform and the Subforms it contains

• Powerforms have children Subforms

• A Subform has a parent and may have siblings

and children (grandchildren)

• All communication is up or down the hierarchy

• Hierarchical (logical) and physical relationship

are not necessarily identical

Page 29: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

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 form‟s

data structure.

• Parent (left) side – any ER object can be mapped

• Child (right) side – Subform‟s data structure referred to in

ER as “SI” (Subform Interconnect)

• Three Directions: Parent to Child, Child to Parent, or both.

• Similar to a Form Interconnect

Page 30: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Hierarchy & Mapping Link

• Open Subform properties to see the default

assignment of its parent

• On the Powerform properties‟ Mapping Link

tab connect as follows

Page 31: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – ER to Execute Mapping Link

• On the Powerform grid Row is Selected event

• On the Subform Find Button Clicked event

Page 32: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – ER to Execute Mapping Link

• On the Subform Save Button Clicked event

Page 33: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Communication

Powerform

Child Subform

City Add Num State

Page 34: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Communication

Powerform

Child Subform

Row is Selected ER

{

Trigger Default Child Action(child, Find)

}

City Add Num State

Page 35: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Communication

Powerform

Child Subform

Row is Selected ER

{

Trigger Default Child Action(child, Find)

}

City Add Num=1 State

Page 36: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Communication

Powerform

Child Subform

Row is Selected ER

{

Trigger Default Child Action(child, Find)

}

City Add Num=1 State

Find Button Clicked

{

BC Address Num = SI Address Num

}

Page 37: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Powerform Communication

Child Subform

Add Num City State

Page 38: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Powerform Communication

Child Subform

Add Num

Save Button Clicked

{

SI City = FC City

SI State = FC State

Update Parent

}

City State

Page 39: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Powerform Communication

Child Subform

Add Num

Save Button Clicked

{

SI City = FC City

SI State = FC State

Update Parent

}

State = CO City = Den

Page 40: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

ER to Execute Mapping Link

• Parent to child (down) just before • Trigger Default Action for standard buttons

• Notify Child System Function triggers “Notified by Parent” event on the child

• Subform Functions

• Child to parent (up) • Update Parent System Function

• Often used just prior to Notify Parent System Function which triggers “Notified by Child” event on the parent

Page 41: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Reusable Subform

• Form > Create > Reusable Edit Subform

• Description – Phones

• Business View – V0115A Phone Number Update

• Create the Subform Data Structure with

• AN8 – Address Number

Page 42: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Reusable Subform fields

• Insert > Grid

• Add grid columns

• F0115.AN8 – Address Number

• Disable Next Numbers

• F0115.IDLN – LineNumberID

• F0115.PHTP – PhoneNumberType

• F0115.AR1 – PhoneAreaCode1

• F0115.PH1 – PhoneNumber

• Add Address Book equals filter field

Page 43: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Subform buttons

• Insert > Button

• Open the button properties to make this Find

• Repeat for Save

Page 44: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Insert Subform Alias

• Insert > Subform Alias • Search for lab application P55PWRFM

• Open Subform Alias properties • Change the parent to be the Address Book Detail

Subform

• On the Address Book Detail‟s Mapping Link tab

• FC Address Number > mnAddress Number

• Note that some properties are set on the Alias, and some are set on the Subform itself

Page 45: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – ER to Execute Mapping Link

• On the AB Detail Find Post Button Clicked

event

• On the Phones Find Button Clicked event

Page 46: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Communication Powerform

Child Subform

City Add Num State

Grandchild Subform

Add Num

Page 47: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Communication Powerform

Child Subform

Row is Selected ER

{ Trigger Default Child Action(child, Find) }

City Add Num State

Grandchild Subform

Add Num

Page 48: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Communication Powerform

Child Subform

Row is Selected ER

{ Trigger Default Child Action(child, Find) }

City Add Num=1 State

Grandchild Subform

Add Num

Page 49: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Communication Powerform

Child Subform

Row is Selected ER

{ Trigger Default Child Action(child, Find) }

Find Button Clicked

{ BC Address Num = SI Address Num }

City Add Num=1 State

Grandchild Subform

Add Num

Page 50: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Communication Powerform

Child Subform

Row is Selected ER

{ Trigger Default Child Action(child, Find) }

Find Button Clicked

{ BC Address Num = SI Address Num }

City Add Num=1 State

Find Post Button Clicked

{ BC Address Num = SI Address Num }

Grandchild Subform

Add Num

Page 51: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Communication Powerform

Child Subform

Row is Selected ER

{ Trigger Default Child Action(child, Find) }

Find Button Clicked

{ BC Address Num = SI Address Num }

City Add Num=1 State

Find Post Button Clicked

{ Trigger Default Child Action(child, Find) }

Grandchild Subform

Add Num=1

Page 52: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Communication Powerform

Child Subform

Row is Selected ER

{ Trigger Default Child Action(child, Find) }

Find Button Clicked

{ BC Address Num = SI Address Num }

City Add Num=1 State

Grandchild Subform

Add Num=1

Find Button Clicked

{ FC Address Num = SI Address Num }

Find Post Button Clicked

{ Trigger Default Child Action(child, Find) }

Page 53: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab - Subform Functions

• Part of a Subform‟s “interface”

• With the Reusable Subform highlighted

• Form > Create > Function

• Add ER from the tree on the left hand side

• From an event on the Embedded Subform

• Add the „Call Function‟ system function

Page 54: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Reusable Subforms as Parents

• This lab has a Reusable Subform as a child

• When a Reusable Subform is the logical parent but not the physical parent:

• ER cannot reference children by name

• Trigger Default Child Action can only broadcast messages to <All Children>

• Call Function cannot introspect to the child‟s functions

• When a Reusable Subform is both the logical and physical parent:

• ER can reference children by name

Page 55: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Transaction Processing (TP)

• Enabling Powerform TP

• Creates and commits/rolls back a Manual

Commit transaction during OK processing

• The TP boundary can be extended to include

specific ER lines

• The TP boundary can be extended to include

subforms

Page 56: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Transaction Processing (TP)

• Enabling Subform TP

• Subforms can create their own TP boundary

• Subforms can inherit their parent‟s TP boundary,

if any

Page 57: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Transaction Processing

• On the Address Book Detail Subform set the

subform only option

• On the Phones Subform set the Include in

Parent Transaction option

• From the Address Book Detail Save Post

Button Clicked event

Page 58: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Checking Subform Errors

• Only errors on the current Form/Subform will cause

Save processing to halt

• To make errors from a child Subform halt the current

Form/Subform Save process, use system function

„Get Error Count‟

Page 59: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Page 60: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Trigger Default Child Action – i.e. Find, Save

Find Find

Page 61: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Trigger Default Child Action – i.e. Find, Save

Find Find

Page 62: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Trigger Default Child Action – i.e. Find, Save

Find Find

Page 63: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Trigger Default Child Action – i.e. Find, Save

Find Find

Page 64: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Trigger Default Child Action – i.e. Find, Save

Find Find

Page 65: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Call Function (child, functionName)

Page 66: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Call Function (child, functionName)

Page 67: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Call Function (child, doSomeWork)

doSomeWork

{

}

Page 68: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Notify Child (child(ren))

Page 69: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Notify Child (child(ren))

Page 70: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Notified by Parent

{

}

Notify Child (child(ren))

Notified by Parent

{

}

Page 71: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Page 72: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Assign to SI

Page 73: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Assign to SI

Update Parent

Page 74: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Notified by Child

{

Call Function (child2, doSomeWork)

}

Assign to SI

Update Parent

Notify Parent

Page 75: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform

Child Subform 1

Powerform Communication

Child Subform 2

Notified by Child

{

Call Function (child2, doSomeWork)

}

Assign to SI

Update Parent

Notify Parent

doSomeWork

{

}

Page 76: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Lab – Controlling UI

• Open Address Book Detail Subform

properties

• Check Collapsible

• Open Phones Subform (Alias) properties

• Uncheck Show Subform Header

• Open Powerform grid‟s properties

• Check Reclaim Whitespace

Page 77: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform/Subform Grids

• For Powerforms/Subforms the size at Design

time is a maximum size

• For all other form types the size at Design

time is a minimum size

• Only Powerform/Subform grids can „reclaim

whitespace‟

• Reclaiming whitespace effects both the

container‟s size and all controls below the grid

Page 78: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Best Practices

Page 79: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Layout

Powerform (Level 0)

Child Subform (Level 1)

<Header> and/or <Detail>

(Level 0)

Page 80: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform (Level 0)

Child Subform (Level 1)

Powerform Layout

<Header> and/or <Detail>

(Level 0)

Grandchild Subform (Level 2)

Page 81: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform (Level 0)

Child Subform 1 (Level 1)

Powerform Layout

<Header> and/or <Detail>

(Level 0)

Child Subform 2 (Level 1)

Page 82: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform (Level 0)

Child Subform 1 (Level 1)

Powerform Layout

<Header> and/or <Detail>

(Level 0)

Child Subform 2 (Level 1)

Page 83: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform (Level 0)

Child Subform (Level 1)

Powerform Layout

<Header> and/or <Detail>

(Level 0)

Grandchild

Subform 1 (Level 2)

Grandchild

Subform 2 (Level 2)

Page 84: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Powerform Layout

• The most important information should visually

precede the less important information

• Presentation of information should follow the

sequence in which the user needs it - it should relate

to the user‟s mental model for the task

• Common information should be in consistent locations

across the UI

• Frequently needed or referred to information should

be in the most prominent locations across the UI

Page 85: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Toolbars

• Applications with a hierarchical layout of

subforms that have push buttons should not

use the toolbar

• Hide the toolbar and provide form and

subform level push buttons instead

• Do not use a combination of toolbar actions

and repeated buttons together

Page 86: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Form/Row Exits

• All “Form Exits” should be placed within the

form/subform boundary above all form content

• All “Row exits” should be placed below the

grid within the form/subform boundary

• When there are more than 4 Form/Row exits,

place them in a drop down menu.

Page 87: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Required Fields

• Users need to know that certain fields are

mandatory to complete a task and to avoid

errors

• Turn on the “Required Entry” option in the edit

field property in FDA

• Connect the static text to the edit field

Page 88: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Grids

• Do not display more than three grids on a page

• Place grids in the order the user will view and interact

with the information

• If more than one grid is displayed, limit the number of

visible rows to five on each grid

• Limit the number of grid columns on the page

• If a grid requires more columns than can fit, prioritize

and create grid formats

• Try to limit the number of grid columns to eight

• Display the most critical, frequently used columns first

Page 89: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Command Buttons

• Users need consistent command buttons

when working with a multiple grid page

Button Behavior

Save Changes Saves changes and keeps form open

Save and Continue Save and go on to the next step

Save and Add New Save and add another record

Save and Close Save changes and close the form

Cancel Discards changes and closes the form

Close Closes the form

Undo Changes Reverts to the state of the last save

Page 90: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

“Converting” Existing Forms

Page 91: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

“Converting” Existing Forms

• There is no magic. No silver bullets.

• Examine Form and Row Exits for Subform

conversion candidates

• Prioritize the user tasks each form provides

• A Subform should replace the most important

and most frequently used tasks

• Strive for simplicity in subforms – retain

Form/Row Exits for remaining tasks

Page 92: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Portlets and Wizards

Page 93: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Wizards

• A new form type, built on the backbone of Powerforms

• Collection of subforms, arranged in sequence

• Tool provides

• Navigation buttons

• Left hand navigation/task list

• Progress bar

• Transaction processing to commit all subforms together

• Application developer specifies

• Task sequence – can be dynamically changed

• Partial save logic – when wizard has not completed

Page 94: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Wizards

Page 95: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Wizards

Page 96: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Wizards

Page 97: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Wizards

Page 98: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Wizards

Page 99: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Wizards

Page 100: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Wizards

Page 101: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Wizards

Page 102: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Wizards

Page 103: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Portlets

• Portal Content produced from Forms Design Aid

• JSR 168 Compliant • Java Specification Request 168

• To enable interoperability between Portlets and Portals, this specification will define a set of APIs for Portal computing addressing the areas of aggregation, personalization, presentation and security.

• Structurally similar to Subforms

Page 104: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Portlets

Page 105: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Summary

Page 106: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Summary

• Web Development Client Architecture

• Local Web Server

• Local Business Function Execution

• On the fly generation

Page 107: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Summary

• Powerforms

• New web-only form type that can house subforms

• Browse or Edit

• Reusable & Embedded Subforms

• Control/form hybrid

• Contract with Parent (and children)

• Data structure

• Size

• Functions/Standard buttons

• Parent notification

Page 108: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Summary

• Best Practices

• Powerform Layout

• Toolbars

• Form/Row Exits

• Command buttons

• Multiple grid guidelines

• “Converting” Existing Forms

• Portlets & Wizard Forms

Page 109: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer

Q U E S T I O N S

A N S W E R S

Page 110: Kendra Barton - JDE Source | Oracle JD Edwards ... Introduction • 11 years with EnterpriseOne – Runtime • Three companies • Six product names • Tools perspective • Customer