INNOV1: OpenEdge 10.1A Overview - PowerPoint PPT Presentation

1 / 50
About This Presentation
Title:

INNOV1: OpenEdge 10.1A Overview

Description:

DEFINE VARIABLE MyUUID as RAW. DEFINE VARIABLE vGUID as CHARACTER. MyUUID = GENERATE-UUID. ... Create-field arg for SAVE-ROW-CHANGES becomes list ... – PowerPoint PPT presentation

Number of Views:1232
Avg rating:3.0/5.0
Slides: 51
Provided by: salvado3
Category:

less

Transcript and Presenter's Notes

Title: INNOV1: OpenEdge 10.1A Overview


1
INNOV-1 OpenEdge 10.1A Overview
Salvador Viñals
Consultant Product Manager
2
OpenEdge 10.1A Focus
  • Improve the productivity of OpenEdge
  • to provide our partners significant competitive
    advantage through the software they develop and
    deploy
  • New and enhanced tools for developing OpenEdge
    applications
  • Enhancements to platform infrastructure and code
    management to make applications more
    interoperable in production

3
Agenda
  • Packaging and Installation
  • Data Management
  • OpenEdge Adapter for SonicMQ
  • Language, Open Client,
  • Development Products

This presentation includes annotations with
additional, complementary information
4
OpenEdge Adapter for SonicMQ
A component rather than a product
  • OpenEdge 10.0A/B
  • No need to order adapter separately
  • Available with Client Application Server
    products
  • Available for download
  • New in OpenEdge 10.1A
  • Now available with Database Server products as
    well
  • SonicMQ ClientConnect
  • SonicMQ ServerConnect
  • SonicMQ BrokerConnect

5
Auditing
  • Audit Functionality, Policy Manager and Archiving
  • Packaged with all OpenEdge RDBMS products
  • Audit Policy Maintenance
  • Packaging dependent on product
  • Complete, GUI only, back-end only

6
OpenEdge Distribution
  • Product CD
  • Samples and tutorial files moved to separate PDF
    CD
  • Product DVD
  • All platforms on one DVD
  • Install from specific directory on DVD
  • Electronic Software Distribution (ESD)

7
Installation
  • Embeddable OpenEdge installation
  • Custom installs can now be silent
  • Updated install screens
  • Streamlined flow
  • Options to skip Sonic, WebSpeed
  • Online help during installation
  • Faster installation. Smaller kit.
  • New compression algorithm
  • License Update Tool
  • New serial number supported

8
What do Customers Say
  • We were very impressed with the silent install
    process. It worked flawlessly and is a great
    time saver during install.
  • James Ballentine
  • Shaker Computer Management Services, Inc.

9
Agenda
  • Packaging and Installation
  • Data Management
  • OpenEdge Adapter for SonicMQ
  • Language, Open Client,
  • Development Products

This presentation includes annotations with
additional, complementary information
10
Data Management
OpenEdge RDBMS, OpenEdge SQL, DataServers,
ODBC/JDBC
  • OpenEdge RDBMS and OpenEdge SQL
  • Auditing
  • Easy, secure and performant way to meet
    regulatory requirements
  • Multi-threaded and online utilities
  • Faster less time to perform maintenance
  • Increase high availability More maintenance
    utilities online
  • Self-sustaining features DBAs can focus on
    strategic work
  • OpenEdge SQL
  • Java Transaction API (JTA) support and Type 4
    drivers First class data integration

11
Data Management
OpenEdge RDBMS, OpenEdge SQL, DataServers,
ODBC/JDBC
  • OpenEdge DataServers
  • Automatically populate a TempTable object using a
    SQL result-set with enhanced RUN STORED-PROC
  • JDBC Drivers
  • Simplified installation and maintenance Type-4
    JDBC drivers do not require OpenEdge client
  • Improved performance with native wire protocol
    communications

