You are on page 1of 106

Progress User Group Sessions

Rob Marshall
Sr. Solutions Consultant
April, 2007

Agenda

Introduction
Modernizing the UI / ProDataSets

Improving the Look and Feel of your OpenEdge Application

2007 Progress Software Corporation

Who am I ?

Been using the Product since v2.3G


Worked for End-Users / APs and Progress
Field Services

Email: rmarshal@progress.com

Improving the Look and Feel of your OpenEdge Application

2007 Progress Software Corporation

Shameless plug

Improving the Look and Feel of your OpenEdge Application

2007 Progress Software Corporation

Agenda

Introduction
Modernizing the UI / ProDataSets

Improving the Look and Feel of your OpenEdge Application

2007 Progress Software Corporation

Modernizing UI

Why Do It
Options For It
Examples of It

Improving the Look and Feel of your OpenEdge Application

2007 Progress Software Corporation

ProDataSets

Overview of a ProDataSet
How to Use Them
Advanced Topics

Improving the Look and Feel of your OpenEdge Application

2007 Progress Software Corporation

Improving the Look and Feel of your OpenEdge Application

2007 Progress Software Corporation

Improving the Look and Feel of your


OpenEdge Application
The OpenEdge User Interface
Rob Marshall
Sr. Solutions Consultant
April, 2007

Agenda

Introduction
Windows XP Theme Support
4GL Only Modifications
Use of ActiveX Controls
Examples of applications

Improving the Look and Feel of your OpenEdge Application

10 2007 Progress Software Corporation

Your Opportunities
Application requirements heard from our Customers

1.

More Compelling User Interface


Application needs features with sizzle

2.

Better Integration Strategy


More open, inexpensive, repeatable and flexible

3.

More Agile, Flexible, Easily Modifiable Application


Easy to add new features and functionality

4.

Disconnected / Remote Access Strategy


On-road sales reps., local caching etc.

5.

Better Deployment, Servicing System


Deploy to large number of users, easily pinpoint service difficulties

Improving the Look and Feel of your OpenEdge Application

11 2007 Progress Software Corporation

In Addition to Sizzle

A competitive UI provides the user with a high


level of

Performance
Robustness
Usability
Ergonomy

and supports the user in their work


Workflow

Improving the Look and Feel of your OpenEdge Application

12 2007 Progress Software Corporation

OpenEdge UI possibilities

The most common UI solutions:


OpenEdge ChUI
OpenEdge GUI
Microsoft .NET GUI
Web Browser Interfaces
Java GUI

Improving the Look and Feel of your OpenEdge Application

13 2007 Progress Software Corporation

OpenEdge UI possibilities
Technology

Pros

Cons

OpenEdge ChUI

ABL

Simple UI delivers
better
performance and
productivity

No sizzle

OpenEdge GUI

ABL
WebClient

Full MS Desktop
support
Most common
graphic features

Low sizzle

.NET GUI
OpenClient

Full MS Desktop
support
Full sizzle

Requires
Microsoft .NET
technology
.NET-specific
knowledge
required

Full MS Desktop
support
Medium sizzle

Microsoft .NET GUI

Java GUI

AWT, Swing, SWT


OpenClient

Improving the Look and Feel of your OpenEdge Application

Requires Java
technology
Java-specific
knowledge
required

14 2007 Progress Software Corporation

Web Interfaces: (D)HTML


WebSpeed, JavaScript, CSS, XML, php/perl/python, asp/jsp

Pros
Zero footprint
Instant Updates
Run anywhere / OS Support
Reads vs. Writes
AJAX / Adobe Flex:
Technology Improvements

Cons
Technologies (multiple)
Browser Support IE6, IE7,
Firefox, Mozilla, Opera, etc.
Support & Troubleshooting
Client side issues
Firewalls
Norton / Software

Browser Feature Support


Modal dialogues

Performance for Data Entry


Applications
Desktop Integration
Workflow

Improving the Look and Feel of your OpenEdge Application

15 2007 Progress Software Corporation

Agenda

Introduction
Windows XP Theme Support
4GL Only Modifications
Use of ActiveX Controls
Examples of applications

Improving the Look and Feel of your OpenEdge Application

16 2007 Progress Software Corporation

The OpenEdge GUI today ...

Out-of-the-box support for Win95 look

What are the differences between the Win95 and


WinXP looks?

Improving the Look and Feel of your OpenEdge Application

