Maximizing productivity with Progress Developer Studio for OpenEdge 11.2 and Higher Anil Kumar Yogesh Devatraj Focus of the Session Brief Introduction to Progress Developer Studio For OpenEdge 11.2 Features Improving OpenEdge developer productivity Know what’s new in Progress Developer Studio for OpenEdge 11.3 Demos of all new exciting features 2 © 2013 Progress Software Corporation. All rights reserved. Introduction to Progress Developer Studio for OpenEdge “An Eclipse based integrated development environment to increase OpenEdge developer productivity with highly customizable and easily navigable user interface.” Progress Developer Studio for OpenEdge 3 © 2013 Progress Software Corporation. All rights reserved. Progress Developer Studio for OpenEdge 11.2 AppBuilder • Seamless Appbuilder Integration Integration with PDSOE 4 © 2013 Progress Software Corporation. All rights reserved. Appbuilder Integration to PDSOE “New improved seamless Appbuilder Integration makes PDSOE one stop solution for developer that develops or maintain ABL GUI applications using Appbuilder” All new GUI design editor with design palette Preferences & Properties Section editor support 5 © 2013 Progress Software Corporation. All rights reserved. Improved ABL source editor Support for Dynamics & ProTools Appbuilder Integration to PDSOE All new GUI design editor Preferences & Properties Improved ABL source editor. Section editor support Support for Dynamics & ProTools Moved to Menu & Toolbar Moved to dockable Palette 6 © 2013 Progress Software Corporation. All rights reserved. Appbuilder Integration to PDSOE All new GUI design editor Preferences & Properties Improved ABL source editor. Section editor support Support for Dynamics & ProTools Brings native Appbuilder functionality to PDSOE Dock-able widget palette Inherits look and feel of Visual Designer Dock-able Palette Hierarchical widget outline view Synchronization between design and source editor Widget Hierarchy Outline 7 © 2013 Progress Software Corporation. All rights reserved. Appbuilder Integration to PDSOE All new GUI design editor Preferences & Properties Improved ABL source editor. Section editor support Now AppBuilder GUI applications are OpenEdge project aware. AppBuilder options are available as PDSOE preferences and project properties. 8 © 2013 Progress Software Corporation. All rights reserved. Support for Dynamics & ProTools AppBuilder Preferences Improved ABL Source Editor: Read-only Code Sections All new GUI design editor Preferences & Properties Improved ABL source editor. Section editor support Support for Dynamics & ProTools Ease of editing AppBuilder generated source file Editable code section Protects AppBuilder generated code Customizable Highlighting Non-editable section for AppBuilder generated code AppBuilder Editor preference options are provided to turn on/off this feature Code folding for Appbuilder specific blocks Customized Find and Replace dialog All new Trigger Wizard. 9 © 2013 Progress Software Corporation. All rights reserved. Editable code block By default AppBuilder read-only code block will be close folded Improved ABL Source Editor: Section Editor All new GUI design editor Preferences & Properties Improved ABL source editor. Section editor support Support for Dynamics & ProTools Simulates Standalone AppBuilder section editor functionality Easy navigation through ABL outline nodes Hides AppBuilder generated code to better readability Quick toggle option to enable/disable section view. 10 © 2013 Progress Software Corporation. All rights reserved. Toggle action to enable/disable section view Displays code section related to selection AppBuilder ProTools & Dynamics All new GUI design editor Preferences & Properties Improved ABL source editor. Section editor support Support for Dynamics & ProTools AppBuilder ProTools options are available under workbench toolbar as well as Menu, divided in three sub groups General ProTools Appbuilder ProTools ADM2 ProTools All Progress Dynamics features are fully integrated in PDSOE like Open dynamic object. Register to repository. Save dynamics object as static. Save static object as dynamics. Open associate procedure. 11 © 2013 Progress Software Corporation. All rights reserved. ADM2 ProTools General ProTools ApppBuilder ProTools Progress Developer Studio for OpenEdge 11.2 • Seamless Appbuilder AppBuilder Integration with Integration ABL Scratchpad 13 © 2013 Progress Software Corporation. All rights reserved. PDSOE •Running ABL code snippet on the fly ABL Scratchpad “ABL Scratchpad is an editable multi-tabbed view that allow user to write and test ABL code snippet on the fly.” Editing Experience 14 © 2013 Progress Software Corporation. All rights reserved. Running Options Data Persistence Editing Experience Editing Experience Running Options Data Persistence Content Assistance and Data Awareness on demand Color Coding Content Assist Syntax Check in view itself Color Coding Standard editor operations like cut, copy, paste options Undo redo actions Clear entire code in view. Standard editor options 15 © 2013 Progress Software Corporation. All rights reserved. Running Options and Persistence Editing Experience Running Options Run against any of the available projects runtime By default, uses shared AVM Can also be executed against new AVM to avoid overwriting session or global variables. Preserves the content of all opened tabs Remembrance of associated AVM for individual tabs Save-as option for saving any code snippets into file system. 16 © 2013 Progress Software Corporation. All rights reserved. Data Persistence 17 © 2013 Progress Software Corporation. All rights reserved. Progress Developer Studio for OpenEdge 11.2 AppBuilder • Seamless Appbuilder Integration Integration with PDSOE ABL • Running ABL code Scratchpad snippet on the fly REST 18 © 2013 Progress Software Corporation. All rights reserved. •Introducing ABL to REST world REST Support in PDSOE “REST (REpresentational State Transfer) is an architectural style for distributed computing that was defined in conjunction with the HTTP protocol”. PDSOE provides Application development tools for the same. REST Projects creation in PDSOE REST Annotations to ABL Files Publishing and Packaging OE REST Applications 19 © 2013 Progress Software Corporation. All rights reserved. REST Expose Editor for Mappings OE Web Server and REST Services New REST Project REST Projects in PDSOE REST Annotations to ABL Files New project types: REST project type Mobile project type REST and Mobile projects are associated with the OpenEdge Server perspective 20 © 2013 Progress Software Corporation. All rights reserved. REST Expose Editor Publishing and Packaging OE REST Appl OE Web Server and REST Services REST Annotations to ABL Files REST Projects in PDSOE REST Annotations to ABL Files REST Expose Editor Publishing and Packaging OE REST Appl OE Web Server and REST Services Identify ABL code that is to be exposed as REST service Programs can also be: ABL classes REST annotations are added to identify functionality that will be exposed to the REST service Use Define Service Interface Wizard for adding Mobile Annotations Annotations can be added to: Methods in a class 21 © 2013 Progress Software Corporation. All rights reserved. REST Specific Option Creating a REST Service REST Projects in PDSOE REST Annotations to ABL Files REST Expose Editor Publishing and Packaging OE REST Appl REST Service URI should start with ‘/’ Service can be associated to respective OE Web Servers during the creation One REST Project can have multiple REST Services OE Webserver is listed by default 22 © 2013 Progress Software Corporation. All rights reserved. OE Web Server and REST Services REST Expose Editor REST Projects in PDSOE REST Annotations to ABL Files REST Expose Editor Publishing and Packaging OE REST Appl OE Web Server and REST Services REST Expose Editor is used to Create resources Define a mapping between exposed ABL routines and Verbs From the REST Expose Editor you can: Manage the REST resources defined for the REST service Associate REST verbs, HTTP methods, with the exposed ABL procedures Map the input and output parameters 23 © 2013 Progress Software Corporation. All rights reserved. Servers in PDSOE REST Projects in PDSOE REST Annotations to ABL Files REST Expose Editor Publishing and Packaging OE REST Appl OpenEdge REST applications need two types of servers • OpenEdge AppServer (restbroker1) • OE Web Server (restmgr1) Servers can be stopped and started from Servers view in PDSOE Other Approaches • Proenv command line • OpenEdge Explorer / OpenEdge Management 24 © 2013 Progress Software Corporation. All rights reserved. OE Web Server and REST Services Publishing Resources to OE Webserver REST Projects in PDSOE REST Annotations to ABL Files REST Expose Editor OE Web Server resources • Defined Service required • Configured to publish on server • Published to application directory 25 © 2013 Progress Software Corporation. All rights reserved. Publishing and Packaging OE REST Appl OE Web Server and REST Services Status of OE Web Server REST Projects in PDSOE REST Annotations to ABL Files REST Expose Editor Publishing and Packaging OE REST Appl OE Web Server and REST Services [Stopped] - Initial State after PDSOE Launch [Starting] - During the process of starting OE Web Server [Started] - Successful start of OE Web Server. [Started, Synchronized] - Application is published properly [Stopped, Synchronized] - Web Server stopped and app available [Started, Republish] - When Application is changed in PDSOE [Synchronized][Published] - Application is in sync or up-to date [OE Web server not started] - Webserver not started yet 26 © 2013 Progress Software Corporation. All rights reserved. 27 © 2013 Progress Software Corporation. All rights reserved. Progress Developer Studio for OpenEdge 11.2 AppBuilder Integration • Seamless Appbuilder Integration with PDSOE ABL Scratchpad • Running ABL code snippet on the fly REST Mobile 28 © 2013 Progress Software Corporation. All rights reserved. • Introducing ABL to REST world • Build Apps faster and get to market quickly OpenEdge Mobile Complete Mobile application development and deployment can be done directly from PDSOE and all Mobile specific artifacts for iOS and Android can be generated with minimal steps. 29 Mobile App Creation Business Entity and Mobile Service Mobile AppBuilder Options Running Mobile Application © 2013 Progress Software Corporation. All rights reserved. Mobile App creation as part of Mobile Project Mobile App Creation Business Entity and Mobile Service Creates project (or a mobile application) in cloud Requires user credentials (PSDN) for Mobile App Builder Choice of App types Device (Phone or Tablet) Predefined Templates Twitter App Weather App From backup Existing Mobile App Optionally user can associate to OE Web Server 30 © 2013 Progress Software Corporation. All rights reserved. Mobile AppBuilder Running Mobile Application from PDSOE Mobile Project Folder Hierarchy Mobile App Creation in PDSOE Business Entity and Mobile Service Mobile AppBuilder in PDSOE Running Mobile Application from PDSOE Mobile Apps Contains the mobile apps that are creates in the Mobile project AppServer Contains the files (business logic) to be publish to the server RESTContent Contains the files that will be used for generating a Mobile service (WAR) file WebContent Contains the Progress JavaScript Data Object (JSDO) files: progress.js, progress.session.js, and the .json files Defined Services Contains a list of defined/created Mobile and REST services. 31 © 2013 Progress Software Corporation. All rights reserved. Business Entity Mobile App Creation in PDSOE Business Entity and Mobile Service Mobile AppBuilder in PDSOE Running Mobile Application from PDSOE Resembles same as that of ABL Class wizard Contains ABL Business Logic Default CRUD operations/methods are generated with stubs Schema file selection is allowed such that CRUD operations are generated on top of selected schema Decorated with Mobile annotations such that they can be exposed as mobile services 32 © 2013 Progress Software Corporation. All rights reserved. Method types Mobile Service Mobile App Creation in PDSOE Business Entity and Mobile Service Mobile Service is a combination of REST and some specifics of Mobile Mobile service can be created for a Business Entity A mobile service results in REST (resourceModel.xml, mapping.xml) and Mobile artifacts (.json) in PDSOE <service name>.json file is one of the outputs of mobile service JSON file contains complete information (schema, operations) of the mobile resources 33 © 2013 Progress Software Corporation. All rights reserved. Mobile AppBuilder in PDSOE Running Mobile Application from PDSOE Mobile App Builder Options in PDSOE Mobile App Creation in PDSOE Business Entity and Mobile Service Mobile AppBuilder Options Running Mobile Application PDSOE allows user to perform following options on a mobile application Open Run Backup Local Copy Source Local Export Local Delete Rename Android (.apk) and iOS (.ipa) files are generated based on the Project Properties settings Deleting an application in PDSOE removes from Cloud as well. 34 © 2013 Progress Software Corporation. All rights reserved. Publishing Mobile App and Mobile Service Mobile App Creation in PDSOE Business Entity and Mobile Service Mobile AppBuilder in PDSOE Running Mobile Application from PDSOE Complete Mobile Project constitutes both Mobile Application and Mobile Service Same OE Web Server is used for publishing both Mobile Application and Mobile Service Two different .WAR files are published to OE Web Server Publishing a mobile application does: Get sources from Mobile App Builder Package it as WAR file Publish to Tomcat directory. 35 © 2013 Progress Software Corporation. All rights reserved. Run Options for Mobile Application Mobile App Creation in PDSOE Business Entity and Mobile Service Mobile AppBuilder in PDSOE Running Mobile Application from PDSOE Run Local Sources will be copied to local file system if not done already Run on Server Application should be published properly to OE Web Server Either of options opens specific application in the emulator Machine name is populated by default in the Run Configuration dialog for ‘Run on Server’ 36 © 2013 Progress Software Corporation. All rights reserved. 37 © 2013 Progress Software Corporation. All rights reserved. DISCLAIMER • Further part of presentation includes information about future products and/or product enhancements. • What we are 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. DISCLAIMER 38 © 2013 Progress Software Corporation. All rights reserved. Progress Developer Studio for OpenEdge 11.3 Express Mobile Application OE-Corticon Integration • Create Business Rules to any OpenEdge application with no-coding efforts and with minimal Corticon knowledge PDSOE support for Win 64 Bits • ABL Developers can use Win 64 platform for their application development starting from 11.3 Infragistics and JRE Upgrade • .NET Ultra controls upgradation to latest version of Infragistics Seamless Integration to OEBPM 39 • Complete Mobile Application in single click © 2013 Progress Software Corporation. All rights reserved. • Unified installer for both PDSOE and OEBPM Express Mobile Project Express Mobile Application OE-Corticon Integration Support for Win64 Bits New option introduced in the Mobile Project Creation wizard Complete Mobile application is achieved with single click Predefined template is added for the Mobile Project Set of prerequisites that are to be satisfied prior proceeding One Click Project completion Finishing Project opens mobile screen in the Emulator 40 © 2013 Progress Software Corporation. All rights reserved. JRE and Infragistics Upgrade Other Enhancements OpenEdge / Corticon Integration Express Mobile Application OE-Corticon Integration Support for Win64 Bits JRE and Infragistics Upgrade Other Enhancements Progress Developer Studio for OpenEdge Export ProDataset/Temp-Table schema from PDSOE ABL is master (i.e. no round-tripping, sync) Proprietary interchange format (.brvd) “Corticon Runtime for Development” provides testing capabilities for ABL developers Corticon Studio Import PDS/TT schema Create entities, attributes, associations Mark imported schema as read-only Re-import without redefining rules or custom additions ABL API For invoking the decision services through ABL 41 © 2013 Progress Software Corporation. All rights reserved. Win64 support for PDSOE Express Mobile Application OE-Corticon Integration Support for Win64 Bits JRE and Infragistics Upgrade Other Enhancements ABL Client in Win64 (prowin.exe) Support for all features of PDSOE PDSOE supports and ships for JRE/JDK 1.7 PDSOE 11.3 ships with latest version of Infragistics (13.1) inclusive of .NET 4.0 support New Controls: Ultra ganttview print document Ultra touch provider Ultra Control’s help in generic browser. 42 © 2013 Progress Software Corporation. All rights reserved. Install Changes Express Mobile Application OE-Corticon Integration Support for Win64 Bits JRE and Infragistics Upgrade Other Enhancements Unified installer for PDSOE and OEBPM Removal of multiple instances/installations of PDSOE support Removal of .NET 2.0 Disk Layout changes of the PDSOE installation. 43 © 2013 Progress Software Corporation. All rights reserved. October 6–9, 2013 • Boston #PRGS13 www.progress.com/exchange-pug Special low rate of $495 for PUG Challenge attendees with the code PUGAM And visit the Progress booth to learn more about the Progress App Dev Challenge!