© 2009 Progress Software Corporation 1 Click to Edit Master Subtitle Style Overview of OpenEdge® GUI for.NET Release 10.2A Jarmo Nieminen Senior Technical.

Slides:



Advertisements
Similar presentations
A18: A Deep Dive into the OpenEdge GUI for .NET™
Advertisements

DEV-2: Getting Started with OpenEdge® Architect – Part I
NGT Information Technology Technical Discussion Bob DeHoff Info Tech, Inc.
Introducing OpenEdge BPM: Ken Wilner, VP of Technology, OpenEdge Integrating Business Process Management Capabilities Into Your OpenEdge Application.
DEV-13: You've Got a Problem, Here’s How to Find It
Introduction to.NET Technology Marcello Benati Software Engineer.NET Architect.
A Deep Dive into OpenEdge GUI for.NET ™ Peter Judge OpenEdge Principal Software Engineer.
Scale Up Access to your 4GL Application using Web Services
.NET Framework Overview Pingping Ma Nov 16 th, 2006.
ISYS 512 Business Application Design and Development with.Net David Chao.
1 An Introduction to Visual Basic Objectives Explain the history of programming languages Define the terminology used in object-oriented programming.
385 Amazing UI Modernization Using Telerik UI for WinForms
What’s new in Progress Developer Studio for OpenEdge 11.0?
Windows Azure AppFabric Access Control Service (ACS) v.2 (Beta) Prerequisites.
ISYS 350 Business Application Development
Hands-on Introduction to Visual Basic.NET Programming Right from the Start with Visual Basic.NET 1/e 6.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Java Beans.
Introduction to .Net Framework
Introduction to ASP.NET. Prehistory of ASP.NET Original Internet – text based WWW – static graphical content  HTML (client-side) Need for interactive.
VS.NET Syllabus By Peter Huang.
1 8/29/05CS360 Windows Programming Professor Shereen Khoja.
High thoughts must have high language. Aristophanes
Architecture of.NET Framework .NET Framework ٭ Microsoft.NET (pronounced “dot net”) is a software component that runs on the Windows operating.
Session 1 - Introduction and Data Access Layer
Introduction to.NET Framework. .NET – What Is It? Software platform Language neutral In other words:.NET is not a language (Runtime and a library for.
Microsoft Visual Basic 2005: Reloaded Second Edition
Introduction to .NET Rui Ye.
Lesley Bross, August 29, 2010 ArcGIS 10 add-in glossary.
Neal Stublen Class Objectives  Develop an understanding of the.NET Framework  Gain proficiency using Visual Studio  Begin learning.
ASP.NET  ASP.NET is a web development platform, which provides a programming model, a comprehensive software infrastructure and various services required.
Future Directions: Building Customizable Applications using.NET Eric Schnepp TLN205 Lead Program Manager Microsoft Corporation.
Definition of the SDK for FIspace Augusto Morales & Hector Bedón UPM.
ISYS 573 Special Topic – VB.Net David Chao. The History of VB Early 1960s:BASIC-Beginner’s All-Purpose Symbolic Instruction Code –Teaching –Simple syntax,
Introduction to ASP.NET 1www.tech.findforinfo.com.
A4: Introduction to the OpenEdge ® GUI for.NET Jim Lundy Principal Product Manager.
DEV-5: Introduction to WebSpeed ® Stephen Ferguson Sr. Training Program Manager.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
DEV-6: Introduction to the OpenEdge ® Advanced GUI Jim Lundy Principal Product Manager.
DEV-05: Ratcheting up your OpenEdge™ Development Productivity Sunil S Belgaonkar Principal Software Engineer.
ARCH-4: The Presentation Layer in the OpenEdge® Reference Architecture Frank Beusenberg Senior Technical Consultant.
ISYS 812 Business Software Development David Chao.
DEV-01 What’s New in Progress Dynamics ® Anthony Swindells Progress Fellow.
Introducing ASP.NET 2.0. Internet Technologies WWW Architecture Web Server Client Server Request Response Network HTTP TCP/IP PC/Mac/Unix + Browser (IE,
DEV-16: Leveraging the Power of Advanced GUI Power is nothing without control Erwin in ‘t VeldCCS Tony VertentenIntris Eric DebeijProgress Roland de PijperProgress.
DEV-8: OpenEdge® Architect – Extensibility & Third Party Integration Sunil Belgaonkar Principal Software Engineer Architect Phillip Magnay.
ISYS 350 Business Application Development David Chao.
Module 1: Getting Started. Introduction to.NET and the.NET Framework Exploring Visual Studio.NET Creating a Windows Application Project Overview Use Visual.
INNOV-14: A Look Inside the OpenEdge® UI Research Lab Bruce Gruenbaum Principal Software Engineer Shelley Chase
OpenEdge ® GUI for.NET ™ Modernize your user interface with ABL Shelley Chase OpenEdge Architect Progress Software Corporation Session 113.
DEV-3: Getting Started with OpenEdge® Architect – Part II David Lund Sr. Training Program Manager Mark Hanley Sr. Manager Development Tools.
Module 1: Overview of the Microsoft .NET Framework
1.
07/10/2007 VDCT Status Update EPICS Collaboration, October 2007 Knoxville, Tennessee
Your building blocks for fast and future-proof development Koen Verbeeck Senior R&D Engineer Evy De Block R&D Engineer
Amazing UI Modernization Using Telerik UI for WinForms
Hands-on Introduction to Visual Basic.NET Programming Right from the Start with Visual Basic.NET 1/e 6.
DEV-29: A Deep Dive into the Advanced GUI OpenEdge ® 10.2A Shelley Chase OpenEdge Architect Peter Judge OpenEdge Principal Software Engineer.
Devanshu Bawa Customization Specialist Logo Business Solutions.
CIS 375—Web App Dev II ASP.NET 1 Getting Started.
ISYS 512 Business Application Design and Development with.Net David Chao.
® IBM Software Group © 2003 IBM Corporation IBM WebSphere Studio V5.1.2: Making Java Development Easier May 2004.
Text Introduction to.NET Framework. CONFIDENTIAL Agenda .NET Training – Purpose  What is.NET?  Why.NET?  Advantages  Architecture  Components: CLR,
First Experiences With OpenEdge GUI for.NET Peter van Dam.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
DEV-21: Embracing OpenEdge ® Architect Sunil S Belgaonkar Software Architect.
DEV-25: You've Got a Problem, Here’s How to Find It
DEV-3: Introduction to the OpenEdge® GUI for .NET
DEV-15: A Deep Dive into OpenEdge GUI for .NET™
Dev 11: Embracing OpenEdge® Architect
Presentation transcript:

© 2009 Progress Software Corporation 1 Click to Edit Master Subtitle Style Overview of OpenEdge® GUI for.NET Release 10.2A Jarmo Nieminen Senior Technical Account Manager, Progress Software Oy 19 March 2009

© 2009 Progress Software Corporation 2 Agenda  Introduction  Architecture  OpenEdge Language Support  OpenEdge Tool Support OpenEdge GUI for.NET

© 2009 Progress Software Corporation 3 A Microsoft.NET™ based Windows graphical user interface that can replace or be integrated into an existing OpenEdge GUI application

© 2009 Progress Software Corporation 4 n User Interface is based on.NET forms and controls n Windows Forms (WinForms) is the graphical user interface API included as part of Microsoft's.NET Framework providing event-driven applications n.NET Controls are reusable classes that interact with users and are contained within a form – Microsoft®.NET Windows Form controls – Ultra Controls for.NET (Infragistics® WinForms) – 3rd-party.NET controls  Development is done entirely in the ABL environment .NET forms can be mixed with ABL windows in the same application n User Interface is based on.NET forms and controls Windows Forms (WinForms) is the graphical user interface API included as part of Microsoft's.NET Framework providing event-driven applications.NET Controls are reusable classes that interact with users and are contained within a form Microsoft®.NET Windows Form controls Ultra Controls for.NET (Infragistics® WinForms) 3rd-party.NET controls Development is done entirely in the ABL environment.NET forms can be mixed with ABL windows in the same application Primary characteristics

© 2009 Progress Software Corporation 5  OpenEdge GUI Client Products  Use object-oriented ABL to access.NET objects  Data binding between ABL data sources and.NET controls  Write ABL event handlers for.NET controls  OpenEdge Architect  Build forms using new Visual Designer – WYSIWYG editor  Basic set of.NET UI controls  OpenEdge Ultra Controls for.NET (optional)  Available as an optional product providing additional feature rich.NET controls from Infragistics  OpenEdge GUI Client Products Use object-oriented ABL to access.NET objects Data binding between ABL data sources and.NET controls Write ABL event handlers for.NET controls OpenEdge Architect Build forms using new Visual Designer – WYSIWYG editor Basic set of.NET UI controls OpenEdge Ultra Controls for.NET (optional) Available as an optional product providing additional feature rich.NET controls from Infragistics OpenEdge Products

© 2009 Progress Software Corporation 6  Leverages ABL  Single language – No need to learn C#, VB.NET  Direct `access to.NET controls – no control container required  Data binding between ABL data sources and UI controls  Event binding between ABL methods and UI events  Single tool set: OpenEdge Architect  No need to purchase, learn or use non-OpenEdge products  Integrates with existing GUI  Independent of deployment topology (client server or n- tier)  Extensible with 3rd party and custom controls  Takes advantage of.NET WinForms technology and advancement  Leverages ABL Single language – No need to learn C#, VB.NET Direct `access to.NET controls – no control container required Data binding between ABL data sources and UI controls Event binding between ABL methods and UI events Single tool set: OpenEdge Architect No need to purchase, learn or use non-OpenEdge products Integrates with existing GUI Independent of deployment topology (client server or n-tier) Extensible with 3rd party and custom controls Takes advantage of.NET WinForms technology and advancement

© 2009 Progress Software Corporation 7 OpenEdge UI Technologies OpenEdge GUI for.NET Build modern state-of- the-art GUIs for Microsoft Windows in ABL 10.2A: OpenEdge Architect*, OpenEdge Studio, 4GL Development System UI Technology Primary Use Tools to Use Progress GUI WebClient Open Client WebSpeed Character Build Windows 95 user interface look and feel Build thick client GUI with thin client deployment characteristics Build alternate UIs (.NET & Java™) to OpenEdge Apps Build Web-browser based apps with zero client footprint Build traditional green- screen user interfaces Progress Dynamics OpenEdge Studio OpenEdge Architect OpenEdge Studio OpenEdge Architect Open Client Toolkit WebSpeed® Workshop OpenEdge Architect OpenEdge Studio 4GL Development System * Visual Designer only available with OpenEdge Architect

© 2009 Progress Software Corporation 8 Agenda  Introduction  Architecture  OpenEdge Language Support  OpenEdge Tool Support OpenEdge GUI for.NET

© 2009 Progress Software Corporation 9 OpenEdge GUI for.NET Architecture OpenEdge Client OpenEdge AVM Microsoft CLR OpenEdge UI (Controller).NET UI (View) Bridge OpenEdge and.NET™ CLR within a single process  Define GUI components  Data access  I/O blocking (Wait-For)  Event handlers  GUI Visualization  User interaction and events

© 2009 Progress Software Corporation 1010 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 ). METHOD EventHdlr1( ) … ABL Logic OpenEdge UI (Presenter).NET UI (View) Bridge

© 2009 Progress Software Corporation1 Agenda  Introduction  Architecture  OpenEdge Language Support  OpenEdge Tool Support OpenEdge GUI for.NET

© 2009 Progress Software Corporation 1212 OpenEdge GUI for.NET – Code components Window  Create form and controls  Event subscription & event handler methods  Data Binding definitions (ProBindingSource) Forms Startup.p  Entry point to run GUI  NEW’s Form.cls  Performs WAIT-FOR Supporting Files *.cls, *.p, *.i  Alternate location for event handlers  Data source definition and query *.cls

© 2009 Progress Software Corporation 1313.NET Inheritance Stack  Root class: Progress.Lang.Object OpenEdge Form Progress.Lang.Object ABL System.Object System.MarshalByRefObject System.ComponentModel.Componen t System.Windows.Forms.Control System.Windows.Forms.Scrollable Control System.Windows.Forms.Container Control System.Windows.Forms.Form Progress.Windows.Form OE.NE T CustEntryForm OE Progress.Lang.Object ABL System.Object System.MarshalByRefObject System.ComponentModel.Compone nt System.Windows.Forms.Control.NE T.NET Control Infragistics.Win.UltraControlBase Infragistics.Win.Misc.ControlBase Infragistics.Win.Misc.AutoSizeCo ntrolB Infragistics.Win.Misc.UltraButton Base Infragistics.Win.Misc.UltraButto n ABL Class.NET class Infragistics Class OpenEdge form OpenEdge derived Class

© 2009 Progress Software Corporation 1414 .NET classes used like ABL classes  Share common base class Progress.Lang.Object  Can refer to.NET object type using namespace  Case-sensitive type names .NET classes used like ABL classes Share common base class Progress.Lang.Object Can refer to.NET object type using namespace Case-sensitive type names Access to.NET objects based on object-oriented ABL DEFINE VARIABLE myForm AS Progress.Windows.Form. DEFINE VARIABLE helloBtn AS System.Windows.Forms.Button. myForm = NEW Progress.Windows.Form ( ). helloBtn = NEW System.Windows.Forms.Button( ). helloBtn:Text = “Hello World”. myForm:Controls:Add(helloBtn). MESSAGE helloBtn:Text VIEW-AS ALERT-BOX. …

© 2009 Progress Software Corporation 1515  Bind ABL data to.NET controls (data binding)  New Progress.Data.BindingSource – Enables design-time binding to business objects – Provides layer of abstraction between data and UI  Can bind UI control with various data sources: – Buffers, queries, ProDataSets  Bind ABL data to.NET controls (data binding) New Progress.Data.BindingSource Enables design-time binding to business objects Provides layer of abstraction between data and UI Can bind UI control with various data sources: Buffers, queries, ProDataSets ABL data sources tied directly to.NET controls DEFINE VARIABLE custbs AS Progress.Data.BindingSource. CREATE QUERY hdlQry.... /* Prepare and open query */ custbs = NEW Progress.Data.BindingSource( hdlQry,"*",""). custGrid:DataSource = Custbs.

© 2009 Progress Software Corporation 1616 Agenda  Introduction  Architecture  OpenEdge Language Support  OpenEdge Tool Support OpenEdge GUI for.NET

© 2009 Progress Software Corporation 1717 OpenEdge GUI for.NET Tools Architecture OpenEdge Architect ABL Editor Visual Designer OpenEdge Client Eclipse, OpenEdge and.NET CLR work together OpenEdge AVM Microsoft CLR Eclipse (foundation platform) Visual Designer  WYSIWYG designer  ABL Code generation  Event subscriptions & handler methods  Properties view

© 2009 Progress Software Corporation 1818  Define Form  Add.NET controls  Set properties  Define data binding objects  Add event subscriptions  Define Form Add.NET controls Set properties Define data binding objects Add event subscriptions Built as an Eclipse plug-in for OpenEdge Architect  WYSIWYG Form creation and editing

© 2009 Progress Software Corporation 1919 Summary - ABL to.NET in a Nutshell  Modern, competitive UI in ABL  Uses.NET objects  Many 3rd party controls available  Visual Designer – WYSIWYG tool  Leverages ABL  Object-oriented extensions .NET objects integrated into ABL hierarchy  Built-in data type conversions  Event-driven programming (WAIT-FOR)  Mix-n-match of OpenEdge GUI and OpenEdge GUI for.NET  Topology independent: Standalone, C/S, n-tier, web (WebClient)  Developers need only write ABL code

© 2009 Progress Software Corporation 2020 OpenEdge GUI for.NET Questions? OpenEdge Client OpenEdge AVM Microsoft CLR OpenEdge UI (Controller).NET UI (View) Bridg e

© 2009 Progress Software Corporation 2121 Thank you for your time

© 2009 Progress Software Corporation2

2323 Questions?