17 2007 Progress Software Corporation

The OpenEdge GUI today ...

Some of these differences can be solved by


using a manifest file
KBase solution P46584
How to get the Windows XP look & feel

OpenEdge 10.1A
Support for rounded rectangles, dual image
buttons, browses and more can be XPcompliant
Manifest file active by default
Improving the Look and Feel of your OpenEdge Application

18 2007 Progress Software Corporation

Windows Classic and XP Looks

Windows
Classic Look

Windows
XP Look

Improving the Look and Feel of your OpenEdge Application

19 2007 Progress Software Corporation

Windows XP Look
Manifest file

XML file
Version 6.0 of common controls library
CommCtrl6
Provides XP look for standard and common
controls

Application-specific
Only recognized by Windows XP

Improving the Look and Feel of your OpenEdge Application

20 2007 Progress Software Corporation

Windows XP Look
Manifest file in $DLC/bin

For OpenEdge GUI client:


prowin32.exe.manifest

For WebClient:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>


<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="10.0.0.0"

prowc.exe.manifest

processorArchitecture="X86"
name="Progress OpenEdge"
type="win32"
/>
<description>Progress</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
</assembly>

Improving the Look and Feel of your OpenEdge Application

21 2007 Progress Software Corporation

Windows XP Look
Windows classic style

Improving the Look and Feel of your OpenEdge Application

22 2007 Progress Software Corporation

Windows XP Look
Windows XP style

Improving the Look and Feel of your OpenEdge Application

23 2007 Progress Software Corporation

OpenEdge 10.1A Support for XP Look

Buttons with images


Single image vs. dual image borders

NO-FOCUS and FLAT-BUTTON buttons


Browses
Rectangles
No change unless new attributes are used
GROUP-BOX or ROUNDED

New WINDOW-SYSTEM value


Improving the Look and Feel of your OpenEdge Application

24 2007 Progress Software Corporation

Agenda

Introduction
Windows XP Theme Support
4GL Only Modifications
Use of ActiveX Controls
Examples of applications

Improving the Look and Feel of your OpenEdge Application

25 2007 Progress Software Corporation

4GL (ABL) Enhancements Only

Improving the Look and Feel of your OpenEdge Application

26 2007 Progress Software Corporation

4GL (ABL) Enhancements Only

Colors, Pictures, Labels


Move Save buttons to a Toolbar structure
Replace buttons with Tab Folder
Replace Browse & Selection List with a pure
4GL TreeView

Improving the Look and Feel of your OpenEdge Application

27 2007 Progress Software Corporation

Agenda

Introduction
Windows XP Theme Support
4GL Only Modifications
Use of ActiveX Controls
Examples of applications

Improving the Look and Feel of your OpenEdge Application

28 2007 Progress Software Corporation

ActiveX to the rescue?


Been there, done that

What about DLL Hell?


Deployment tools such as WebClient help out

What about performance?


Several enhancements in subsequent
OpenEdge 10 releases

What about stability?


Several enhancements in subsequent
OpenEdge 10 releases

What about Microsofts ActiveX policy?


Improving the Look and Feel of your OpenEdge Application

29 2007 Progress Software Corporation

ActiveX to the rescue?


Some common pitfalls

Make sure you clean everything up ible!!


d
e
Use the controls in a generic n
way
r
c
i
e
Consider the next version
of the control
b
n
a
c you cant install the
Do not use themltswhen
u
s
controls on
the
client PCs
e
r
e
h
t
t
Bu

Improving the Look and Feel of your OpenEdge Application

30 2007 Progress Software Corporation

Progress Container Window &


CodeJock TaskPanel Control

Improving the Look and Feel of your OpenEdge Application

31 2007 Progress Software Corporation

MDI & Multiple CodeJock Controls

Improving the Look and Feel of your OpenEdge Application

32 2007 Progress Software Corporation

AutoEdge - Progress Enhanced GUI

Improving the Look and Feel of your OpenEdge Application

33 2007 Progress Software Corporation

Agenda

Introduction
Windows XP Theme Support
4GL Only Modifications
Use of ActiveX Controls
Examples of applications

Improving the Look and Feel of your OpenEdge Application

34 2007 Progress Software Corporation

Real Application Examples

Improving the Look and Feel of your OpenEdge Application

35 2007 Progress Software Corporation

Real Application Examples

Improving the Look and Feel of your OpenEdge Application

