Open Edge journey through 11 X Srinivas Kantipudi







































- Slides: 39
Open. Edge journey through 11. X Srinivas Kantipudi 28 June, 2016
Agenda § Introduction to PDS for OE § Features over the releases – 11. X 2
Introduction to Progress Developer Studio for Open. Edge Configure Test Develop OEDK Classroom editions Publish Build 3
Features over the 11. x releases OE 11. 0 Remote Debugger Support for creating Web. Speed apps Custom project types Mark files/folder s as noncompilable OE 11. 1 Opening multiple files in same instance Debug listing support OE 11. 2 REST Mobile App. Builder integration to PDS OE ABL Scratchpad view OE 11. 3 Win 64 support Integration with Corticon Integration of BPM plugins in PDS OE 4 OE 11. 4 ABL Unit Support for Organize USINGs PUSH notification service Find References OE 11. 5 OE 11. 6 Analytics Web. Speed support in PASOE ABLDoc Pacific App. Server Profiler support from PDS OE Telerik UI for Winforms
Features over the releases – By Theme New technologies Integrations Productivity • REST • Mobile • Telerik Winforms • Win 64 support • BPM support in • Web. Speed integration in PDS OE • App. Builder integration • Integration with Corticon • Custom project Open. Edge • PASOE server support types • ABL Scratchpad • Support for Organize USINGs • Find References • Improved Server support 5 Enhancing ALM capabilities • ABLUnit • ABLDoc • Profiler from PDS OE
New technologies
Web applications Infragistics & Microsoft controls REST Win 64 support Open. Edge mobile BPM support in Open. Edge 7 11. 6 11. 3 11. 0 and before CHUI applications Desktop applications 11. 2 New Technologies: What we have before 11. 0 and what we provided in 11. X Telerik UI for Winforms
New Technologies: REST (REpresentational State Transfer) Resource based, light weight, stateless Can use JSON or XML CRUD Model • Create, Read, Update Cloud-based, mobile and highly scalable stateless applications and Delete 8 11. 2
New Technologies: Developing a REST Application 11. 2 REST Client 9
11. 2 The Evolution of Mobile Development in Open. Edge 2012 OE Mobile App Builder Business Entity Mobile Service Java. Script Data Object (JSDO) 2014 Q 1 2015 Rebrand Mobile for Pacific Q 2 2015 Announce move to Telerik Platform JSDO Open Sourced Kendo UI Data. Source for JSDO 10
New Technologies: Developing backend for Mobile application 11 11. 2
New Technologies: Integrate Telerik Platform with Open. Edge 12 Telerik App. Builder: https: //platform. telerik. com 11. 2
New Technologies: Progress Application Server support from PDS OE 11. 5 REST and Mobile 11. 6 – Web. Speed 13 11. 5
New Technologies: Open. Edge BPM 11. 3 § Provides ability to develop both transaction-oriented and process-centric applications § Allows customers to automate the workflows § Allows customers to get visibility into how well their processes are performing System step “Managed § Allows customization Adapter” without code changes Swim lane User activity “Performer” “Task” 14 Decision
New Technologies: Telerik UI for Win. Forms - Enterprise Development for Windows Desktops § Enterprise Business Applications § Vibrant Dashboards § Touch Enabled Applications 15 11. 6
Integrations
Web. Speed components scattered App. Builder integration Web. Speed integration into PDS OE 17 11. 3 11. 0 Before 11. X App. Builder loosely coupled 11. 2 Integrations: What we have before 11. 0 and what we provided in 11. X Corticon Business rules integration
Integrations: Web. Speed Development 11. 0 § Completely revamped in 11. 0 § New Web. Speed project type § Different templates provided for Speed. Script § Multi-tabbed Speed. Script Editor § All programming models supported § Speed. Script, CGI wrapper, HTML mapper 18
Integrations: Speed. Script Editor 11. 0 Supported Actions: • ABL color coding • Correct case • Expand keywords • Compile/ Syntax HTML section check • Hover/ Keyword help • Content Assist / Open declarations • Surround with Catch/ Speed. Script finally block section • Add Procedure/ Add Function Multi Page Editor with three tabs • Speed. Script • Generated ABL • Preview 19
Integrations: App. Builder Integration 11. 2 § Brings native App. Builder functionality to PDS OE Moved to Menu & Toolbar § Dock-able widget palette inherits look and feel of GUI for. NET Designer Moved to dockable Palette § Hierarchical widget outline view § Synchronization between design and source editor 20
Integrations: App. Builder Integration - Improved ABL Source Editor § Ease of editing App. Builder generated source file 11. 2 Non-editable section for App. Builder generated code § Protects App. Builder generated code § App. Builder Editor preference options are provided to turn on/off this feature § Code folding for App. Builder specific blocks By default App. Builder read-only code block will be close folded Editable code block § Customized Find and Replace dialog 21
Integrations: What is Corticon Rules and when can Open. Edge apps benefit from Corticon? What • BRMS engine to create rules for your business logic • A spreadsheet like interface for writing rules • Checks for completeness, correctness When • Is Business logic enabling relatively complex decisions? • Is Business logic customized or personalized for each end user? • Are changes frequently required to the applications decision logic? • Is accuracy/integrity of logic critical? • Do you require more transparency into how decision are made? 22 11. 3 Myths • Rules engines are complex and heavy to use • We can handle rules in application code • Integration with application code is complicated.
Integrations: Open. Edge – Corticon integration: Design-time Meta-data Integration § Export Temp table or Prodataset as Business rules Vocabulary Definition file (. brvd file) § Import to Corticon as Vocabulary entities § Create Business rules and flow in Corticon Studio § Deploy them to server as decision services § Access from ABL 23 11. 3
Integrations: Open. Edge – Corticon integration: ABL API 11. 3 Establish connection with decision service Call decision service Work with the rule execution messages 24
Productivity
Custom Project types 11. 4 11. 2 11. 0 Productivity ABL Scratchpad 26 Organize USINGs
Productivity: Custom Project Types 11. 0 § Open. Edge Project is facet based • Specific project type for each development domain • Ability to create custom project types • Advantages – Provides better visibility and organization of code – Tailored functionality based on the project type Different Project Types 10. 2 B • App. Server 11. 0 11. 2 • Web. Speed • GUI for. NET • Dynamics • Static web • Ch. UI • REST • Mobile 27 11. 4, 11. 6 • ABLUnit • ABL Web App • Data Object
Productivity: ABL Scratchpad 11. 2 § ABL Scratchpad Menu: Window→ Show View→ ABL Scratchpad • Experiment your new logic without creating any new ABL file • Keeps your project clean 28
Productivity: Organize USINGs 11. 4 § Organize USING Statements Preferences: Progress Open. Edge → Advanced → USING Statements • Eliminates duplicate and removes unused USING statements • Expands USING Statements to fully qualified type • Sort and group USING statements • Preferences to suite your styles Menu: Source → Organize USING Statements (Ctrl+Shift+O) 29
Enhancing ALM capabilities
ABLUnit 11. 6 11. 5 11. 4 Enhancing ALM capabilities ABLDoc 31 Profiler support from PDS OE
Enhancing ALM capabilities: ABLUnit 11. 4 What Features § An unit testing framework for writing unit tests for ABL code § Supports both procedural and class based test cases Why? § Rich set of Assert APIs § Verify expected functionality • Open. Edge. Core. Assert, Open. Edge. Core. Assertion. Assert. Object, Open. Edge. Core. Assertion. Assert. File, Open. Edge. Core. Assertion. Assert. Error, Open. Edge. Core. Assertion. Assert. Json § To eliminate regressions How? § Annotation based § Same as all other Unit testing tools § Support from command line and Ant task • Useful for integrating with build system 32
Enhancing ALM capabilities: Sample ABLUnit Test Class 11. 4 § ABL Test class § ABL Class CLASS Temparature. Converter: CLASS Temparature. Converter. Test: @Test. /* Purpose: The method computes the Celsius for the given Fahrenheit value. METHOD PUBLIC VOID test. Pass. F 2 C ( ): Assert: Equals(37. 77, Temparature. Conversion : Fahrenheit 2 Celsius(100)). Notes: This method returns the value which is truncated to 2 digit after decimal point. */ RETURN. METHOD PUBLIC STATIC DECIMAL Fahrenheit 2 Celsius (INPUT f AS DECIMAL): END METHOD. DEFINE VARIABLE c AS DECIMAL NO-UNDO. @Test. c = (f - 32) * 5 / 9. METHOD PUBLIC VOID test. Fail. F 2 C( ): Assert: Not. Equals(50, Temparature. Conversion : Fahrenheit 2 Celsius(100)). RETURN TRUNCATE(c, 2). END METHOD. RETURN. END CLASS. END METHOD. END CLASS. 33
Enhancing ALM capabilities: ABLUnit view 11. 4 Bar is green if all tests Import/Export Pass, red otherwise results This test passed Time taken to run This test failed the test Error raised Failed test reason 34 Only Rerun Failures tests Test Result history
Enhancing ALM capabilities: ABLDoc 11. 5 What Features § Tool for generating API documentation in HTML format § Annotation in comments • Why? § § Easier understanding of code Generates HTML output • § Provides details on classes, procedures How? § § Based on the ABL comments § Generate documentation as part of your build process Extensibility • 35 Change the template - footer, header information, CSS to suite your branding Ant support • § Can generate from project or automatically from ANT Parse the code for author, date of creation, information about input/output Write code to support for custom formats (eg PDF)
Enhancing ALM capabilities: ABLDoc 11. 5 36
Enhancing ALM capabilities: ABL Profiler in PDS OE 11. 6 § Introduced in 9. 0 (-profile) § Tightly integrated with PDS OE in 11. 6 § Execution time of modules with micro second precision § Complete tracing information of entire session Most expensive § Per-Line execution times lines No. of times called 37 Percentage of time taken
To Conclude – Why should you be on 11. 6? Complete support for PASOE Capabilities to test and profile your applications 64 bit support Full support for Mobile and REST development Improved server support 38