RUN STORED-PROC Send-Sql-Statement
LOAD-RESULT-INTO ttHandle ("SELECT FROM
CUSTOMER").
12
Data Management
OpenEdge RDBMS, OpenEdge SQL, DataServers,
ODBC/JDBC
  • ODBC Drivers
  • Extended interoperability and simpler
    configuration with Unicode support
  • Improved performance with native wire protocol
    communications
  • Platforms
  • Greater choice of low cost platforms
  • 64Bit Linux x86 (AMD EM64T)
  • RedHat EL and Novell SUSE Enterprise
    distributions

13
Agenda
  • Packaging and Installation
  • Data Management
  • OpenEdge Adapter for SonicMQ
  • Language, Open Client,
  • Development Products

This presentation includes annotations with
additional, complementary information
14
OpenEdge Adapter for SonicMQ
Support for Messaging Unified Domains
  • Unified domains merge point-to-point (PTP) and
    publish/subscribe (PUB/SUB) into a single/common
    model
  • The application can use either without code
    changes
  • Easier to use
  • More generic and reusable code

15
Agenda
  • Packaging and Installation
  • Data Management
  • OpenEdge Adapter for SonicMQ
  • Language, Open Client,
  • Development Products

This presentation includes annotations with
additional, complementary information
16
Language
  • OpenEdge ABL
  • Object-orientation
  • Read and Write XML Methods
  • Parameter Passing
  • SAX-WRITER
  • XML Schema Validation
  • Short-hand syntax ()
  • too much to list

17
OpenEdge ABL
ABL Advanced Business Language
  • Progress 4GL renamed to OpenEdge ABL
  • OpenEdge ABL takes the Progress 4GL to a new
    level
  • Constant evolution
  • Latest technical innovations
  • Unparalleled openness and productivity
  • Only business-oriented major development language
  • OpenEdge ABL Bigger, better, stronger, faster!!

18
Introducing Objects
OpenEdge 10.1 introduces formal object-oriented
programming through language extensions that
support user-defined classes. User-defined
classes allow you to define objects, with methods
and data, and interfaces for building business
applications.
19
Some Object-orientation (OO) Benefits
  • Ease hire new developers
  • Helps you build OpenEdge Reference Architecture.
    More closely support SOA.
  • Natural integration with
  • modeling tools
  • other OO platforms

20
InteroperabilityProcedures and Classes
Procedural available and fully supported
  • Procedures
  • Can NEW a CLASS
  • Can DELETE an object
  • Invoke methods using object reference
  • Can pass object reference as a parameter
  • Classes
  • Can RUN a procedure
  • Can invoke internal procedure / UDF using
    procedure handle

21
New Read and Write XML Methods
One statement replace tens/hundreds of lines of
code
  • READ-XML and WRITE-XML methods
  • Allow ABL structures to be converted to and from
    XML documents
  • Data .xml
  • Schema .xsd
  • Supported structures
  • ProDataSet
  • Temp-Tables
  • Buffers

ttItem
.xsd
.xsd
.xml
.xml
22
What do Customers Say
  • The power of the Temp Table / ProDataSet
    READ-XML / WRITE-XML is absolutely incredible.
  • This has increased my productivity at least one
    order of magnitude and has made our application
    incredibly more flexible.
  • Jeffrey Kodman
  • Manuvis

23
WRITE-XML() Syntax
DATASET dsOrderWRITE-XML ("FILE",
/ target-type /
"pOrderWriteXMLSchema.xml", / file-name /
TRUE, / formatted
/ ?, /
encoding / ?,
/ schema location /
TRUE, / write schema /
?, / min schema /
TRUE). / write
before image /
  • Easier than SAX and DOM
  • No need to write your own code using DOM or SAX
  • Supports in and out of XML to ABL objects
  • XML data, XML Schema (.xsd)
  • Both
  • READ-XML(), READ-XMLSCHEMA() and
    WRITE-XMLSCHEMA() not shown here

24
BY-REFERENCE parameter passing
  • New BY-REFERENCE for Temp-Table parameters
  • New REFERENCE-ONLY, BIND keywords
  • UDFs support parameter passing for DATASET
    DATASET-HANDLE
  • Less memory resources
  • Better performance

25
SAX-WRITER object
  • Simple API for XML (SAX)
  • Stream forward only
  • Event driven API. Application logic Callbacks
  • SAX-WRITER
  • Allows to stream out XML
  • Significant reduction memory requirements
  • Supports handling of very large XML documents
  • Write tags automatically
  • Checks XML document is well-formed

CREATE SAX-WRITER handle IN WIDGET-POOL
pool-name NO-ERROR handle attribute
method
26
XML Schema validation
  • OpenEdge 10.1A use XSD
  • Verify that data exchanged adheres to an agreed
    upon format
  • Validation occurs at runtime using the supplied
    XML Schema
  • Works with DOM and SAX

hXdocADD-SCHEMA-LOCATION("http//www.example.com"
, "com.xsd").
hSaxReaderADD-SCHEMA-LOCATION("http//www.example
.com", "com.xsd").
27
Short-hand syntax () for dynamic references
  • Write much less code
  • Less error prone
  • Example
  • hbbuffer-field("cust-num")buffer-value
  • / becomes /
  • hbcust-num

28
More Good Stuff...
29
xsdto4gl utility
  • Command line utility
  • Generates an OpenEdge ABL definition from an XML
    Schema definition file (xsd)
  • Works for ProDataSet and Temp-Table
  • Generated OpenEdge ABL include definition
  • Default filename xsd filename .i extension

30
New XML attributes
  • NAMESPACE-URI, NAMESPACE-PREFIX, NESTED,
    XML-NODE-TYPE, XML-DATA-TYPE
  • Attributes added for ProDataSet, Temp-Table, and
    Buffer-Field objects
  • Syntax has also been added to static definitions
    for these objects
  • DEFINE DATASET
  • DEFINE TEMP-TABLE
  • DEFINE BUFFER

31
64bit r-code
  • On 64bit platforms
  • 64bit r-code runs faster on 64bit platforms!
  • 64bit r-code not portable to 32bit platforms, and
    vice versa
  • General OpenEdge 10 products compatibility and
    connectivity not changed
  • Client to Database one version back
  • Client to AppServer one version back/forward
  • Shared Memory client server match version
  • Auditing requires min OpenEdge 10.1A client and
    DB server

32
Connectivity/Compatibility
  • Backwards/forwards extended compatibility
  • Mixed deployment configurations
  • Allow easier, gradual upgrades and migration

Application Server
Client
Database
10
10
10
9
10
10
9
9
10
NEW in OpenEdge 10
10
10
9
9
10
9
Refer to product by product information for
further details
33
GENERATE-UUID and GUID functions
  • GENERATE-UUID function
  • Generates a universally unique identifier (UUID)
  • GUID function
  • Converts a UUID value into a globally unique
    identifier (GUID) value
  • What is the difference between UUID and GUID?

DEFINE VARIABLE MyUUID as RAW. DEFINE VARIABLE
vGUID as CHARACTER. MyUUID GENERATE-UUID. vGUID
GUID(MyUUID).
34
XP look with manifests
  • Using manifest files, OpenEdge 10.1A provides
    support for the Windows XP look (rounded corners,
    non-3D appearance) for the following widgets
  • Buttons with images
  • NO-FOCUS buttons
  • FLAT-BUTTON buttons
  • Browses
  • Status area
  • Rectangles
  • OpenEdge 10.1A installation includes the
    prowin32.exe.manifest file in the install-dir/bin
    directory (prowc.exe.manifest for WebClient)

35
Consuming Web Services enhancements
  • Improved Complex Data Support
  • ProDataSet and Temp-Table
  • Serialized as an XML document
  • Deserialize XML document
  • WSDL Analyzer will indicate if mapping is
    possible
  • Unwrapped Wrapped Document Literal
  • Simplified programming
  • Multiple simple parameters easier to work with
    than one complex document
  • Improved interoperability with ABL Web Services

36
Open Client enhancements
  • Support Java Service Data Objects
  • ProDataSets for Java
  • Schema marshalling control for reducing calls to
    AppServer
  • OpenAPI
  • Run procedures on the AppServer without a proxy
  • A set of classes used in place of generated
    proxies
  • One set of classes for .NET Open Client
  • One set of classes for Java Open Client

37
New LOG-MANAGER methods
  • WRITE-MESSAGE ()
  • CLOSE-LOG ()
  • CLEAR-LOG ()

38
BLOB upload support for WebSpeed
  • Previous OpenEdge releases introduced the BLOB
    data type and enabled WebSpeed applications to
    output BLOBs
  • OpenEdge 10.1A supports the upload of BLOBs to
    WebSpeed applications
  • No need to hand code

39
and more
  • ROW-UPDATE event
  • QUERY attribute for BUFFER
  • ATTACH-PAIRLIST attribute on BUFFER
  • Create-field arg for SAVE-ROW-CHANGES becomes
    list
  • GET-CALLBACK-PROCEDURE methods on BUFFER,
    DATASET, QUERY
  • DATA-SOURCEFILL-WHERE-STRING becomes WRITEable

40
Agenda
  • Packaging and Installation
  • Data Management
  • OpenEdge Adapter for SonicMQ
  • Language, Java Open Client,
  • Development Products

This presentation includes annotations with
additional, complementary information
41
OpenEdge Architect
Simplifies Designing, Developing, and Testing
Open Edge Architect is an integrated development
environment tailored for building applications
using an architected, business-logic centric
approach
42
OpenEdge Architect
Key Contents
  • Project Based Development
  • OpenEdge plug-ins
  • DB Navigator
  • Meta Catalog
  • Tools for Business Logic (T4BL)
  • 3rd party plug-ins
  • Provides vast array of customization options
  • Modeling, SCM, Additional languages, etc

43
OpenEdge Architect
OpenEdge Architect
44
OpenEdge Architect
  • Provides a modern, intuitive new toolset
  • Built on open tools platform
  • More productivity
  • Greater choice
  • Over 300 plug-ins available
  • Allows you to transition at your own pace
  • Learn as you go

45
In Summary
  • We just scratched the surface of whats in
    OpenEdge 10.1A
  • Dont walk, run to go get it!!

46
Questions?
47
Relevant Exchange Sessions
  • DEV-1 Introduction to Object-Oriented Language
    Concepts and Programming in OpenEdge ABL - Evan
    Bleicher
  • DEV-6 Using OpenEdge 10 to Develop Business
    Applications (advanced OO programming) - Evan
    Bleicher, Shelley Chase
  • DEV-2, DEV-3 Getting Started with OpenEdge
    Architect - Part I and Part II - Mark Hanley,
    David Lund
  • DEV-8 OpenEdge Architect - Extensibility and
    Third Party Integration - Sunil Belgaonkar, Phil
    Magnay
  • DEV-17 Effective Design and Deployment of
    OpenEdge Audit Policies -Mike Jacobs
  • MOVE-11 Using classes and procedures in OpenEdge
    10 - Bruce Gruenbaum
  • MOVE-13 Adopting OpenEdge Architect - Sunil
    Belgaonkar
  • MOVE-9 Audit Enable your Application the Easy
    Way - Anthony Swindells
  • SOA-1 Fundamentals of Service-Oriented
    Architecture - Rob Straight
  • SOA-2 OpenEdge 10.1A Adapters for SonicMQ - New
    Install, New Architecture, and New APIs - Cheryl
    Labarge
  • SOA-5 Accessing the Application Server from
    Anywhere and Everywhere -David Lund
  • ARCH-3 Context Management in the OpenEdge
    Reference Architecture - John Sadd
  • ARCH-5 Service Interfaces in Practice -
    Christian Stiller
  • ARCH-7 Integrate this! SonicMQ and the OpenEdge
    Reference Architecture - Christian Stiller
  • ARCH-8 Implementing the OpenEdge Reference
    Architecture with OpenEdge 10.1 - Eric Debeij,
    Bart Schouw

48
Thank you foryour time
49
Education / Documentation References
50
(No Transcript)
51
Addittional slides
52
Object-orientation Benefits
  • Lets you organize applications the way you
    think
  • around objects
  • Increase application robustness (strong typing)
  • More development productivity with encapsulation,
    inheritance, and polymorphism
  • Promotes reusability

53
Object-orientation Benefits
  • Helps you build OpenEdge Reference Architecture.
    More closely support SOA
  • Modular. Components. Composite applications.
  • Service contracts Interfaces
  • Ease application maintenance
  • Natural integration with
  • modeling tools
  • other OO platforms
  • Ease hire new developers

54
OO Positioning
  • When shall you consider using Classes?
  • For well defined and designed functional units
  • Not too coarse. Not too granular.
  • Useful (and easy) when called from at least three
    different modules of the application, or
    different applications
  • Need to adhere to Interfaces
  • When Procedures are best?
  • Tasks
  • Processes
  • Workflows
  • Dynamic or late bound code (not strong typed)
  • Disposable programs

55
OO Quick facts
  • Multiple rollout strategy OpenEdge 10.1A is the
    first one
  • The object-oriented extensions do not replace
    existing language constructs
  • You do not need to use OO if you do not want
  • Classes can include ON lteventgt constructs
  • 10.1A language compiler is two-pass

56
Similarities betweenClasses and Procedures

.p
.cls
57
READ-XML(), READ-XMLSCHEMA() Syntax
READ-XML ( source-type, file memptr
handle longchar , read-mode, schema-location
, override-default-mapping ,
field-type-mapping , verify-schema-mode )
APPEND, EMPTY, MERGE, REPLACE Default MERGE
READ-XMLSCHEMA ( source-type, file
memptr handle longchar ,
override-default-mapping ,
field-type-mapping , verify-schema-mode
)
IGNORE LOOSE STRICT Default LOOSE
58
OpenEdge supports DOM and SAX
59
BLOB upload support for WebSpeed
  • HTML snippet implementing a file upload with
    WebSpeed
  • ltHTMLgt
  • ltBODYgt
  • ltFORM ENCTYPE"multipart/form-data"
  • ACTION"http//ltyourhostgt/ltmsngr
    pathgt/ltmsngrgt/ping" METHOD"POST"gt
  • ltINPUT type"file" name"attachment1"gt
    ltINPUT type"submit"gt
  • lt/FORMgt
  • lt/BODYgt
  • lt/HTMLgt
  • File upload directory property
  • New get-binary-data() function wrapper for
    WEB-CONTEXT GET-BINARY-DATA method, in
  • DLC/src/web/method/cgiutils.i
Write a Comment
User Comments (0)
About PowerShow.com