You are on page 1of 23

First Experiences With

OpenEdge GUI for .NET


Peter van Dam
2
OpenEdge GUI for .NET Architecture
Single Process for OpenEdge Runtime and .NET Common
Language Runtime (CLR)
OpenEdge Runtime .NET CLR
.NET GUI
frm = NEW Form( ).
frm:Closing:Subscribe(
EventHdlr1 ).
WAIT-FOR Application.Run( frm ).
EventHdlr1( )
frm = NEW Form( ).
frm:Closing:Subscribe(
EventHdlr1 ).
WAIT-FOR Application.Run( frm ).
EventHdlr1( )
ABL Logic
OpenEdge UI
(Presenter)
.NET UI
(View)
Bridge Bridge
4
1
2
6
7
3
5
3
Demo: Creating an Outlook Style Main Menu
4
Demo: Creating an Outlook Style Main Menu
5
Concepts shown
Using the Visual Designer
MDI Form
Classes
Constructor
Inheritance
.NET & Ultra Controls
Toolbox
User Controls


6
.NET Data Binding Model
Progress.Data.BindingSource
Provides data for .NET UI Controls
How: Provides required APIs to .NET Controls (IList)
Why: OpenEdge data provided as .NET needs
What: Any ABL Query, Buffer or ProDataSet

OpenEdge Runtime .NET CLR
Progress.Data.
BindingSource
ProDataSet
Customer
Lift Line Skiing
Urpon Frisbee
Hoops Croquet
Order
1 53 01/01/93
2 81 01/04/93
3 66 01/04/93
Query
1
2
3
7
Demo: Creating a Customer Form
8
Demo: Creating a Customer Form
9
Concepts shown
Form
UltraGrid
Datasets
XML Schema
Data Binding

10
Demo: Starting the Form in the Menu
11
Demo: Starting the Form in the Menu
12
Concepts shown
Subscribing to .NET events
Interfaces
Properties
CAST

13
Demo: Adding the Order Tab
14
Demo: Adding the Order Tab
15
Concepts shown
Cascading ProBindingSources
Outlook GroupByDate

In addition we saw how easy it is to create
Tabbed forms. But it gets even better.

16
Demo: Spicing up the Main Menu
17
Demo: Spicing up the Main Menu
18
Concepts shown
You can now quite easily add powerful UI
features that are not possible in Progress GUI
OpenEdge Ultra Controls for .NET support
the Microsoft

Office Fluent

User Interface
Infragistics Application Styling

19
Conclusions
There is an awful lot to learn
Invest in your skills
Adopt industry standards
Reuse existing code
Increase the value of your application
Increase your own value
20
Upgrade your skills
Migrate your application
Be creative
Increase your value

But most of all:
Have fun!
Final tips
21
Questions
?
22
www.futureproofsoftware.com
peter@futureproofsoftware.com
23
Thank You

You might also like