The Next Generation OpenEdge® IDE

Slides:



Advertisements
Similar presentations
DIGIDOC A web based tool to Manage Documents. System Overview DigiDoc is a web-based customizable, integrated solution for Business Process Management.
Advertisements

DEV-2: Getting Started with OpenEdge® Architect – Part I
Improving your OpenEdge® Development Productivity David Lund Sr. Training Program Manager, Progress.
Autodesk Inventor 2010 Essentials Plus Mr Dalton.
® IBM Software Group © 2010 IBM Corporation What’s New in Profiling & Code Coverage RAD V8 April 21, 2011 Kathy Chan
DEV-13: You've Got a Problem, Here’s How to Find It
TAC Vista Security. Target  TAC Vista & Security Integration  Key customer groups –Existing TAC Vista users Provide features and hardware for security.
Eclipse Introduction Dwight Deugo Nesa Matic
Chapter 2: The Visual Studio.NET Development Environment Visual Basic.NET Programming: From Problem Analysis to Program Design.
Views Dwight Deugo Nesa Matic
Business Intelligence (3 of 3): Technically Speaking, This is How We Did It PRESENTED BY.
Management Reporter is the replacement of FRx FRx Transition Management Reporter 2012.
What’s new in Progress Developer Studio for OpenEdge 11.0?
Standards for Technology in Automotive Retail STAR Workbench 1.0 Michelle Vidanes & Dave Carver STAR XML Data Architects, Certified Scrum Masters.
Winter Consolidated Server Deployment Guide for Hosted Messaging and Collaboration version 3.5 Philippe Maurent Principal Consultant Microsoft.
New Generation of OpenEdge ® RDBMS Advanced Storage Architecture II Tomáš Kučera Principal Solution Engineer / EMEA Power Team.
WebFOCUS Developer Studio Update Dimitris Poulos Technical Director September 3, 2015 Copyright 2009, Information Builders. Slide 1.
What's New In Progress Developer Studio for OpenEdge?
Classroom User Training June 29, 2005 Presented by:
70-294: MCSE Guide to Microsoft Windows Server 2003 Active Directory Chapter 12: Deploying and Managing Software with Group Policy.
XP New Perspectives on Introducing Microsoft Office XP Tutorial 1 1 Introducing Microsoft Office XP Tutorial 1.
Eclipse Overview Introduction to Web Programming Kirkwood Continuing Education Fred McClurg © Copyright 2015, Fred McClurg, All Rights Reserved.
Sage SalesLogix What’s New in Sawgrass. Data Safeguarding.
® IBM Software Group © 2009 IBM Corporation Rational Publishing Engine RQM Multi Level Report Tutorial David Rennie, IBM Rational Services A/NZ
© 2012 LogiGear Corporation. All Rights Reserved Robot framework.
DEV-2: Making OpenEdge ® Architect Work For You David Lund Product Readiness.
DEV-7: The OpenEdge ® Architect “Experience” Anthony D Swindells Engineering Fellow A path to a better life (at work)
EQUELLA Product Strategy and Development
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
2. Introduction to the Visual Studio.NET IDE. Chapter Outline Overview of the Visual Studio.NET IDE Overview of the Visual Studio.NET IDE Menu Bar and.
LLRP GUI Client User Guide
Introduction to Eclipse Plug-in Development. Who am I? Scott Kellicker Java, C++, JNI, Eclipse.
Workbench Overview Dwight Deugo Nesa Matic
Object-Oriented Programming and the Progress ABL Tomáš Kučera Principal Solution Engineer / EMEA Power Team.
Session 1 SESSION 1 Working with Dreamweaver 8.0.
Plug-in Development Environment. Session Outline Tools Installation Configuration New Project Basic Debugging Remote Debugging.
IBM Software Group, TPF Support and Services Presentation subtitle: 20pt Arial Regular, teal R045 | G182 | B179 Recommended maximum length: 2 lines IBM.
Module 6: Configuring User Environments Using Group Policy.
DEV-05: Ratcheting up your OpenEdge™ Development Productivity Sunil S Belgaonkar Principal Software Engineer.
CERN - IT Department CH-1211 Genève 23 Switzerland t DB Development Tools Benthic SQL Developer Application Express WLCG Service Reliability.
Prachi Chitnis.  The CSS feel  SDS – Synoptic Display Studio  ADL Converter  PV table, Probe…
Introduction to Eclipse. What is Eclipse? An Integrated Development Environment Provides many features to ease C++ programming (and others, e.g. C/Java)
DEV-8: OpenEdge® Architect – Extensibility & Third Party Integration Sunil Belgaonkar Principal Software Engineer Architect Phillip Magnay.
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
DEV-3: Getting Started with OpenEdge® Architect – Part II David Lund Sr. Training Program Manager Mark Hanley Sr. Manager Development Tools.
A9: Developer Productivity with the Roundtable ® OpenEdge ® Architect Plug-in Randall Harp Product Architect.
IBM Software Group ® Managing Reusable Assets Using Rational Suite Shimon Nir.
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
© 2002 IBM Corporation Transaction Processing Facility TPF Users Group Acapulco May 2004 © 2004 IBM Corporation Pete Nicholls IBM Toronto Lab TPF Toolkit.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
Module 6: Configuring User Environments Using Group Policies.
® IBM Software Group © 2007 IBM Corporation Module 3: Creating UML Diagrams Essentials of Modeling with IBM Rational Software Architect, V7.5.
A2: Making OpenEdge ® Architect Work For You Susan Houniet Senior Solution Consultant.
IBM Express Runtime Quick Start Workshop © 2007 IBM Corporation Deploying a Solution.
Autodesk Inventor 2011 Essentials Plus Instructor’s Name.
 Open  Open an existing Autodesk Inventor file  New  Template for a new part, assembly, presentation file, sheet metal part, or drawing.