36 2007 Progress Software Corporation

AXIS AXIOM/mx

Improving the Look and Feel of your OpenEdge Application

37 2007 Progress Software Corporation

Real Application Examples

Improving the Look and Feel of your OpenEdge Application

38 2007 Progress Software Corporation

Real Application Examples

Improving the Look and Feel of your OpenEdge Application

39 2007 Progress Software Corporation

Some best practices ...

Separate the UI logic from the UI


The MVC-design pattern can help you prepare
for future changes to your UI

Improving the Look and Feel of your OpenEdge Application

40 2007 Progress Software Corporation

Some best practices ...

Create reusable component wrappers

Control commands in one central place


Easier to cope with new versions
Hides possible complexity
Helps to avoid pitfalls mentioned earlier

Improving the Look and Feel of your OpenEdge Application

41 2007 Progress Software Corporation

In Summary

You can achieve a competitive

UI with OpenEdge
At a relatively low cost ...
As an interim step that can last
a number of years
Without the need for a complete
re-design of your App!

Improving the Look and Feel of your OpenEdge Application

42 2007 Progress Software Corporation

For More Information

PSDN - Whitepapers, Recordings, Code Samples


Enhancing the OpenEdge GUI
Series of 8 papers, recordings, samples

Exchange 2006 - MOVE-5: Improving the look and feel of


your OpenEdge Application
AutoEdge Reference Application
Welcome to the Complete AutoEdge Kit
Guided Tour

CodeJock Xtreme SuitePro www.codejock.com

Improving the Look and Feel of your OpenEdge Application

43 2007 Progress Software Corporation

Questions?

Improving the Look and Feel of your OpenEdge Application

44 2007 Progress Software Corporation

Thank you for


your time

Improving the Look and Feel of your OpenEdge Application

45 2007 Progress Software Corporation

Improving the Look and Feel of your OpenEdge Application

46 2007 Progress Software Corporation

ProDataSets

Rob Marshall
Sr. Solutions Consultant
April, 2007

Agenda

Introduction
What is a ProDataSet
How to Populate / Navigate them
Advanced Usage

Improving the Look and Feel of your OpenEdge Application

48 2007 Progress Software Corporation

Benefits of ProDataSets

Define structure separate from source data


Define relationships among multiple structures
Pass as single parameter
Pass to/from .NET or other open technologies

Improving the Look and Feel of your OpenEdge Application

49 2007 Progress Software Corporation

Agenda

Introduction
What is a ProDataSet
How to Populate / Navigate them
Advanced Usage

Improving the Look and Feel of your OpenEdge Application

50 2007 Progress Software Corporation

What is a ProDataSet?

ProDataSet

Data-Source

Temp-table
A

H
1

Data-Source

Improving the Look and Feel of your OpenEdge Application

Data-Relations
Temp-table
A4

D6

A3

5D

D2

4G

E1

3H

51 2007 Progress Software Corporation

ProDataSet Steps
Define
Build

Update
Clean Up
Improving the Look and Feel of your OpenEdge Application

Define Objects

Client & Server

Pass Parameter

Client & Server

Populate

Server

Collect Changes

Client

Pass Parameter

Client & Server

Save Changes

Server

Merge Changes

Client

Clean Up

Client & Server


52 2007 Progress Software Corporation

Agenda

Introduction
What is a ProDataSet
How to Populate / Navigate them
Advanced Usage

Improving the Look and Feel of your OpenEdge Application

53 2007 Progress Software Corporation

Building a ProDataSet

Steps:
1. Define temp-tables
2. Define ProDataSet
3. Define and Attach DataSources
4. Populate the ProDataSet
5. Clean Up

Improving the Look and Feel of your OpenEdge Application

54 2007 Progress Software Corporation

Defining temp-tables
DEFINE TEMP-TABLE temp-table-name
ttOrder

ttOrderLine

Improving the Look and Feel of your OpenEdge Application

55 2007 Progress Software Corporation

Defining a ProDataSet
Steps:
1. Name the ProDataSet and specify
the temp-tables
2. Define data-relations

Improving the Look and Feel of your OpenEdge Application

56 2007 Progress Software Corporation

Naming a ProDataSet
DEFINE DATASET dataset-name
FOR buffer-name
dsOrder
ProDataSet
ttOrder
Temp-Table
buffer

Improving the Look and Feel of your OpenEdge Application

57 2007 Progress Software Corporation

