the class instance in cyberspace (updated for 2011) - Omnisplaza

southdakotascrawnyΔιαχείριση Δεδομένων

29 Νοε 2012 (πριν από 4 χρόνια και 8 μήνες)

368 εμφανίσεις


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
1


Welcome to EurOmnis 2011

12th European Omnis Developer Conference






23
-
27

October 2011

Hotel Klein Zwitserland, Arnhem, the Netherlands

To honour the memory of Fred Brinkman


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
2


The Hotel

Welcome

We hope that your journey was safe and that you are looking
forward to the
replacement Euromnis Conference

as much as
we
are
. It has been a pleasure to carry forward Fred’s vision for
this year and hope that we are able to present a conference that
meets
the same high standards that Fred set in prior years.

Arrival

O
n Sunday, October
23
rd
, there will be a taxi at the Arnhem train
station that will run continuously every half hour between 15:00
and 18:00. Look for the Euromnis sign (and wait if its not the
re).

Reception

Hotel reception is open 24 hours a day and offers standard
services such as wake up calls, dry cleaning, laundry and tourist
information on the area.

Facilities

You can partake of the wellness center, swimming pool, sauna,
gym, tennis court
and other hotel amenities free of charge.
There is a golf course nearby at additional cost.

Security

The hotel has a safe in which you can keep your valuables if
necessary. Although we have the hotel to ourselves from
Sunday to Thursday morning, please d
o not leave anything of
value in your car or in your room. Do drop off your key at
reception.

The bar

You are responsible for your own private costs such as drinks
from the bar or phone calls from the room. Please put your
name on any tab you charge to y
our room. The hotel accepts
most major credit cards and you can pay when you check out.


The hotel bar will be open later in the evening so please be
aware that people may want to sleep. Try not to make too much
noise after 11:00 pm in the evening.

Assis
tance

Jean Marc and Doug are
available

for most for
the conference.
However, since we are also presenting sessions most days, our
available time will be limited. We now understand how much
work Fred put into the conference and why he was content to
stay i
n the background.


If possible please try to resolve issues and questions

at the front
desk. Peter
de Beer and his staff have been kept involved in the
conference planning since the beginning

and have a very good
idea how things should run. If they are u
nable to resolve
questions, please look for us in the lobby/bar area between
sessions or during meals for any additional assistance that the
hotel cannot offer.


Unless it is a dire emergency, please refrain from interrupting a
session we are presenting on
ce we have started.

Departure

If you need a taxi to the train station at the end of the week,
please visit the reception and indicate when you need to leave.
The hotel is responsible for all transfers to/from the train station
and you are responsible for
arranging it with them. Please do
not leave your arrangements too late so that you might miss
your train.

Smoking

In the Netherlands, smoking in public areas such as the bar,
restaurant, or hotel rooms is forbidden by law. If you need to
smoke, please le
ave the hotel premises and go to outside to the
front.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
3

General Conference Information

Badges

Please wear your badge at all times in a visible way. Most
people will know each other, but there are new attendees who
would like to know who you are.


Rooms

All

small
-
format sessions will be held simultaneously in the main
ground floor conference center at the hotel. The one room is
segmented into 8 separate mini
-
conferences, each with a
speaker and up to 5 participants.


David and Andreas will have separate con
ference rooms

indicated as Conf 1 and Conf 2 on the map.


Keynote

The keynote will take place on the 1
st

floor conference center on
Wednesday afternoon. This means you need to walk up one
flight of stairs to get there.




Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
4


Meals

All meals will be in the
restaurant at the other side of the bar.
Typical session agenda and meal/break times are:

7:00
-
9:00

Breakfast, buffet style

9:00
-
12:30

Morning session (coffee break 10:45)

12:30
-
13:30

Lunch, buffet style

14:00
-
17:00

Afternoon session (coffee break
15:30)

17:30
-
19:00

Dinner, served to your table

19:00
-
21:00

Evening session (no coffee break)


EuroDinner

After the keynote session on Wednesday evening, the ‘Grand
Euromnis Dinner’ will take place in the Castle Doorwerth, some
5 KM from the hotel. At
18:00, buses will pick people up from
the front of the hotel to take us there and by around 23:00, we’ll
be back at the hotel.





Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
5

Format

The small session format that Fred introduced in 2007 has
proven a very popular and excitin
g method of sharing
information.


Each day, 8

sessions will be conducted this way except for the
keynote and
those topics

presented by A
ndreas Pfeiffer and
David Swain. Due
to their nature,
Andreas and David’s topics
will occur in a slightly more traditional classroom format
.


Limits

The small session format means that there can be a maximum
of 5 people per session, providing an intimate approach to
learning and maximum opportunity for sharing. It means that
some sessions may be repeated due to demand, but it also
means that

you might not be able to attend a particular session
because it is ‘full’. To preserve this intimate session approach,
speakers will turn away all but the first 5 people to sign up.


As many people as des
ired can attend David’s or Andrea
s


sessions.

Rule
s

Session signup occurs on the evening before the sessio
ns are
presented. Sheets will remain in place until the session has
been presented. Most speakers are prepared to approach
multiple topics so the actual topic presented in each session is
CHOSEN BY T
HE ATTENDEES. Plan your days in advance,
but be prepared to be flexible as the session you want on one
day might not be available based on the desires of the majority.


Don’t forget that the same session can be presented on multiple
days and if you do not

get your choice on one day, make sure to
sign up another day.


Please observe

the following
niceties
as you decide
which
sessions to attend



In the evening, f
ind the sessions you want

to attend

the next
day. For each time slot,
sign your name
.



Sign up to
only one topic per session.

There are up to 3
sessions on any one day, so your name should be on only 3
sheets.



When a speaker offers to cover multiple topics, please
indicate clearly which topic you are interested in.



The majority of people voting for a
topic usually decides
which topic will be covered in the session unless there are
extenuating circumstances
.



In the case of any disagreements, the speaker is the final
arbitrator of which session will be presented
.



At the Sunday evening ‘Welcome’, we’ll
go over how this works
to answer any questions.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
6

The
Week at a Glance

Sun, 23rd

Welcome session in the lounge area, hors d’oeuvres supplied
.
Don’t forget to sign up for the next day sessions


Mon, 24
th

7:00
-
9:00

Breakfast, buffet style

9:00
-
12:30

Morning

session (coffee break 10:45)

12:30
-
13:30

Lunch, buffet style

14:00
-
17:00

Afternoon session (coffee break 15:30)

17:30
-
19:00

Dinner, served to your table

19:00
-
21:00

Evening session (no coffee break)

21:00
-
next day

Sign up for next day's sessions


Tue, 25
th

7:00
-
9:00

Breakfast, buffet style

9:00
-
12:30

Morning session (coffee break 10:45)

12:30
-
13:30

