We think you have liked this presentation. If you wish to download it, please recommend it to your friends in any social system. Share buttons are a little bit lower. Thank you!
Presentation is loading. Please wait.
Published byAbigail Morales
Modified over 3 years ago
A18: A Deep Dive into the OpenEdge GUI for.NET Peter Judge OpenEdge Principal Software Engineer
© 2008 Progress Software Corporation 2 Get Ready… Were Going Under Attended OpenEdge GUI for.NET Intro Understand OO concepts Classes, Inheritance, Methods Comfortable with OpenEdge Architect Can hold your breath for a really long time…
© 2008 Progress Software Corporation 3 Demo: OpenEdge GUI for.NET in AutoEdge Existing application following OERA New: OpenEdge GUI for.NET –Main container –Customer maintenance form –Test drive scheduling form
© 2008 Progress Software Corporation 4 D I S C L A I M E R Under Development This talk includes information about potential future products and/or product enhancements. What I am going to say reflects our current thinking, but the information contained herein is preliminary and subject to change. Any future products we ultimately deliver may be materially different from what is described here. D I S C L A I M E R
© 2008 Progress Software Corporation 5 Agenda ABL for the OpenEdge GUI for.NET GUI for.NET Architecture ABL Forms & Controls ABL Data Binding ABL Event Handlers Mix and Match Support Using the GUI for.NET in AutoEdge
© 2008 Progress Software Corporation 6 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
© 2008 Progress Software Corporation 7 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
© 2008 Progress Software Corporation 8.NET Inheritance Stack UI components inheritance stack includes.NET root class: System.Object … CustEntryForm (ABL) System… Form Progress. Windows.Form System… Control Infragistics… UltraButton … … Progress.Lang. Object System.Object All.NET Classes ABL Forms.NET Controls.NET Classes = Green ABL Classes = Blue
© 2008 Progress Software Corporation 9.NET Windows I/O Blocking Model Application with a single main form WAIT-FOR Application:Run( form ). Used for dashboard and MDI applications Other forms are children of the main form Closing the main form automatically terminates WAIT-FOR Application with several equal forms WAIT-FOR Application:Run( ). Forms shown at the same time or separately An event handler needs to terminate WAIT-FOR Application:Exit( ).
© 2008 Progress Software Corporation 10 ABL Forms in the OpenEdge GUI for.NET ABL Forms are containers for.NET UI Controls.NET Controls Microsoft ®.NET Windows Form controls OpenEdge Ultra Controls for.Net (Infragistics ® NetAdvantage) 3 rd -party.NET controls ABL.NET controls User controls Inherited controls CLASS CustForm INHERITS Progress.Windows.Form:
© 2008 Progress Software Corporation 11 ABL.NET Controls - User Control Custom ABL control container for complex behavior Examples of user controls Label and editor Address block Grid and viewer CLASS AddrViewer INHERITS Progress…UserControl:
© 2008 Progress Software Corporation 12 ABL.NET Controls – Inherited control Inherits from existing.NET UI control for extending behavior Examples on inherited controls Buttons: Ok, Cancel, Help Drop-downs: States, Post codes, Countries CLASS OkButton INHERITS Infragistics…UltraButton:
© 2008 Progress Software Corporation 13 Demo: ABL Forms Create a login dialog
© 2008 Progress Software Corporation 14.NET Event Model Controls define events they publish Strongly-typed events Support a list of handlers (callbacks) Controls fire an event when an action occurs All subscribed handlers get called Event specific arguments passed in from.NET System.EventArgs Subscribe ABL event handlers to events CustForm:FormClosing:Subscribe( FormClosingHdlr ).
© 2008 Progress Software Corporation 15 Demo: Event Handler Validate user on OK button click
© 2008 Progress Software Corporation 16.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 15301/01/ /04/ /04/93 Query 1 2 3
© 2008 Progress Software Corporation 17 Power of Progress.Data.BindingSource Brings ABL data-centric behavior to.NET –Automatic data synchronization –Automatic updating –Automatic batching –Automatic currency Properties –Updating: AllowEdit, AllowNew, AllowRemove –Current row state: NewRow, RowModified –Typed screen value: InputValue, ChildInputValue –General Information: Position, Count
© 2008 Progress Software Corporation 18 Data Binding Examples Simple.NET control ( UltraEdit ).NET browse-like control ( UltraGrid ).NET list control ( UltraListView ) editBox:DataBindings:Add ( Text, pBS, OrderNum ). list:DataSource = pBS. list:DataTextField = State. list:DataValueField = State-Name. grid:DataSource = pBS.
© 2008 Progress Software Corporation 19 Demo: Data binding Bind a list of client types to the login dialog
© 2008 Progress Software Corporation 20 ABL Mix and Match UI for Migration.NET forms and OpenEdge GUI windows can co-exist in same session One can parent the other All functionality maintained independently OpenEdge GUI windows can be embedded in a.NET forms Client area managed in ABL Other functionality managed in.NET Progress.Windows.MDIChildForm Progress.Windows.WindowContainer
© 2008 Progress Software Corporation 21 Agenda ABL for the OpenEdge GUI for.NET GUI for.NET Architecture ABL Forms & Controls ABL Data Binding ABL Event Handlers Mix and Match Support Using the GUI for.NET in AutoEdge
© 2008 Progress Software Corporation 22 Outlook-style Container for AutoEdge OpenEdge GUI for.NET main form Dashboard / Container Dynamic menu and toolbar –Hook up events Re-use existing architecture –OERA and MVP Run using WAIT-FOR Application:Run ( ).
© 2008 Progress Software Corporation 23 Demo AutoEdge main container form
© 2008 Progress Software Corporation 24 In Summary Modern, competitive UI in ABL Uses.NET objects –Object-oriented ABL –.NET object features (methods, properties, events) –WYSIWYG Visual Designer –Unlimited controls available Leverages what you know –ABL (events, business logic, data constructs) –Event-driven programming (WAIT-FOR) –OpenEdge Architect
© 2008 Progress Software Corporation 25 Relevant Exchange Sessions DEV-2: Making OpenEdge Architect Work for You DEV-6: Introduction to the OpenEdge GUI for.NET DEV-16: Leveraging the Power of Advanced GUI DEV-20: Sex and Sizzle – Developing with.NET and OpenEdge 10 DEV-32: Using the Advanced GUI, Structured Error Handling and SonicMQ to build a Semi- Disconnected Point of Sales DEV-40: Using SmartDataObjects with the Advanced GUI
© 2008 Progress Software Corporation 26 Questions ?
© 2008 Progress Software Corporation 27 Thank You
© 2008 Progress Software Corporation 28
A Deep Dive into OpenEdge GUI for.NET ™ Peter Judge OpenEdge Principal Software Engineer.
DEV-29: A Deep Dive into the Advanced GUI OpenEdge ® 10.2A Shelley Chase OpenEdge Architect Peter Judge OpenEdge Principal Software Engineer.
First Experiences With OpenEdge GUI for.NET Peter van Dam.
DEV-16: Leveraging the Power of Advanced GUI Power is nothing without control Erwin in ‘t VeldCCS Tony VertentenIntris Eric DebeijProgress Roland de PijperProgress.
© 2009 Progress Software Corporation 1 Click to Edit Master Subtitle Style Overview of OpenEdge® GUI for.NET Release 10.2A Jarmo Nieminen Senior Technical.
OpenEdge ® GUI for.NET ™ Modernize your user interface with ABL Shelley Chase OpenEdge Architect Progress Software Corporation Session 113.
DEV-13: You've Got a Problem, Here’s How to Find It Problem diagnosis & debugging Peter Judge Principal Software Engineer OpenEdge.
Amazing UI Modernization Using Telerik UI for WinForms Shelley ChaseSenior Software Architect, Progress Software Swathi YellavaramQA Engineer, Principal.
25 seconds left….. 24 seconds left….. 23 seconds left…..
FIRST COURSE Microsoft Access. XP 2 Organizing Data Your first step in organizing data is to identify the individual fields – The specific value, or content,
Chapter 16 Graphical User Interfaces Bjarne Stroustrup
DEV-6: Introduction to the OpenEdge ® Advanced GUI Jim Lundy Principal Product Manager.
We will resume in: 25 Minutes We will resume in: 24 Minutes.
ABC Technology Project Mrs. Kiddle. ABCs of Technology Word 1 Word 2 Word 3 Word 4 Word 5 Word 6 Word 7 Word 8 Word 9 Word 19 Word 20 Word 21 Word 22.
View-Based Application Development Lecture 1 1. Flows of Lecture 1 Before Lab Introduction to the Game to be developed in this workshop Comparison between.
A4: Introduction to the OpenEdge ® GUI for.NET Jim Lundy Principal Product Manager.
DEV-21: Embracing OpenEdge ® Architect Sunil S Belgaonkar Software Architect.
Exit a Customer Chapter 8. Exit a Customer 8-2 Objectives Perform exit summary process consisting of the following steps: Review service records Close.
Jeopardy Topic 1Topic Q 1Q 6Q 11Q 16Q 21 Q 2Q 7Q 12Q 17Q 22 Q 3Q 8Q 13Q 18Q 23 Q 4Q 9Q 14Q 19Q 24 Q 5Q 10Q 15Q 20Q 25 Final Jeopardy.
Server Access The REST of the Story David Cleary Principal Software Engineer June 12, 2013.
FACTORING Think unfoil Work down, Show all steps ax 2 + bx + c.
DEV-2: Getting Started with OpenEdge® Architect – Part I David Lund Sr. Training Program Manager Mark Hanley Sr. Manager Development Tools.
Local Customization Chapter 2. Local Customization 2-2 Objectives Customization Considerations Types of Data Elements Location for Locally Defined Data.
REGISTRATION OF STUDENTS Master Settings STUDENT INFORMATION PRABANDHAK DEFINE FEE STRUCTURE FEE COLLECTION Attendance Management REPORTS Architecture.
Copyright © 2008 Cengage Learning Understanding Generalist Practice, 5e, Kirst-Ashman/Hull 1.
DEV-8: OpenEdge® Architect – Extensibility & Third Party Integration Sunil Belgaonkar Principal Software Engineer Architect Phillip Magnay.
© 2012 National Heart Foundation of Australia. Slide 2.
SIMOCODE-DP Software. Automation and Drives SIMOCODE-DP 3UF5 08/04 2 Protection Control Logic Communication SIMOCODE Software Communication Protection.
Page 1 of 37 Module 1: BLOCK 1 / MAIN MENU Objectives As a result of this module the student should demonstrate the following competencies: SoftLab Super.
Slide 1 Advanced Piloting Cruise Plot. Advanced Piloting Cruise United States Power Squadrons ® Part I Question 1 Question 2 Question 3 Question 4 Question.
ARCH-03: Implementing the OpenEdge™ Reference Architecture – Part 1 John Sadd Progress Fellow and OpenEdge Evangelist.
XP New Perspectives on Browser and Basics Tutorial 1 1 Browser and Basics Tutorial 1.
1. XP 2 * The Web is a collection of files that reside on computers, called Web servers. * Web servers are connected to each other through the Internet.
You have been given a mission and a code. Use the code to complete the mission and you will save the world from obliteration…
1 Chapter 8 Improving the User Interface Fundamentals of Java: AP Computer Science Essentials, 4th Edition Lambert / Osborne.
PSSA Preparation. Question 1(no calculator) D Question 2 (no calculator)
1 How Do I Order From.decimal? Rev 05/04/09 This instructional training document may be updated at anytime. Please visit and check the.
In The Name Of Allah, The Most Beneficent, The Most Merciful 1 1 Copyright 2010 © Punjab Education Foundation. All rights reserved.
© Ericsson Interception Management Systems, 2000 CELLNET Drop Administering IMS Database Module Objectives To add a network elements to the database.
1 Processes and Threads Creation and Termination States Usage Implementations.
Executional Architecture Lecture Conceptual vs execution Conceptual Architecture Execution Architecture Component Connector Domain-level responsibilities.
Chapter 16 Graphical User Interfaces John Keyser’s Modifications of Slides by Bjarne Stroustrup
ARCH-6: UML Modeling with Enterprise Architect Phillip Magnay Technical Architect.
Automation with SA , CERN Markus Steiner, PM Software.
Office 2003 Post-Advanced Concepts and Techniques M i c r o s o f t Excel PivotTable List Feature Creating a PivotTable List Web Page Using Excel.
Determine Eligibility Chapter 4. Determine Eligibility 4-2 Objectives Search for Customer on database Enter application signed date and eligibility determination.
David Walker Ottawa TMG Users Group 15 March 2014.
Title Subtitle 1. A. B. C. C. * D. Click to try again! INCORRECT.
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
© 2017 SlidePlayer.com Inc. All rights reserved.