IBM Rational Services © 2013 IBM Corporation Software Configuration Management Using the RTC Eclipse Client Bruce Besch (Version 1.0)
Editing and Debugging Mumps with VistA and the Eclipse IDE Joel L. Ivey, Ph.D. Dept. of Veteran Affairs OI&T, Veterans Health IT Infrastructure & Security.
1 Copyright © 2008, Oracle. All rights reserved. Repository Basics.
DEV-21: Embracing OpenEdge ® Architect Sunil S Belgaonkar Software Architect.
C Copyright © 2009, Oracle. All rights reserved. Using SQL Developer.
Customizing PDS OE as per your needs Date: 28 June 2016 Presenter: DivyaTheja Pachipula.
Working in the Forms Developer Environment
COSC-4840 Software Engineering
C6: Introducing Native Invocation with the OpenEdge® Adapter for Sonic™ ESB Chris James Senior Consultant.
Rational Publishing Engine RQM Multi Level Report Tutorial
Dev 11: Embracing OpenEdge® Architect
Presentation transcript:

The Next Generation OpenEdge® IDE OpenEdge® Architect The Next Generation OpenEdge® IDE Tomáš Kučera Principal Solution Engineer / EMEA Power Team

> whoami TKU Started with Progress Software Czech Republic – Dec 19, 1994 2 years @ Technical Support (1996 at ETSC) Since Dec 1996 – Consultant, Presales, Trainer, Project Manager Currently – GFS Mgmt responsibilities for Cze&Pol, Member of the EMEA Power Team – primary responsibility for SAND Product Areas: OpenEdge, Sonic, some Apama and Actional Contact: tku@progress.com, Skype: tomas_kucera

Agenda What is OpenEdge Architect Adopting OpenEdge Architect What‘s new in OpenEdge Architect 10.1B