Lunch, buffet style

14:00
-
17:00

Afternoon session (coffee break 15:30)

17:30
-
19:00

Dinner, served to your table

19:00
-
21:00

Evening session (no
coffee break)

21:00
-
next day

Sign up for next day's sessions





Wed, 26
th


Make sure to set up departure time to train station sometime
today at the front desk.

7:00
-
9:00

Breakfast, buffet style

9:00
-
12:30

Morning session (coffee break 10:45)

12:30
-
13:30

Lunch, buffet style

14:00
-
18:00

Keynote session with Tiger Logic

19:00
-
23:00

Euromnis Dinner at Doorwerth Castle

23:00
-
next day

Sign up for next day’s sessions


Thu爬′T
th

7:00
-
9:00

Breakfast, buffet style

9:00
-
12:30

Morning session
(coffee break 10:45)

12:30
-
13:30

Lunch, buffet style

14:00
-
17:00

Afternoon session (coffee break 15:30)

17:30
-
19:00

Dinner, served to your table

19:00
-
21:00

Post Mortem

(for those who wish)




Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
7

Sessions for
Monday, October
24
th


Conf
1

Conf
2

Main
3

Main
4

Main
5

Main
6

Main
7

Main
8

Main
9

Main
10

Mon. 24th
Morning

David Swain


Omnis Studio
Insights 1

Andreas Pfeiffer


The Studio
Application Lab
1

Wendy
Obaldestin


Crystal Server

Crystal Reports

Dan Ridinger


Application
Framework

Robert Mostyn


Converting
Classic to
Studio

Hacker
-
Proofing
websites

Rob's
fireside

consultations

Doug
Easterbrook


Scaleable Ultra
Thin Web
Architecture

PostgreSQL

Application
Arch: Practical
Building Blocks

Michael
Monschau


Notation

Event handling

External
Components

or Web and JS
-
Clients

Lou Picciano


The Perfect
Saas platform


Getting your
applications
into the cloud

Joe Maus


SQL
-

Techniques,
Observations,
and Your
Questions

David McKeone


Performance
Analysis

Non
-
Visual
Omnis OO C++
Externals

X
ML and JSON

Reading/Writing
Excel Files

Mon. 24th
Afternoon

David Swain


Omnis Studio
Insights 2

Andreas Pfeiffer


The Studio
Application Lab
2

Olaf
Gardarsson


Saas Open
Source and the
Omnis Web
server

Raymond Tress


N.A.

Dan Ridinger


Application
Framework

Marten
Verhoeven


Document
Management


Google maps &
hyperlinks

Michael
Monschau


Notation

Event handling

External
Components or
Web and JS
-
Client

Scotte Meredith


Multiple View
Calendar Data
and the Internet

“A New Spin On
Rubik’s Cube”

Jean Mar
c
Azerad


Localization

Multi
-
language
Apps

Mark Smit


Multi
-
Subwindow
Apps

Single Point Of
Definition

PlanBoard
Scheduler

Mon. 24th
Evening

Jean Marc
Azerad


Man &
Computers



Wendy
Obaldestin


Crystal Server

Crystal Reports

Raymond Tress


OMNIS 5.2
JavaScript
WebClient
WebServices
SOA
Framework

Doug
Easterbrook


Scaleable Ultra
Thin Web
Architecture

PostgreSQL

Application
Arch: Practical
Building Blocks

Jim Pistrang


Exploring the
JavaScript
Client

Michael
Monschau


Event
handling

OWrite Plus

or
addendum

Lou Picciano


The Perfect
Saas platform


Getting your
applications
into the cloud

Joe Maus


SQL
-

Techniques,
Observations,
and Your
Questions

David McKeone


Performance
Analysis

Non
-
Visual
Omnis OO C++
Externals

XML and JS
ON

Reading/Writing
Excel Files



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
8

Sessions for Tuesday, October 25
th


Conf
1

Conf
2

Main
3

Main
4

Main
5

Main
6

Main
7

Main
8

Main
9

Main
10

Tue. 25th
Morning

David Swain


Omnis Studio
Insights 3

Andreas Pfeiffer


The
Studio

Application Lab
3

Doug
Easterbrook


Scaleable Ultra
Thin Web
Architecture

PostgreSQL

Application
Arch: Practical
Building Blocks

Dan Ridinger


Application
Framework

Robert Mostyn


Converting
Classic to
Studio

Hacker
-
Proofing
websites

Rob's
fireside

consultations

Jim Pistrang


Exploring the
JavaScript
Client

Jean Marc
Azerad


Localization

Multi
-
language
Apps

Lou Picciano


The Perfect
Saas platform


Getting your
applications
into the cloud

David McKeone


Performance
Analysis

Non
-
Visual
Omnis OO C++
Externals

XML and JSON

Reading/Writing
Excel Files

Mark Smit


Multi
-
Subwindow
Apps

Single Point Of
Definition

PlanBoard
Scheduler

Tue. 25th
Afternoon

David Swain


Omnis Studio
Insights 4

Andreas Pfeiffer


The
Studio

Application Lab
4

Wendy
Obaldestin


Crystal Server

Crystal
Reports

Raymond Tress


OMNIS 5.2
JavaScript
WebClient
WebServices
SOA
Framework

Olaf
Gardarsson


Saas Open
Source and the
Omnis Web
server

Scotte Meredith


Multiple View
Calendar Data
and the Internet

“A New Spin On
Rubik’s Cube”

Michael
Monschau


Notation

Event handling

External
Components or
Web and JS
-
Client

Lou Picciano


The Perfect
Saas platform


Getting your
applications
into the cloud

Joe Maus


SQL
-

Techniques,
Observations,
and Your
Questions

Marten
Verhoeven


Document
Management


Google maps &
hyperlinks

Tue. 25th
Evening

Jean Marc
Azerad


Man &
Computers



Wendy
Obaldestin


Crystal Server

Crystal Reports

Dan Ridinger


Application
Framework

Robert Mostyn


Converting
Classic to
Studio

Hacker
-
Proofing
websites

Rob's
fireside

consultations

Jim
Pistrang


Exploring the
JavaScript
Client

Olaf
Gardarsson


Saas Open
Source and the
Omnis Web
server

Scotte Meredith


Multiple View
Calendar Data
and the Internet

“A New Spin On
Rubik’s Cube”

David McKeone


Performance
Analysis

Non
-
Visual
Omnis OO C++
Externals

XML and JSON

Reading/Writing
Excel Files

Mark Smit


Multi
-
Subwindow
Apps

Single Point Of
Definition

PlanBoard
Scheduler


Sessions for Wednesday, Oct

26
th


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
9


Conf
1

Conf
2

Main
3

Main
4

Main
5

Main
6

Main
7

Main
8

Main
9

Main
10

Wed. 26th
Morning