Specifying data-relations
DEFINE DATASET dataset-name FOR temp-tables
DATA-RELATION data-relation-name FOR temp-tables
RELATION-FIELDS (parent-field, child-field).
dsOrderOrderLine
ttOrder

Parent
drOrderOrderLine
ttOrderLine
Child

Improving the Look and Feel of your OpenEdge Application

58 2007 Progress Software Corporation

Defining data-sources
DEFINE DATA-SOURCE data-source-name
FOR source-buffer.
Data-sources:
dsOrderOrderLine
srcOrder

ttOrder
drOrderOrderLine
ttOrderLine

srcOrderLine

Improving the Look and Feel of your OpenEdge Application

59 2007 Progress Software Corporation

Attaching data-sources
BUFFER buffer-name:ATTACH-DATA-SOURCE(datasource-handle).
dsOrderOrderLine
ttOrder
srcOrder
drOrderOrderLine
ttOrderLine

srcOrderLine

Improving the Look and Feel of your OpenEdge Application

60 2007 Progress Software Corporation

Summary: Definitions and data-sources


Define temp-tables

Define data sources

Define a ProDataSet

Attach data-sources

Define a query

Q
Improving the Look and Feel of your OpenEdge Application

61 2007 Progress Software Corporation

Populating a ProDataSet

Steps:
1. Define an Optional Query
2. Set the FILL Mode
3. Perform the FILL Operation

Improving the Look and Feel of your OpenEdge Application

62 2007 Progress Software Corporation

Defining a Query
DEFINE QUERY query-name
FOR table-name.
Table

Query

Improving the Look and Feel of your OpenEdge Application

63 2007 Progress Software Corporation

Populating the ProDataSet


DATASET dataset-name:FILL().
dsOrderOrderLine

FILL

ttOrder
B

H
1

FILL

Improving the Look and Feel of your OpenEdge Application

drOrderOrderLine
A4
B
C
ttOrderLine

D6

A3

5D

D2

4G

E1

3H

64 2007 Progress Software Corporation

Controlling the FILL operation


FILL-MODE = xxx
DATASET dataset-name:FILL().
dsOrderOrderLine

FILL

B
C
ttOrder

H
1

FILL

Improving the Look and Feel of your OpenEdge Application

drOrderOrderLine
A4
B
C
ttOrderLine

D6

A3

5D

D2

4G

E1

3H

65 2007 Progress Software Corporation

FILL Modes

FILL

Results

Merge (Default)
1

ABC

9.95

DEF

5.34

GHI

2.03

JKL

3.57

ABC

9.95

DEF

5.34

GHI

2.03

ABC

7.75

JKL

3.57

Original Data

New Data

Append

No-Fill

ABC

9.95

ABC

9.95

DEF

5.34

DEF

5.34

GHI

2.03

GHI

2.03

REPLACE

Empty
1

ABC

7.75

JKL

3.57

Improving the Look and Feel of your OpenEdge Application

ABC

7.75

DEF

5.34

GHI

2.03

JKL66 2007
3.57 Progress Software Corporation

Using FILL on an individual buffer

BUFFER ttOrderLine:FILL().
dsOrderOrderLine
ttOrder

Do not fill
parent
buffer

Improving the Look and Feel of your OpenEdge Application

H
1

ttOrderLine
A4

D6

A3

5D

D2

4G

E1

3H

Fill this buffer


and anything
below it.

67 2007 Progress Software Corporation

Implicit Query
ProDataSet
Parent
Temp-Table
1
A
B
C
D
Parent Table

Child Temp-Table
Child Table

A4

D6

A4

A3

D2

E1

A4

5D
B

D6

A3

4G
B

5D

D2

3H
E

F
2

D6

F
1

Improving the Look and Feel of your OpenEdge Application

4G
A4

D6

68 2007 Progress Software Corporation

Loading all child records


Ignore data relation
dsCustState
drCustState

ttCustomer

H
1

A4

ttState
B

D6

A3

5D

D2

4G

E1

3H

Improving the Look and Feel of your OpenEdge Application

69 2007 Progress Software Corporation

Changing FILL behavior

Server
How to load
records into
the ProDataSet?

Improving the Look and Feel of your OpenEdge Application

70 2007 Progress Software Corporation

FILL-WHERE-STRING is a query attribute

Buffer
QUERY:FILL-WHERE-STRING

Improving the Look and Feel of your OpenEdge Application