What is OpenEdge Architect OpenEdge Architect is an Integrated Development Environment (IDE) for building service oriented business applications (SOBA). OpenEdge Architect provides an open, intuitive and extensible toolset that enhances OpenEdge developer productivity

What is OpenEdge Architect Eclipse (foundation platform) Tools for Business Logic Meta Catalog DB Navigator Debugger ABL Editor Future: New Plug-ins OpenEdge Runtime Data Administration OpenEdge Studio AppBuilder Pro*Tools, ProxyGen WebSpeed Workshop OpenEdge Database OpenEdge Development Server Application Server WebSpeed Transaction Server Client Networking

What is OpenEdge Architect Available Tools DB Navigator Editor Debugger Tools for Business Logic AppBuilder Integrator Meta Catalog

What is OpenEdge Architect Key Concepts Workspaces Projects Perspectives Views

OpenEdge Architect - Workspaces Personal area that contains Projects, folders and files Configuration settings Preferences Can use multiple workspaces e.g. Different releases Different environments like development, testing, deployment Export / Import preferences between workspaces Project directory does not have to sit under the workspace directory

OpenEdge Architect - Projects Live in a workspace Contain folders and files for resource organization Example of projects Web project Business services project What is a project Examples of projects Change the graphics Make the project bigger

OpenEdge Architect - Perspectives Defines initial set and layout of views Provides a set of functionality aimed at accomplishing a specific type of task Role based A Perspective is a group of views arranged in a layout Each perspective is fully customizable The goal of a perspective is to provide a set of views arranged in a particular way to help the user in accomplishing a task as efficient as possible. Examples: - OpenEdge Editor Perspective - DB Navigator Perspective - OpenEdge AppBuilder Perspective

OpenEdge Architect - Views Allows a developer to view or interact with a specific information The type of interactions a developer is allowed to perform depends upon the specific functionality of the view

Benefits of using OpenEdge Architect Setup once, easy to share Provide SCM tools integration Easy to switch between different environments PROPATH settings Database connections Build settings

OpenEdge Architect Demonstration

Agenda What is OpenEdge Architect What‘s new in OpenEdge Architect 10.1B Adopting OpenEdge Architect

OpenEdge Architect 10.1B General Enhancements 64-bit Support Summary General Enhancements 64-bit Support Cheat Sheets Removal of Linked Resources Directory Customization Source Directory Support DB Connection Unification Debugger Framework Object-oriented Extensions Dynamics run from OpenEdge Architect The enhancement section covers general and miscellaneous changes that have been made to OpenEdge Architect for 10.1B. This are changes that are important, but not large enough from a training perspective to warrant there own section.

Eclipse Versions OpenEdge Architect ships with the Eclipse 3.2 platform Other versions of Eclipse are not supported with OpenEdge Architect 10.1B OpenEdge 10.1A used Eclipse version 3.1.1. Once you open a workspace that was at version 3.1.1 with Eclipse 3.2, which is the version of Eclipse in 10.1B1B, it can no longer be opened with Eclipse 3.1.1. Warning: Once you open a workspace with Eclipse 3.2 it can no longer be opened with Eclipse 3.1.1

Some of the benefits going to Eclipse 3.2 Cheat Sheets See OpenEdge Architect Cheat Sheets in this session Problems view enhanced Example grouping by severity Preference - Limit visible items per-group Here uses default of first 100 Description can be hidden Group by Severity Toggle for Description Show 100 of 222

Changed Directory Structure Directory structure changed to allow OpenEdge specific plug-ins to be included into a customers own Eclipse installation Eclipse installation can point to the sub-directory that contains the Architect plug-ins We only support the installation that ships with OpenEdge If a customer use their own Eclipse install and encounters a problem they will need to reproduce the problem using the OpenEdge installation of Eclipse Having Architect plug-ins in their own sub-directory, separate from the version of Eclipse that installs with OpenEdge, makes it easier for customer that prefer to use their own install of Eclipse. Note that when installing OpenEdge, Eclipse will still be installed when OpenEdge Architect is installed, even if the customer plans to use their own version of Eclipse.