David Swain


Omnis Studio
Insights 5



Olaf
Gardarsson


Saas Open
Source and the
Omnis Web
server

Raymond Tress


OMNIS 5.2
JavaScript
WebClient
WebServices
SOA
Framework

Robert Mostyn


Converting
Classic to
Studio

Hacker
-
Proofing
websites

Rob's
fireside

co
nsultations

Doug
Easterbrook


Scaleable Ultra
Thin Web
Architecture

PostgreSQL

Application
Arch: Practical
Building Blocks

Michael
Monschau


Notation

Event handling

External
Components or
Web and JS
-
Client

David McKeone


Performance
Analysis

Non
-
Visual
Omnis OO C++
Externals

XML and JSON

Reading/Writing
Excel Files

Joe Maus


SQL
-

Techniques,
Observations,
and Your
Questions

Mark Smit


Multi
-
Subwindow
Apps

Single Point Of
Definition

PlanBoard
Scheduler

Wed. 26th
Afternoon

Euromnis RC Plenary session

Bob

Whiting (Tiger Logic UK, Studio Product Manager)

Birgit Jäger (Tiger Logic Germany)


Wed. 26th
Evening

Euromnis RC Dinner at Doorweth Castle



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
10

Sessions for
Thursday, October 27
th


Conf
1

Conf
2

Main
3

Main
4

Main
5

Main
6

Main
7

Main
8

Main
9

Main
10

Thu. 27th
Morning

David Swain


Omnis Studio
Insights 6

Andreas Pfeiffer


The Studio
Application Lab
5

Olaf
Gardarsson


Saas Open
Source and the
Omnis Web
server

Raymond Tress


OMNIS 5.2
JavaScript
WebClient
WebServices
SOA
Framework

Dan Ridinger


Application
Framework

Jim Pistrang


Exploring the
JavaScript
Client

Michael
Monschau


Notation

Event handling

External
Components or
Web and JS
-
Client

Scotte Meredith


Multiple View
Calendar Data
and the Internet

“A New Spin On
Rubik’s Cube”

Joe Maus


SQL
-

Techniques,
Observations,
and Your
Questions

Doug
Easterbrook


Scaleable Ultra
Thin Web
Architecture

PostgreSQL

Application
Arch: Practical
Building Blocks

Thu. 27th
Afternoon

David Swain


Omnis Studio
Insights 7

Andreas Pfeiffer


The Studio
Application

Lab
6

Wendy
Obaldestin


Crystal Server

Crystal Reports

Marten
Verhoeven


Document
Management


Google maps &
hyperlinks

Robert Mostyn


Converting
Classic to
Studio

Hacker
-
Proofing
websites

Rob's
fireside

consultations

Jim Pistrang


Exploring the
JavaScript

Client

Jean Marc
Azerad


Localization

Multi
-
language
Apps

Lou Picciano


The Perfect
Saas platform


Getting your
applications
into the cloud

Scotte Meredith


Multiple View
Calendar Data
and the Internet

“A New Spin On
Rubik’s Cube”

Mark Smit


Multi
-
Subwindow
Apps

Single Point Of
Definition

PlanBoard
Scheduler

Thu. 27th
Evening

Conference is over but there is

d
inner for those who wish

a
nd

After

dinner, there will be a
Post mortem session for all speakers

and attendees that wish to contribute


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
11

Jean Marc Azerad



Unlike many Omnis developers, Jean Marc's first
career was not programming, he earned his living
doing research in sensorial neuro
-
physiology.


As a self trained early adapter of personal
computers (first Apple II in 1977)
, around 1984,
he was teaching computers to adults as a student
job to finance his Ph.D. His audience was
essentially composed of business managers or
accountants that knew they had to make the step
to computers but were constantly confronted with
weird yo
ung salespeople speaking an obscure
language.


In 1985, he discovered Macintosh, realized it was
THE tool those guys needed and that, with some
good application building tools, he could make
dedicated, easy to use, software for them.


He began with Omnis 3

in 1986 and keeps on
writing software with an emphasis on making the
Man/Computer relationship as simple as
possible, taking advantage of his backgrounds in
sensorial neuro
-
physiology and psychology.

Jean Marc Azerad



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
12

Men & Computers...

Why does this
stupid fly keep on landing again
and again on my bald cranium ? Can't it see I'm
going to smash it as soon as I can?


Why is a
baby dependant of his mother for years while a
goldfish can feed itself as soon as it gets out of
its egg?


Why do your kids, lik
e all kids all over
the world, come back home whining "It's not
fair"?


What does "heuristics" means?

Why did
t
he FBI fail in predicting 9/11?


What has all this to do with programming?


How
d
oes understanding this help

me:



become a better develope
r?



and
have happier customers?


That's
what this session is all about…

Intriguing,
yes!

Note:

The
session
will be held in the larger
classroom setting
on Monday and Tuesday
evenings
as it i
s more suited to lecture format.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
13

How to localize your app...

In this se
ssion we'll cover multi
-
lingual
applications; how to's, how not to's. Everything
your app needs to be able to talk to people in
their native tongue... furthermore we'll look into
localization, taking a dive into the huge
improvements brought by the new ver
sion, Studio
v5


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
14

Doug Easterbrook


Arts Management Systems

mission is to
provide enterprise wide software for the total
administration of Arts &

Entertainment
organizations. Our goal is to provide a cross
platform solution in its chosen market niche and
support servers on many platforms and clients on
OSX and Windows.


Doug Easterbrook, the founder of the company,
has been developing with Omnis si
nce 1986 in
order to fulfill that goal. Our cornerstone
application, Theatre Manager has been through 4
re
-
writes: Omnis 3+, Omnis 5, Omnis 7 and
converted to Studio starting in 2000. During the
process of converting to Studio, Doug and the
development te
am of Darwin Shaw, David
McKeone and Scotte Meredith, along with the
assistance of Kelly Burgess and Michael
Monschau have done some amazing things
which will form the foundation of our session
topic(s).


Some of the key technologies implemented in
Theatre

Manager and in use by over 300
theatrical and sports venues:



Omnis Studio 5.11



PostgreSQL server



Scaleable ultra
-
thin web client using a custom
apache module



Use of externals in key areas to extend the
capabilities of Studio



An application architecture th
at allows us to
build new applications quickly with a high
degree of re
-
use

In the sessions, we are very happy to share all
our experiences of our mammoth Studio
conversion effort because there are many things
that we found that we think are of interest to

others. Our topics are not about Theatre
Manager, they are about technologies and
methodologies that we used within a huge
application that worked
-

tricks and techniques,
small and large.


Studio is our life blood and we have
used all of it to excess.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
15

Web Server

Architecture
;
A
Scalable
, Ultra Thin client.

The centerpiece is a loadable module we
designed for Apache 2 that mimics some of the
standard features of the Studio module
-