71 2007 Progress Software Corporation

Cleaning Up

dsOrderOrderLine
ttOrder
drOrderOrderLine
ttOrderLine

Improving the Look and Feel of your OpenEdge Application

72 2007 Progress Software Corporation

Static vs. Dynamic ProDataSets


Static

Dynamic
Run Time

Compile Time
DEFINE DATASET
DEFINE RELATIONS
ATTACH DATA-SOURCES

Improving the Look and Feel of your OpenEdge Application

CREATE DATASET
SET-BUFFERS
ADD-RELATIONS
CREATE DATA-SOURCES
ADD-SOURCE-BUFFERS
ATTACH-DATA-SOURCES

73 2007 Progress Software Corporation

Agenda

Introduction
What is a ProDataSet
How to Populate / Navigate them
Advanced Usage

Improving the Look and Feel of your OpenEdge Application

74 2007 Progress Software Corporation

Updating data

1. Name the before-table

User makes changes to


data

ttOrderBefore

3. Extract the changes


1

changeDataset
A4
B
C
D6

2. Turn on TRACKINGCHANGES
TRACKING-CHANGES = TRUE
1

A4

D6

A3

5D

D2

4G

E1

3H

Temp-table

Improving the Look and Feel of your OpenEdge Application

A3

5D

4. Save changes
1

A4

D6

75 2007 Progress Software Corporation

Before-tables and after-tables


ProDataSet
Before-tables

After-tables
1

ttOrder
B

ttOrderBefore

A4
B
C
ttOrderLine

D6

ttOrderLineBefore

A3

5D

D2

4G

E1

3H

Improving the Look and Feel of your OpenEdge Application

A4

D6

76 2007 Progress Software Corporation

Using a before-table
DEFINE TEMP-TABLE ttOrderLine
BEFORE-TABLE ttOrderLineBefore
OpenEdge creates
the before table.

You name the


before table.
ttOrderLineBefore

Improving the Look and Feel of your OpenEdge Application

77 2007 Progress Software Corporation

TRACKING-CHANGES

ProDataSet

TRACKINGCHANGES =
FALSE

Temp-table
A

H
1

Data-Relations
Temp-table
A4

D6

A3

5D

D2

4G

E1

3H

TRACKINGCHANGES =
TRUE
Improving the Look and Feel of your OpenEdge Application

78 2007 Progress Software Corporation

When to use TRACKING-CHANGES


1. FILL the ProDataSet.
1

A4

D6

A3

5D

D2

4G

E1

3H

2. Set TRACKING-CHANGES = TRUE.

3. Update the ProDataSet.


1

4. Set TRACKING-CHANGES = FALSE.


Improving the Look and Feel of your OpenEdge Application

79 2007 Progress Software Corporation

Transaction scope

FOR EACH ttOrderLineBefore TRANSACTION:


BUFFER ttOrderLineBefore:SAVE-ROW-CHANGES().
END.

Improving the Look and Feel of your OpenEdge Application

80 2007 Progress Software Corporation

Reading XML Schema

XML Schema

ProDataSet definition

Xxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx

Improving the Look and Feel of your OpenEdge Application

81 2007 Progress Software Corporation

Passing a ProDataSet BY VALUE


Two copies of the ProDataSet
Calling procedure

Called Procedure

COPY

Improving the Look and Feel of your OpenEdge Application

82 2007 Progress Software Corporation

Passing a ProDataSet BY-REFERENCE


One copy of the ProDataSet
Calling Procedure

Called Procedure

dsorder

Reference the ProDataSet in the Calling Procedure

Improving the Look and Feel of your OpenEdge Application

83 2007 Progress Software Corporation

Local procedures
Pass ProDataSet
between client
side procedures

Improving the Look and Feel of your OpenEdge Application

Pass ProDataSet
between server
side procedures

84 2007 Progress Software Corporation

When OpenEdge passes a ProDataSet


BY-REFERENCE
Client side Callbacks
such as:

Server side Callbacks


such as:

QUERY-OFF-END

BEFORE-FILL
AFTER-FILL

Improving the Look and Feel of your OpenEdge Application

85 2007 Progress Software Corporation

Location of code for BY-REFERENCE


Calling Procedure

Called Procedure

dsorder

RUN calledProc OUTPUT


DATASET pds BY-REFERENCE.

DEFINE ProDataSet
REFERENCE-ONLY
DEFINE temp-tables
REFERENCE-ONLY