OpenEdge Architect Installation Directory Structure Changes OpenEdge Architect features/plug-ins now in their own sub-directory DLC\oeide\architect 10.1A mixed with standard Eclipse 10.1B New

Change in Editor Functionality Works like include file support in 10.1A Hover on name of RUN shows location if available Project name and relative path Else Path if in ProPath Location of internal procedure Mouse Double-click opens and positions to RUN item if available For 10.1B Hover help display for RUN statements showing the project name and project relative path to files, external procedures, provided the file name can be found in the ProPath. The format is consistent with the 10.1A include file behavior. The project name is displayed followed by the project relative path if the program file exists within a project. If the program cannot be found, then a “File not found” message is displayed. Double-clicking the mouse in the editor on the name of a program in a RUN statement opens that file in a the editor if the file can be found. If it cannot be found, then there is no effect. This same functionality has also been added for internal procedures referenced in RUN statements. The hover message will display the name of the internal procedure. If the internal procedure is in an external file then the location of the file is displayed followed by the name of the internal procedure. Double-clicking the mouse on the name of an internal procedure will open move the cursor to the start of the internal procedure. If the internal procedure is in an external file referenced by the current file, then the external file will be opened, and the cursor positioned to the internal procedure. Internal Procedure <Project name> and External Procedure

Run <program> Selecting drop down run list now shows the name of the program that will be Run local.p, selected in editor, and shown on Run menu option

Outline View Option added to expand include content into outline view Option allows ABL code to open faster in the editor by not automatically expanding/analyzing include content Prior to 10.1B includes were always expanded For 10.1B expands when file is modified or when button ‘Expand Include file contents…’ is selected

Cheat Sheets Brief summary of steps to complete tasks Links allowing quick access to more information Supplements standard documentation Utilizes new functionality in Eclipse for Cheat Sheets Future releases may… Automate task steps Implement interactive tutorials The goal of Cheat Sheets in OpenEdge Architect is to guide users through a series of complex tasks. They make it easier to use the toolset, thus lowering the barriers to adopting OpenEdge Architect. OpenEdge Architect utilizes new Cheat Sheet functionality that was added to Eclipse. The standard documentation that comes with OpenEdge Architect provides complete information on all of the functionality that makes up the product. The value Cheat Sheets is that they put this same information in a set short summary of steps that allow users to complete defined tasks. In other words, Cheat Sheets supplement the current documentation. Links are provided in many areas of the Cheat Sheets to allow users to jump to the location in Architect that provides complete documentation topics covered. Cheat Sheets do this by: Providing a brief summary of the steps to complete tasks Providing quick and easy access to more information in the current documentation Automating the steps involved in completing a task (launching tools, changing perspectives etc…) Implementing interactive tutorials However, Cheat Sheet functionality for Architect will be delivered incrementally. In the 10.1B release, the Cheat Sheets will not have automation or interactive tutorials. For 10.1B Architect provides task summaries and the linking to OpenEdge help. Subsequent releases of OpenEdge Architect may have automation or interactive tutorials.

Cheat Sheets Topics in 10.1B To select OpenEdge cheat sheets open the Cheat Sheet Selection dialog by selecting Cheat Sheets from the workbench help menu. The following OpenEdge cheat sheets are available for 10.1B: Using ABL Annotations — Creating OpenEdge Database Connection Profiles — Creating SQL Connection Profiles — Troubleshooting JDBC driver — shows how to check the configuration parameters for the default OpenEdge driver. JDBC Driver Configuration — summarizes driver configuration. OpenEdge Projects — summarizes how to create an OE Architect project and add resources. Access from workbench menu: Help  Cheat Sheets…