with a
huge twist. Clients can add back end horsepower
to the server to
service peak requests while the
server is running. In fact, every Studio license
purchased by a client can be repurposes as an
application server. Imagine 10, 100, or 1000
application servers on all forms of equipment to
satisfy web demand
-

single threade
d or multi
threaded. The loadable module has the smarts to
know which application servers are running,
which are responding, who is busy and hand off
web requests dynamically to any one of those
application servers based on load balancing.


Note: If you ar
e truly interested in implementing
the approach, we are providing the Apache
loadable module, gratis, to attendees in object
form.


This topic will cover:



The design goal/purpose of our scaleable,
thin client apache loadable module



How we structured the ap
plication objects to
make it easy to add new functionality or API



Why the thin client approach has worked for
our clients for 5 years and handles hundreds
of millions of dollars in annual commerce.


Who would find this interesting?



Anybody who uses a stand
ard thin client
HTML/CSS interface to a web site



May allow end users to customize web pages
and skin their own site



Maximize their customers’ investment in
Omnis licenses by using any license for a
web server (such as after hours or peak
demands)



Rapidly d
eliver additional web interface
functions to their application



Has the need to scale the backend servers
dynamically


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
16

PostgreSQL

TigerLogic announced PostgreSQL support with
Omnis Studio 4.3. We have been using the
PostgreSQL DAM since then and have deliv
ered
PostgreSQL solutions to nearly 300 clients.


PostgreSQL has a number of very cool features
and it is wonderful that TigerLogic has added
support for this open source database in Studio.
Having used other back ends, we'd like to share
why PostgreSQL is

just so cool and how to
integrate it into your application.


This Topic will cover:



PostgreSQL installation, tuning, security,
transaction, backup & performance
considerations



Considerations for using the PostgreSQL
DAM



SQL optimizations using table
classes (inner
and outer joins, table lookups, special
functions)



PL/PGSQL Stored Procedures



Using stored procedures and triggers for
performance



Hints around making your application back
-
end independent (because we had to do it
too)



Automated backup scrip
ts


Who would find this interesting?



Those who have not picked a back
-
end yet



If you need to use an industrial strength
database on par with the big boys (like
Oracle) with no cost to your clients



If you want to discuss the capabilities of
PostgreSQL and
managing it.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
17

Application Architecture:
Making Windows into Sub
-
Windows
and

Vice Versa.

While converting Theatre Manager, we found
that we were doing the same thing over and over
again, writing the same code, making lists of data
for presentation on the s
creen. All of this points to
object re
-
use and it took us a while to get our
objects right. Now, we can embed re
-
usable
window objects into any other window and with a
couple of methods used for communication
between objects, build windows quickly with a l
ot
of inherited capability.


While there are many ways to skin the cat,
having a feature rich consistent interface for the
client (and programmer) is the goal for most of us
as we deliver applications to the end user.
Others who have used some of our base

classes
have indicated that it advanced their
development by years. (yes, we’ll give you that
too!)


This Topic will cover:



Some fundamentals for creating base window
classes that can be reused



The typical kinds of messages and method
interactions that we

have found to work



A method of object interaction that allows for
most parameters in any order



How to stick it all together into one package
for rapid application development


Who would find it interesting?



Everybody building with an object oriented
language has to go through the process of
object design, finding out what's good or bad,
go down dead ends and come back to the
right place. There are many approaches and
we are open to sharing what worked for us
and why.



We are prepared to talk about anyt
hing:
objects, references, lists, helper methods,
table classes, database interaction, GUI
features, table driven interface (you name it)
because the techniques used could be of
benefit to others
-

including opening our code
to show how we did almost anyth
ing.



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
18

Olafur Gardarsson



Ikon ehf

Olaf started programming in Omnis 3 in 1985 on
his single diskette drive 128KB Macintosh. The
Reykjavik District Commissioner, Gustav
Gustavsson was looking for a system to manage
real estate property put up for
auction in the
capital and Olaf was hired together with Thorvald
Geirsson to do the project in 1986. The years
thereafter there was no shortage of jobs and Olaf
and Thorvaldur formed the Company Ikon hf with
a group of interested computer friends.


Olaf wa
s hired by Blyth Software inc USA for
Technical Support in 1996. He was moved to
development of internal systems soon after. He
worked for Blyth for 3 years but in that time the
name of the company was changed to Omnis
Software and later it was bought by P
ICK
systems which later was named Raining Data but
now goes by the name of Tiger Logic. In 1999
Olaf took on a project in Tenerife for Resort
Properies, designing a new sales system for their
Time Share sales office. In 2001
Lögmannastofan Skipholti sf hir
ed Olaf to rebuild
an older parking fine collection system for the
Parking Fund of Reykjavik City.


Olaf currently operates Ikon ehf (www.ikon.is)
programming Omnis, managing its webhosting
service and doing IT work for several firms in
Iceland and abroad.

Open source and remote
application services has been his main research
focus for several years.


Sessions will cover:
Omnis full client deployment
on web, WAN and LAN with application services.
Practical options with Linux, Open Source and
Omnis.



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
19

SAAS w
ith Omnis and Linux

Why program for Linux?



What is the fu
ture like in operating systems?



Where is the most pr
ogressive evolution
happening?



Why SAAS?
-

The Application server in
p
ractice, software as a service.



Omnis Studio and Classic demonstra
ted from
a
n Application Server




Have your cake and e
a
t it too, own a
developer Application server on the Internet,
fully protected and with multiple OS's

-
Accessing full applications fro
m anywhere,
from any platform.


Lets admit it, deploying Omnis applications to
desktops all over the place is hard work. What if
you could just send a single link to you customer
by e
-
mail. He gets an Omnis window on his
screen, no download of software, no difficult local
configuration. You provide a software service and
your custome
r is insulated from all the complex
under the hood workings of where the data is
stored, backed up and the other endless issues
that only IT technicians should have to think
about. You enjoy the full development
environment of Studio and don't have to trim

your
solutions to Web client limitations. Your solution
will be completely cross platform and future
platform compliant plus accessible directly from a
web page.



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
20

So you think you are not
using Open Source huh
?

Think again!

Go to 4 websites on the
Internet and chances are
you used Open Source software on 3 out of the 4
websites. Apache is the most widely used
webserver in the world. It more or less runs the
Internet. Over half of all webservers run Apache
on Linux and most of the rest

run Apache on
other platforms.


Thankfully installing Omnis Studio is deceptively
simple under Linux. Studio and also good old
Omnis7 Classic are remarkably self contained
systems. This is a strength and allows for more
flexibility. In addition to learning to install St
udio
you will be able to move it around in the file
system and decide what users have access to
what applications and more.




Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
21

Studio Webserver, Linux
and Apache