Improving the Look and Feel of your OpenEdge Application

86 2007 Progress Software Corporation

Minimizing Overhead
Calling Procedure

Called Procedure

SCHEMA-MARSHAL = NONE

Schema Must Be Defined in the


Called Procedure

SCHEMA-MARSHAL = MIN

Only Field Names, Datatypes


and Extents are Passed

Improving the Look and Feel of your OpenEdge Application

87 2007 Progress Software Corporation

Client-Side Processing
Client

Server

Define

Temp-Tables
Define ProDataSet
No Database References
Run Server-Side Processing and
Pass ProDataSet

Improving the Look and Feel of your OpenEdge Application

88 2007 Progress Software Corporation

Server-Side Processing
Client

Server

Define

Temp-Tables
Define ProDataSet
No Database References
Run Server-Side Processing

Define

Temp-Tables
Define ProDataSet
Define and Attach Data-Sources
Define and Prepare Queries
FILL ProDataSet
Return ProDataSet to Client

Use

Data in Populated TempTables

Improving the Look and Feel of your OpenEdge Application

89 2007 Progress Software Corporation

Extending the ProDataSet

Using XML

Improving the Look and Feel of your OpenEdge Application

90 2007 Progress Software Corporation

Automating data exchange

WRITE-XML

Other
Applications

READ-XML

Improving the Look and Feel of your OpenEdge Application

91 2007 Progress Software Corporation

Round trip scenario


customer

8.

order

1.
4GL Order
Processing
Application

2.

7.
3.
5.

ProDataSet
Temp-tables


invoice

6.

CreditCheck
file

4.

Credit Bureau
application
Database
Improving the Look and Feel of your OpenEdge Application

92 2007 Progress Software Corporation

Data structures

Business
Services work
with Temp-tables
and ProDataSets

READ- and WRITEXML work with


unmanaged data
sources
Improving the Look and Feel of your OpenEdge Application

93 2007 Progress Software Corporation

Writing XML documents


ProDataSet data

XML document
Xxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx

Improving the Look and Feel of your OpenEdge Application

94 2007 Progress Software Corporation

XML example

<?xml version="1.0"?>
<Product>
<model>SUV123</model>
<dealer>Jones Automotive</dealer>
<price>23,998</price>
</Product>

Improving the Look and Feel of your OpenEdge Application

95 2007 Progress Software Corporation

Relational data

Order
orderline
orderline
Order
orderline
orderline
orderline
Improving the Look and Feel of your OpenEdge Application

96 2007 Progress Software Corporation

Send schema and data in one file

Sending
party

(OpenEdge)

Improving the Look and Feel of your OpenEdge Application

Receiving
party

97 2007 Progress Software Corporation

Send schema and data separately


Sending
party

XML schema

Receiving
party

(OpenEdge)

XML data

Improving the Look and Feel of your OpenEdge Application

98 2007 Progress Software Corporation

Writing ProDataSet definitions to xsd


Order.xsd
Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx

ProDataSet
WRITE-XML

schema-location

Order.xml
Xxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx

Improving the Look and Feel of your OpenEdge Application

99 2007 Progress Software Corporation

Writing schema in-line with data

XML file
XML Schema
WRITE-XML

xxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxx
xxx
Xxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx

XML data

Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx

Improving the Look and Feel of your OpenEdge Application

100 2007 Progress Software Corporation

Write-before-image
datasetChanges
XML file
WRITE-XML

Xxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx

with write-beforeimage option

After-image data
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx

Before-image data
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxxxxxxx
Errors

Improving the Look and Feel of your OpenEdge Application

101 2007 Progress Software Corporation

XML format for changes

OpenEdge pre-defines
schema for datasetChanges

Improving the Look and Feel of your OpenEdge Application

102 2007 Progress Software Corporation

For More Information

PSDN - Whitepapers, Recordings, Code


Samples
AutoEdge Reference Application
Welcome to the Complete AutoEdge Kit
Guided Tour

Improving the Look and Feel of your OpenEdge Application

103 2007 Progress Software Corporation

Questions?

Improving the Look and Feel of your OpenEdge Application

104 2007 Progress Software Corporation

Thank you for


your time

Improving the Look and Feel of your OpenEdge Application

105 2007 Progress Software Corporation

Improving the Look and Feel of your OpenEdge Application

106 2007 Progress Software Corporation

You might also like