Cheat Sheets Cheat sheets simplify the use of tools by guiding the user through a series of complex tasks to achieve an overall goal New Options Off of the Workspace Help menu are two new options. One of those allows Cheat Sheets to be selected. The other option, although it is not the focus of this slide, is new way to select Keyword Help. Selecting Cheat Sheets from the help menu pops up a list of categories that have Cheat Sheets defined for them. Select the OpenEdge category to see the available Cheat Sheets that are specific to OpenEdge. The screen shot above provides an example of a Cheat Sheet, showing Configuring JDBC Drivers.

Customization Goal - Provide an easy way to customize some parts of the OpenEdge Architect development environment Allows users to: Add actions to a menu or toolbar For example to call an ABL program Specify a template for creating a file For example when creating a new ABL program Specify a template that overrides an OpenEdge Architect template In 10.1A OpenEdge Architect does not provide any means by which an ABL user can customize the functionality of the menu entries or the templates used for generating code. The only method available in 10.1A is for a user to write an Eclipse Platform based plug-in, which requires skills in Eclipse and Java development. The goal of customization is to add features that make customizing the menus and template functionality within OpenEdge Architect easier for ABL developers. Customization functionality in 10.1B allows a users to: Add actions to a menu or toolbar that calls an ABL developer’s program Specify a new template that can be used to create a new file (i.e. creating a new ABL program) Specify a template that overrides an existing template that already exists within OpenEdge Architect ABL developers will not be required to know java to use any of the Customization functionality. Non-goals: To provide a complete customization tool. A tool is already written in the form of the Eclipse Plug-in Development Environment (or PDE). The PDE provides a complete set of tools for creating Eclipse platform plug-ins that can be used with OpenEdge Architect. Provide a means to create new template files. Internals: The customization editor works by modifying the plugin.xml file for the new plug-in that supports Customization. The plugin.xml file is the standard file that is used by all Eclipse Platform plug-ins that contribute features to the user interface. The new plug-in is named com.openedge.pdt.extensibility.user. This plug-in ships as part of OpenEdge Architect, but does not initially contribute any functionality to the UI for OE Architect. The OpenEdge Architect user uses the customization editor to modify the plugin.xml file. ABL developers are not required to know the details of the plugin.xml file itself or its location. The customization editor presents the user with a simplified interface that requires only what is required to modify the supported features, or tool bars, menus, and templates. All customizations that ABL developers create using the customization editor are contributed to the OpenEdge Editor perspective. Developers do not need to know Java

Customization Editor Used to customize the OpenEdge Editor Perspective Editor selectable from Workbench menu The new Customization Editor will be the primary way for developers to customize OpenEdge Architect. The editor’s main goal will be to make it easy for the user to add supported functionality to certain areas of the product. However, this editor will not prevent a user from writing their own Eclipse platform plug-in, should users want to make changes that are not supported by the Customization editor. The Editor is can be opened by selecting it from the workbench menu OpenEdge > Customization Editor. The Customization Editor provides users with the ability to extend there OpenEdge Architect environments easily. However, keep in mind that the users must have defined their own ABL tools and/or templates to make use of these features. Customizations that ABL developers create to OpenEdge Architect are contributed to the OpenEdge Editor perspective.