Get the basics and the rest follows The key to
understanding and developing with Unix, Linux
and the Mac is to understand the FHS (File
Hierarchy Standard). To develop applications for
any modern operating system it is crucial to know
the basics about the file system it is based on.
Linux/Unix and now the Mac use a common base
and most Linux distr
ibutions use the File s
ystem
Hierarchy Standard (FHS).


The best way to get familiar with any system is
using it. Instead of trying to remember how things
are done up front just know about a few basic
commands and look up the nuances and
alternatives when
you need them. Before long
your skills become fluent and you wonder how
you lived without them. In this session you jump
right into setting up Studio on your Linux OS be it
a dedicated computer or a virtual machine riding
on your favorite laptop
.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
22

Joe Maus


Joe has been working with Studio since his hand
written version 1.2 CD from Blyth showed up.
Before then, he worked in Omnis 7, using it
between 1990 to 1999 when he left Lockheed
Martin’s Astronautics Mission Success group to
lead a team of PeopleSof
t developers in a payroll
conversion project.

One thing le
d to another an
d

he departed Lockheed Martin to start his own firm
in 2000. Since then, he has grown the business
to include 2 additional staff members and
expanded the expertise of the firm to include
DICOM, LeadTools, and HL7/ADT technologies
deploying server solutions

in multiple healthcare
environments.


Of course, all these applications need to store
their data somewhere and for that he likes to use
Oracle and Sybase. Most recently, he was
working with a large firm in the Denver area
where he assisted in the develop
ment, testing
and deployment of a comprehensive business
intelligence application using the Studio
WebClient product and Oracle to provide Reports
to sales people and managers (including the
executive staff) of sales performance, ranking,
and daily work of

all sales people


sliced and
diced multiple ways.


This was accessed
daily
by over 1000
. The work
le
d to some intensive Oracle analytics use as
well as performance and tuning experiments to
make the application run as quickly as possible.
In addition,
he

is

still involved in another Studio
vertical application that uses
Oracle, which

involves supporting over 30 Oracle servers
across the USA.


Other services that his firm offers include
telecommunication billing audits and reselling
telecommunications se
rvices, firewall and VPN
setup/configuration/support, and configuration,
sales and support of HP Equipment to the small
and medium business community.



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
23

SQL
-

Techniques,
Observations, and
y
our
Questions

Do you wonder how you might leverage SQL in a
Studi
o application?


Perhaps dream about how you might design your
application for maximum performance on
different back end servers?

Do you have
questions on how to approach SQL query
design?

Is there a query in your application that
seems slower than it
should be?

Then this is the
session for you!

We'll explore these and any
other avenues you desire in

your quest for SQL
knowledge.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
24

David McKeone


Arts Management Systems

David has been developing in Omnis Studio for
over 9 years with Arts Management Systems. In
that time he has played a major role in converting
ArtsMan's main product, Theatre Manager,
from
Omnis 7 into Omnis Studio.


The conversion, which wasn't for the we
ak of
heart, ended up being more of a rewrite, as all
the code was made more object
-
oriented and
was re
-
coded to use SQL instead of Omnis Data
Files. Throughout the conversion he learned how
to eke out every ounce of performance from
Omnis Studio using Omn
is tricks
and
C++
externals.


In addition to Omnis he also has a great deal of
experience with PostgreSQL, PL/PGSQL stored
procedures and triggers, Objective
-
C, and C++
externals and has used it to great advantage to
make Theatre Manager faster and more ca
pable.
He's always on the lookout for cool new things to
integrate into Omnis so that he can make faster
and more useful software.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
25

Studio 5+ Performance

Analysis

Want to learn how to tweak Studio in certain
areas to optimize your code and achieve some
d
ramatic performance gains? Want to find out
where Studio is spending all of its time executing
your code and were to spend your optimization
efforts? Don’t have time to write your own
performance analysis tool?


This session will focus on techniques that
we've
discovered to enhance the performance of Studio
in areas of list management, list searching, string
manipulation, parameter passing, object and field
references and other 'best of' coding practices
that help you deliver a high performing
application
to your customer.


We will also provide an easy to implement
performance analysis library that uses the new
performance analysis facilities in Omnis Studio 5
and walks through some examples of where the
tool can be used, what it displays, and how to
track
(and prove) performance gains made in an
application.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
26

Behind the Curtain
-

A look
at the implementation of all
of our Non
-
Visual Object
C++ Omnis Externals

Over the past few years Arts Management
Systems has invested a lot of resources into
producing cro
ss platform C++ Externals that
enhance and extend Omnis Studio. (LibXL,
Libical, JSON, Neon WebDAV, TMObjs Tools)
This session is an open
-
format session that will
explore the ins and outs of how these externals
are created. Basically, you say what you wa
nt to
see and I’ll explain it.


One of the wishes in the Omnis community is to
be able to access open source code within
Studio. It is certainly possible to do that using the
external API to create your own external
components


and we use all of our exter
nals as
examples of how it can be done.


Attendees will receive an example C++ template
and a walkthrough that lays out all the basics for
how to create an external component with non
-
visual objects. The example library comes with
complete projects for W
indows and Mac and,
more importantly, a file structure and project
setup that allows simple compilation for multiple
platforms. It’s also compatible with version
control systems (Git will be demonstrated).


This session involves discussion of the C++
exte
rnal interface for non
-
visual objects only. We
highly recommend partici
pating in Michael’s
sessions

or
having been to one of
Kelly's
sessions prior to attending this session. Also a
working knowledge of C++ is advisable.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
27

Data Interchange Formats
and Web
APIs
--

A look at
using XML and JSON.

XML, and now JSON, are commonly used as a
communication protocol to talk to web sites,
access preference files and/or store data. If you
want to communicate with the Social Web then
this is how you do it. Facebook,
Twitter, Google,
these all have an XML or JSON API for
developers to access.


In this session we'll use two practical examples
(and source code) using oXML and our JSON
external. One example will be our performance
analysis tool, which uses XML both for st
oring
data and retaining preferences in a preference
document in standard XML format.


The second example will use oXML to decode
the response from the Google Maps API. We use
this to geo
-
encode the latitude and longitude of
addresses in our customer datab
ases and use
that for determining distance from a fixed point (a
marketing use) and/or to map customers onto a
static Google map.


While oXML is the focal point of this session, all
source code examples and externals are
worthwhile in their own right.



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
28

LibXL


Cross
Platform
Writing of Excel Files

(XLS and XLSX)

Ever wanted to be able to write to Excel files?
Ever wanted to be able to read Excel files that
contain formulas? How about doing it on a
machine where Excel has never even been
installed? Ho
w about cross platform? That’s
what we’ve done.


By leveraging the C library on libxl.com we’ve
created an Omnis wrapper that allows Omnis to
easily read and write Excel files. This session
will describe how to use it and show some
example code. Attende
es will receive the Studio
5 external for Mac and Windows. (Note: a license
is required from the libxl.com developers to
remove a demo tag.)


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
29

Scotte Meredith

Arts Management Systems

Scotte Meredith has been developing in Omnis
since about 1989, and fullt
ime since 1993. He
was the owner of Starsoft Technologies, creating
DonorWorks for non
-
profits for almost 15 years
before merging companies with Suran Systems,
another Omnis developer. At Starsoft he took an
application originally written in Omnis 3+ that
had
been converted to Omnis 5 and then Omnis 7,
and rewrote it for Studio 3, first us
ing OmnisSQL
and then OpenBase.


For the last 3 years, he’s been with Arts
Management Systems developing calendaring
and facility management modules using
PostgreSQL. He h
as taught junior high (so he
should be able to handle the BODGers), high
school, college, and has been a corporate trainer.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
30

Multiple View C
alendar
Data and the Internet

“A New Spin On Rubik’s
Cube”

This session will cover how to integrate temporal
(or d
ate
-
based) data from a list into a calendar
format every user intuitively understands and
provide multiple views of this data to your clients
and their customers by “spinning the Rubik’s
cube” to look at task information in different ways.

Calendars are a
part of many kinds of
applications. Often, they are an afterthought put
into an application to display data in a single
view, but they can be much more than that. We
can leverage the work of RFCs and standards
bodies who have already worked through many
of

these issues to define our data structures.
Then we can look creatively at how to display
that information and what tools are available.

We’ll look at an architecture that combines
different objects to create a bag of tools you can
use. This provides mul
tiple views of data to
clients and their customers, passing data back
and forth between internal and external
applications. We will do this by showing how
Theatre Manager uses oCal as a replacement
calendar external, the oGantt external (both from
Brainy D
ata), externals we have built, and
applications users already have available, to
provide data to users of Theatre Manager, and to
those inside and outside the organization through
their iCal or Outlook calendars.

Attendees will receive copies of the
externals we
have developed for reading and creating industry
standard ICS files and communicating with a
CalDAV server, and demo versions and sample
libraries for externals developed by others.

What you’ll learn:



How to combine multiple kinds of data into

a
calendar



How to use PostgreSQL features to simplify
overlapping date problems and finding
birthday
-
like dates while leveraging the
performance of a backend
SQL

database



How to view the same calendar in a variety of
different ways, such as by room, by
person,
by resources, by event



How to assign a hierarchical order upon
calendar items in a Gantt format



How to send out calendar invitations to
anyone using standard ICS format



How to receive calendar confirmations back
from anyone and integrate it into yo
ur data



How to allow anyone to view calendars you
have created via CalDAV or publishing a
calendar



How to go about resolving calendar conflicts



Things to consider in notifying internal and

Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
31

externals users of events and changes


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
32

Michael Monchau

Brainy Dat
a

Michael was born and raised in Germany. After
leaving main stream school he trained as a
plumber and at the age of 19 moved to England.
He had his first encounter w
ith computers a few
years later

when
,

as assistant manager in a
residential home, he devel
oped a staff rota
system using Borland Pascal. In 1989 he joined
the Tiger Logic (then Blyth Software) eng
ineering
team at Mitford House.


Having worked in core engineering since Omnis
3 Plus days, Michael has been responsible for
the design and implementa
tion of many of the
Omnis' features that developers enjoy today. He
was a key person in charge of various large
projects when Omnis Studio was conceived,
including the design and implementation of the
cross
-
platform graphics, windows and printing
modules,
the new window and report design
modes, printing devices, and the web
-
client
t
echnology, to name but a few.


In 2003, after 14 years of working at Mitford
House (UK Head Office of what had now become
Tiger Logic
), Michael decided it was time for a
change.
He resigned his position at Raining Data
and formed Brainy Data, a company dedicated to
providing consultancy services to Omnis
developers and the development of Omnis
external components such as the 'OWrite
Plus'
suite.


Brainy Data is now in its ninth ye
ar and more
than 190 Omnis Developers have developed their
soft
ware using Brainy Data products which are
used daily by thousands of end users.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
33

Omnis Notation:

from realization to
optimization

History

'Omnis Notation' was the dawn of a new age in
the Omnis programming world. There was some
resistance in the early days, there is still some to
this day. Omnis had been purely command
orientated, with an intuitive point and click
interface for customizing t
he 400+ commands
that drove the Omnis application. 'Omnis
Notation' is text based and in the early days,
there was little help provided as one struggled
with the syntax. This rendered the new language
incomplete, sometimes difficult to comprehend,
and to t
he traditional Omnis developer very
cumbersome. However, as developers began to
realize

the additional intricate levels of control
and power of manipulation that 'Omnis Notation'
provided, the benefits very quickly began to
outweigh its short
-
comings. Much

has changed
since then. 'Omnis Notation' paved the way to the
new Studio design environment, the external
interface, table classes, and so much more.
Today, most of Omnis Studio code that is written
is written using 'Omnis Notation'. The
implementation of

'Omnis Notation' was probably
the most important technology shift in Omnis
history.


Session Details

This session aims to explain how notation works,
and demonstrate its possibilities. You will learn:



the difference between build
-
in and custom
notation,
properties and method
s, instance
and class notation.



the benefits of notation in

inheritance, initial
value calculations, table classes, complex
-
grid ex
ceptions, and custom messaging.



the power of notation in

manipulating windows
and objects, controlling r
eports, optimizing
method execution, and much more.



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
34

Studio event handling:

from $event to $control

History

Omnis Classic and Omnis Studio event handling
appear very different indeed. However, when the
new event hand
ling was developed, it was built

on to
p of the old classic event handling. In fact,
even today, it is still possible to mix the old and
the new as this session will show. The new event
system, besides being more intuitive and
extendable, is incredibly more efficient. It paved
the way to better

external component integration,
greater flexibility in creating more and more
specialist events for the more complex window
objects, and it is far more suited to the object
orientated design. It has increased the interaction
between window objects and met
hod code
exponentially.


Session Details

In this session you will learn how to write efficient
event handlers, the benefits of $control and
inheritance in event handling, do's and don'ts,
pitfalls and short
-
comings, tricks and
conventions. You will also l
earn how to mix and
match the old and the new as you slowly migrate
your Classic code to Omnis Studio.



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
35

Advanced external
component development
(updated for 2011)

History

As with any company sometimes engineers
leave the company and new ones are hired. Most
new engineers had great difficulty in getting up to
speed with the Omnis source base. It had
become antiquated and difficult to maintain in
some key areas. During the ea
rly design stages
of Omnis Studio, this issue was addressed and
the decision was made to design a cross
-
platform
window and graphics module that was based on
the environment best known to many C++
engineers, the MSWindows HWND and GDI
SDK. The theory being