Customization X Used to add ABL based tools to the OpenEdge Architect menu and toolbar Y Used to add ABL based tools to the context menu of the OpenEdge Editor Z Used to add a new template Q Used to override an existing template with a customized template Menu/Toolbar Entries: The customization editor allows ABL developers to define a new menu or toolbar entry, that when chosen, runs an ABL program. The ABL program needs to be provided by the user. If the user chooses to put their new entry on the menu, the new menu entry is displayed as part of a new menu that contains only the menu entries created by an ABL developer. The name of the menu can be set within the editor. This menu will become part of the OpenEdge Editor perspective. If the user chooses to add their program to the toolbar, then a new toolbar group will be created and all of the user’s menu entries will be grouped together within that toolbar group. Editor Context Menu: The editor also allows ABL developers to add their program to the context menu for the OpenEdge Editor in the same manner as adding the program to the main OpenEdge Architect menu or toolbar. The user’s programs should be added to a specific submenu of the context menu in order to avoid over populating the context menu. As it stands right now, there are currently 23 menu and submenu entries on the context menu. Any more on the primary level of the context menu would probably be too many, especially if the user had more than a couple of program entries. New Templates: The customization editor provides a means for a user to specify a template that will be used as the basis for a new file wizard. The new file wizard prompts the user for a few pieces of information such as the file name and then uses the template specified by the user to generate the code. The customization editor uses this information to create a new file wizard entry in the plugin.xml file. The wizard entry appears on the File  New menu of OpenEdge Architect. Template Overrides: The editor presents the user with a list of templates that can be overridden. The user will specify the new template file to be used. When the wizard that uses that template is run, the wizard generates code using the overridden template instead of the default OpenEdge Architect template.

Menus and Toolbars Menus and Toolbars can call ABL programs Defined launch configurations Menus allow accelerator keys to be specified ABL programs can be set to run either persistent or non-persistent Entries disabled if OpenEdge project context is not available OpenEdge runtime is not available The user can choose a launch configuration to start instead of a program to run. The user can choose among the list of predefined launch configurations. This allows them to place a specific launch configuration on the menu or toolbar. Whenever the menu or toolbar entry is selected, the specified launch configuration is run. When defining a menu the user can specify a key binding (accelerator key) that allows the user to run the program without needing to navigate to the menu selection. The user can define whether the program should be run persistently or non-persistently. The OpenEdge runtime that the programs run in is defined by the current selection context. If an editor is in focus and is currently open against a file that is part of an OpenEdge project, and the OpenEdge runtime for that project is available, then the program is allowed to run. If the resources view is in focus and the first resource that is selected is from an OpenEdge project, and the runtime for the OpenEdge project is available, then the program is allowed to run. If any other editor or view is selected, then there is no available OpenEdge runtime context, and the program entry on the menu and/or toolbar is disabled. To execute ABL programs requires a running OpenEdge runtime. The option to run a program is disabled when there is no context in which to run. For example, if there are no projects available within OpenEdge Architect then the program cannot be run, so the individual entries are disabled. For an entry to call an ABL program that is placed on the OpenEdge editor’s context menu, the program entry will be enabled if the editor is open against a file from an OpenEdge project, and the OpenEdge runtime is available.

Templates (New and Overrides) Editing existing templates requires some knowledge of template format How to do this is not provided in OpenEdge documentation Starting point is the white paper: OpenEdge Architect™ Working with Custom Templates Writing new templates requires users knowledgeable in using JET and its associated technologies Starting point: http://www.eclipse.org/articles/Article-JET/jet_tutorial1.html The customization editor makes it much easier for users to override or add new templates that are going to be used in the OpenEdge Architect environment. However, modifying and creating templates requires knowledge that is beyond the scope of what is supported by PSC and the documentation that is provided by OpenEdge. Users will need to go to other sources such as the eclipse website. A whitepaper is provided by Progress to help users get started on how to customize templates. The title of the white paper is OpenEdge Architect™ Working with Custom Templates. A good place to start at the eclipse website is with the two tutorials on how to use JET: http://www.eclipse.org/articles/Article-JET/jet_tutorial1.html http://www.eclipse.org/articles/Article-JET2/jet_tutorial2.html

Sharing Customizations Customizations are saved in the plug-in com.openedge.pdt.extensibility.user To share plug-ins copy this plug-in from the plug-in directory where the customizations were created (the source) to the plug-in directory of another users plug-in directory (the target) Copy the com.openedge.pdt.extensibility.user plug-in from/to directory C:\Progress\OpenEdge\oeide\architect\eclipse ###

Removing All Customizations To remove all customizations do one of the following: Select remove for each customization Replace plug-in com.openedge.pdt.extensibility.user with the original installation version of this plug-in

Passing Events Options exist to allow the capture and response to certain ABL events Allows ABL developers to customize their development environments Architect publishes events to the associated OpenEdge runtime for a project See 10.1B documentation for more details One of the options that is available is to allow the user to capture and respond to events from ABL when certain actions are performed within OpenEdge Architect. In OpenEdge Studio, when an ABL developer uses the AppBuilder or Procedure Editor for development a number of operations the user performs are trapped and sent to a program called _adeevnt.p. These events are related to file events such as file open, file close, and file save. There are also events for AppBuilder startup and shutdown as well as others. A similar mechanism has been implemented in OpenEdge Architect so that ABL developers can customize their development environment. OpenEdge Architect publishes events within the OpenEdge runtime for a project if it is available. Certain actions in the AppBuilder can be cancelled by the return code of the _adeevent.p. Canceling an action in OpenEdge Architect is not possible. These actions may not be fired in the OpenEdge runtime if the runtime is in a state where it cannot receive the event. An example would be a user opening or closing a file while running the debugger. Because of the single-threaded nature of the OpenEdge runtime, IDE events cannot be run without the risk of interfering with a running process. Published events: File Open File Close Before file save After file save Before file compile After file compile Before run After run IDE Project Startup IDE Project Shutdown Before debug After debug These events are published using the PUBLISH () function within the OpenEdge ABL. The published events will pass the project name, event name, and the full file name as appropriate. Only a single published event will be defined. This one event will contain the name of the event as one of the parameters that is passed to any subscribers. Using OpenEdge Studio within OpenEdge Architect results in both the AppBuilder events being fired through _adeevnt.p as well as the published events from Architect. For developers that need to use the events within Architect it is recommended that they use the events published from OpenEdge Architect instead of the OpenEdge Studio events where possible. When OpenEdge Architect starts the OpenEdge runtime for a particular project, a file called _idestartup.p is searched for and executed if it exists within the ProPath of the project’s runtime. This file is called as the last part of initializing the OpenEdge runtime. The _idestartup.p hook is provided as a mechanism for ABL developers to start any programs needed within their environment. ABL developers are now able to subscribe to the published events from within their applications or using the _idestartup.p procedure.

Equating Events OpenEdge Studio OpenEdge Architect New Before-Open Open-file Before-Close Close Close-file Before-Save Before-save Save After-save Before-Compile Before-compile Compile After-compile Before-Run Before-run Run After-run Before-Debug Before-debug Debug After-debug Before-Check-Syntax Check-Syntax Before-Check-Syntax-Partial Check-Syntax-Partial Startup Project-startup Shutdown Project-shutdown The table shows both the OpenEdge Studio events and the OpenEdge Architect events and their approximate corollary.

OpenEdge Architect Demonstration

Agenda What is OpenEdge Architect What‘s new in OpenEdge Architect 10.1B Adopting OpenEdge Architect

Adopting OpenEdge Architect Where to start Application Code Single Project in OpenEdge Architect

Adopting OpenEdge Architect Maybe it‘s time to break up ... the code Considerations: Packaging and deployment Working on multiple releases Examples By application modules e.g. order processing By server and client By OpenEdge Reference Architecture layers By different client types e.g. GUI, Web By technology e.g. ABL and Java™ projects Any combination of above… How do I make my application modular? What are the dependencies among my application

Adopting OpenEdge Architect Leveraging the project environment Application Code Multiple Projects Server Chui GUI Common utilities Propath outside of project Dependency structure

Headline – Arial 32 pt. Text – Arial 28 pt. Subtitle Goes Here - Arial Italic 24 pt. Text – Arial 28 pt.

Two-line Headline Arial 32 pt. Subtitle Goes Here - Arial Italic 24 pt. Text – Arial 28 pt.

Question? Tomáš Kučera tku@progress.com Skype: tomas_kucera