that new engineers will be
familiar with the concept and SDK functions.
These well structured modules also provided the
basis for the external component interface. Some
additional Omnis core modules such as the data
field, data list and CRB data handling
and the
Omnis print manager were also modulated and
exposed. Today, external components have
access to a vast API that truly integrates them
into Omnis and makes them appear as if they
were an integral part of the environment.


Session Details

For 2011 yo
u will be building your first generic
external printing device. You will learn how to
register a device with Omnis, what custom device
parameters are, and how to receive printing
objects and what to do with them. You will
receive the source code to a funct
ioning generic
device that feeds printing data directly to your
Omnis methods for processing from Omnis 4GL.


Time permitting we will also be looking at how we
could improve on the existing HTML external
device considering advances in style sheets and
the
HTML box model.


IMPORTANT: For this session you will require
XCode version 3.2.4 or better, or Visual C++
Express 2008 or better. You will also require
Studio 5 for testing your components and
please download the external component
SDK from the Omnis web
site. Knowledge of
C++ is not essential, but a prior visit to Kelly
Burgess' building externals session
in prior
years
would be of great benefit.



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
36

Web
-
client and JS
-
Client:

t
he class instance in
cyberspace

(updated for 2011)

History

A few years after Omnis Studio first appeared,
many improvements had been achieved. New
design interfaces, a more complete notation, a far
superior event system and the Omnis core code
had some well defined and documented modules
that provided a powerful i
nterface for developing
external components. All these technologies
provided key ingredients for the next leap of
technology. Two Omnis core engineers, now
having time to breathe, set about thinking of the
internet and how Omnis needed something web
-
ish. I
t was clear right away that external
components would play a key part. And then
came the brain
-
wave: The interface sits on the
client, the code executes on the server, and the
Studio event handling to tie the two together. The
class can be designed as one
object and Omnis
takes care of splitting it up! The class instance
that crosses the internet was born. This was new.
This was exciting. An internal white paper was
produced and management quickly approved the
project. Work began. Back then, internet speeds

were still slow, so size was a big consideration in
the initial development phases. This was a new
arena for the core development team. Pretty
much every core engineer was involved. No one
had any concept about how well the Omnis
server would cope. So thi
ngs were kept simple.
Almost as an afterthought, the possibility of
HTML based forms communicating with Omnis
using a similar mechanism, was realised, and the
ultra
-
thin client was developed towards the end of
the project. Once the web
-
client was released,

developers quickly made demands for more and
more functionality, and the web
-
client technology
has been growing constantly ever since.

Many years after the first release of the web
-
client, a new web
-
client was conceived. Huge
advances in HTML and Javascr
ipt made it now
possible to consider these technologies as a new
platform for the Omnis web
-
client. Having been a
leading Engineer in the design and development
of the first web
-
client, Michael was called into
Tiger Logic and agreed to help with the design

and development of the new Omnis JS
-
client.
The JS
-
Client is a plug
-
in
-
less client that entirely
relies on HTML and Javascript.


Session Details

This session will explain the technology behind
the web
-
client and new js
-
client, discuss design
consideration
s, consider multi
-
threading issues,
discuss optimisation tricks, and exp
lain limitations
and pitfalls.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
37

"OWrite Plus": an interface
to your data (updated for
2011)


History

With over 100 Omnis developers using "OWrite
Plus", and probably tens or hundreds of thousand
users relying on the OWrite Plus software on a
daily basis, this suite of components has grown in
importance in a relatively short space of time. Its
secret of su
ccess lies in the design. Some years
earlier, while working as a Senior Core engineer
in Mitford House, Michael was asked to research
what the next generation ad
-
hoc report tool
should look like. He could have looked at a
number of tools, including Crystal

reports, but just
a few hours into the task, he had a 'aha'
experience and needed to look no further. It was
obvious that it should look and feel like
something most users were familiar with. And
there was only one tool he could think of that
would fit th
at criteria, Microsoft Word. So the
answer was simple, a reporting tool should look
and feel like a word processor, but right from the
start, be designed to directly access data from a
database. It had to be capable of merging
complex data with rich text c
ontent at a click of a
button. A white paper was produced, but this
concept never made it of the drawing board due
to other pressing projects. Not long after, Michael
resigned his position at Raining Data and formed
Brainy Data :
-
) with the intention of pr
oviding
consultancy services and external components to
Omnis Developers. As a strange coincident, he
was contacted by a former colleague (thank you
Larry) who was now working for a large US
company (InStar) in need of a word processor
component for Omnis
with reporting capabilities.
A deal was struck and OWrite was born. OSpell2
already existed at that time and was quickly
integrated with OWrite. The same company was
also in need of a cross platform PDF generation
tool and within a year, the "OWrite Plus"
suite
was developed.


Session Details

This session is aimed at developers who already
use any of the "OWrite Plus" software
components, but anyone is welcome to find out
more. It will cover some of the advanced features
of these components, design conside
ration, and
everything there is to know to make the most of
the technology.



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
38

2009 and 2011 addendum
(updated for 2011)


Session Details

This small evening session covers all the new
stuff added for EurOmnis 2009, 2010 and 2011,
so you do not have to sit

through the entire
notation session again.

Object classes and object references: Short
session on the power of object classes and
object reference variables.

Complex grid exceptions: New examples
demonstrating the use of exceptions.

Messaging: Using messa
ging to reduce
complexity and potential program errors.

Translation: A short session having a look at an
alternative way of using string tables.

Report Notation: A more in
-
depths look at some
of the advanced report notation.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
39

Robert Mostyn



Rob Mostyn
bega
n his IT career in 1982 in
Sydney working on mini computers. In 1985,
while in the UK, he came across the Macintosh
and his whole view of computing shifted to both
the Mac (the graphical user interface) and Omnis
at the same time. He returned to the UK

in 1994
where he began working for Omnis
Software,
which

lasted until 1996 when he became an
independent developer.


Industry exposure has included: health care,
merchant banking, mortgage financing,
entertainment, manufacturing, foreign exchange
risk man
agement, fisheries, time share resort
sales, resort management, client logistics
interaction, and graduate recruitment. Working
with Omnis from single user systems, to small
office, to SQL, Classic to Studio conversion,
through to web work since 2000. For
the last 3
years Rob has been designing a software
solution to enable a global environmental
accounting system.


Best compliment he ever had: "Delivering in 6
weeks what a building society IT department
failed to deliver within 2 years".

His maxim: "I lo
ve this environment and have
thoroughly enjoyed the diversity of my career."


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
40

Classic to Studio
Conversion

Pros and cons of conversion v. rewrite and

thinking the transition through



how much is visual and worth retaining



any other transitions?



DML to SQL



V2 to V3 DAMS



analyse code for Studio opportunities



distinguish non visual code



window families



menu instances and dynamic
menus



table classes, or object classes, or
both



multiple database access



std method names, critical for OO
effectiveness



externals
v. functions



is unicode of relevance?

Before you begin



what is an instance



what is a task



how does this compare to classic



ensure FileFormat.ColumnName option is
on

Hybrid approach



converting the visual elements

-

create
core objects and methods



begin wit
h simple window classes



considerations for complex window
classes



reports

The bigger opportunity



changing the way you think



pitfalls


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
41

Hacker Proofing Your Ultra
Thin Web Application

The simple view of life; the hacker and their
mentality

Hacker objectives



revealing information



exploi
ting information



breaking the application


Vulnerabilities



what are they?



how Omnis protects us



how we can still be exposed



Apache's role


Protecting your code



detecting hacker activity



sanitizing data



appropriate reactions



engage a professional vulnerability
detection

service


Review HackerSafe code


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
42

Rob's Fireside
Consultations

This is intended as a dropin session to
discuss

anything if interest such as

sophisticated (multi library) applications

-

is
your application
becoming large?

-

do you have
developer contention issues (working on the
same classes)?

+ library architecture

+ user
identification

+ library permissions

+ optimistic
record l
ocking

security

+ password management

+ data
encryption

+ client v. server cont
rol (links with
your business model)

+ timestamps

+ audit
trail
s

+ menu and window permissions

cross platform libraries

-

have you developed
on one platform with the intention of deploying on
another?

+ filenames

+ string tables

+ FileOps

practical OO exam
ples

-

do you wonder what
the OO huff and puff is all about?

-

is it
academic tosh or are there practical benefits?

+
a demonstration of practical OO
implementations

+ window classes, table
classes, remote tasks

cross database considerations

+ Omnis
and/or

"proper" databa
ses

+ bind variables

+
Postgres

idiosyncrasies

+
SQL

functions

multiple concurrent O
mnis applications

-

do
you have (or w
ant to have) distinct O
mnis
applications for different people in the one
environment?

-

how do you manage updates to
al
l the users?

-

what if those users are spread
over multiple sites (or multiple customers)?

+
review an architecture that supports multi site /
multi user / multi application updates

applications that access multiple databases

-

why would you want to do
this?

-

easy or
difficult? Omnis v3 DAMs make this easy!

+
discuss scenarios where this is requi
red

+ how
Omnis makes this easy

application orientations

-

fat client / citric client
/ thin client?

-

ultra thin HTML pages

-

web
services

+ general discussion

on pros and cons
of each arrangement

+ focus on HTML
applications:

+ + multi lingual support

+ +
maintaining state (session management)

+
+
server code (O
mnis) v. client code (javascript)

+
+ HTML from page templates

+ + HTML from
OO database templates

+

+ caching for
performance

+ + load sharing considerations

+
+ content management systems



Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
43

Wendy Osbaldestin


Wizard Systems

Wendy joined ICL from school where her two
main projects were writing software to produce
management reports for evaluating new
products
and a package to collect information from the
sales force and produce forecast sales reports
-

this is where she came to believe that an
essential part of any system must be the
production of clear, concise reports.


Her first encounter with Omnis

was when asked
to evaluate cross
-
platform languages that would
truly work on both Macintosh and PC's. Omnis
came out as the only package at the time that
really did 'what it said on the box'. Starting with
Omnis 5 she has moved up through the versions
and

her main product is in Omnis 7, as well as
some work in Studio.


With a belief that reporting is an essential for any
database system and with a very varied client
base the need for very different types of reports
became apparent. Rather than writing repo
rts
within Omnis she looked for a dedicated reporting
tool that could access the data no matter what
platform / database it was stored in and would
allow the customers to define and write their own
reports if required.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
44

Crystal Server and Crystal
Reports

Crystal server

This session will demonstrate the set up of the
Crystal server so that reports can be run, viewed
an
d scheduled via a web browser.

Crystal reports

These sessions wi
ll be using Crystal Reports
2011


 

It is suggested that delegates come with
c
omplex reports that they would like to write.

 

An

evaluation copy of Crystal 2011

can be
downloaded from the
business objects

website
with a 30
-
day evaluation key

 

At Euromnis
,

I
will have some CD's with the evaluation software
and an evaluation key so that delegates can pre
-
install th
e software before the sessions


Introduction to Crystal

Reasons for
using an external report writer



Setting up data sources



Simple reporting



Repor
t parameters



Creating Graphs



Cross Tab reports



Sub reports



Exporting data



Linking to multiple data sources and including
the in
formation in the report Formula



Integrat
ion of Crystal
20
11 with Studio.

Advanced Crystal reporting



Calculations on report total
s



-
Running totals



-
Averages



-
Top N



-
Complex formula



-
Passing v
alues in and out of sub
-
reports



-
Delegates own reports



-
Passing parameters to Crystal from Studi
o

Distribution of Crystal

-

Setting up an insta
ller to distribute the
software

Delegates own reports

-

Producing reports on delegates own
databases


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
45

Andreas Pfeif
f
er


Tiger Logic Consultant

Andreas has been developing in Omnis since
1989 after some years of Basic, dBase and
Clipper. With Omnis 5, he developed a stock
database which grew into a selling
invoicing,
delivery scheduler, order etc. system. (This kind
of monster application which does everything for
a special customer). He continued developing
this application until Omnis 7.1.


After that he developed an application for real
estate agencies wi
th O7.2. His last project as an
independent was an accounting application for
taxi companies. In February 1997 he joined the
support team of Omnis Software Germany. In the
Summer of 1997 he started his Omnis training
courses, firstly in Omnis 7, then Omnis

Studio.


In the past years he did a lot of consulting to help
customers converting their Omnis 7 applications
to Studio. Nowadays Andreas is doing consulting
for Omnis developers in various projects,
including Web Client and client/server
applications. Fo
r some Omnis partners Andreas
is working as a project leader for new Studio
projects.


Euromnis RC 2011

12
th

Annual European Omnis Developer Conference

In honour of Fred Brinkman


October 23
-
27, 2011

Hotel Klein Zwitzerland, Heelsum, The Netherlands

Page
46

The Studio Application Lab

This is going to be a 6 part course for
intermediate Omnis developers. We will learn
how to create a real application from scratch. The
focus

is set to learn how the different class types
can be used to make a well designed object
oriented SQL application. Beginners who just
finished the basic Omnis course as well as long
time Omnis developers who are not familar yet
with Omnis OO features and
SQL ability will
understand the concepts. Attendees must have
basic knowledge on how to use the Omnis Studio
classes.


We will create a simple CRM Omnis application
that uses an SQL backend. The attendee is open
to either make a fat client or a web client
app.
This app can be used for further development of
individual projects. Each chapter will be based on