In June of 2007, Sybase
released PowerBuilder 11.
PowerBuilder developers
can now deploy
PowerBuilder components
as .NET Assemblies or as
.NET Web Services. A
PowerBuilder developer
can now create these .NET
resources so that those
who develop .NET
solutions can benefit
from PowerBuilder and
DataWindow productivity
regardless of what
development tool they
use. PowerBuilder 11 also
gives its users the
ability to deploy entire
applications as ASP .NET
Web Forms applications
(WebForm) as well as to
deploy entire
applications as .NET
Windows Forms (WinForm)
applications.
A shortcoming of
PocketBuilder 1.x and 2.x
has always been the
difficulty in accessing
Web Services. This
shortcoming had always
irritated us, but the
limitations of the
PocketPC and the size of
the traditional
PowerBuilder approach
prevented us from
providing an adequate
traditional solution. We
have a sample up on
CodeXchange that wraps a
simple API around the
free 'Pocket SOAP'
client, but that had its
own limitations and we
were never really
satisfied with it.
The mouse was the
original idea of Doug
Engelbart who was the
head of the Augmentation
Research Center (ARC) at
Stanford Research
Institute. Engelbart's
philosophy is best
embodied, in my opinion,
in the design of another
device that he invented,
the five-finger keyboard
- with keys like a piano,
used by one hand. The
problem was, Engelbart's
five-finger keyboard and
mouse combination was
very difficult to learn.
The release-defining
feature of PowerBuilder
11 is its ability to
deploy existing
applications as .NET
Windows Forms and Web
Forms applications and
components of business
logic, namely
custom-class user objects
(NVOs), as .NET
assemblies and Web
Services. Although
PowerBuilder's adoption
of the .NET Framework
represents a great leap
forward for application
developers, the
implications of
converting a desktop,
client/server application
to an ASP.NET Web
application are
significant.
One of the biggest
complaints I hear about
PowerBuilder is how the
applications developed
with it end up looking
old and outdated.
PowerBuilder allows
developers to create
complicated, robust, and
efficient business
applications. What it
doesn't do is offer an
effective presentation.
Sometimes lackluster
presentation can hurt an
application's
marketability.
Unfortunate as it is, the
look of the application
is what gives users their
first impression. An
old-looking application
just won't impress.
PBDJ's readers ask us
from time to time what
the most popular article
in the magazine has been
over recent years. We are
delighted to report that
the answer is that it is
one by our very own and
much loved
editor-in-chief, Bruce
Armstrong. We first
published it in 2005.
Here it is again in full
so that you can enjoy
Bruce's insights into the
endless scope for
customization in
PowerBuilder.
In the adventurous world
of software development,
we have all come to
experience, criticize,
and embrace many software
lifecycle approaches
(e.g., RUP, Agile, Scrum,
XP, etc.). At their core,
they intend to identify
various stages in the
software process and
optimize their
instrumentation through
various iterative
techniques. Through my
own consulting experience
on many projects, I have
come to expect a slightly
different discrete set of
'stages' that invariably
accompany software
endeavors.
When I was just starting
my career in programming,
I thought I would be
creating new
applications. And I did -
I created a few
applications from
scratch. Maybe two or
three of them. But for
the most part what I've
been doing is working
with code written by
someone else a while ago
- legacy code. What is
legacy code? You could
define legacy code as
ancient applications that
were written in the past.
SMS or Short Messaging
Service is being used by
millions of mobile phone
users as you read this
article. Here is a
fact...Sybase 365 aids
the delivery of nearly 6
billion messages each
month. Originally limited
to 160 characters and the
small phone keyboard, SMS
language was born on
December 3, 1992, when an
engineer named Neil
Papworth sent the very
first SMS with 'MERRY
CHRISTMAS' on it to his
colleagues at Vodafone in
Great Britain.
Roughly two years ago,
when I was writing an
article on 'New Features
for Device Developers in
Visual Studio 2005' that
was published in the
August 2005 issue of .NET
Developer's Journal, our
program management team
was already busy shaping
the next release of the
product, which is soon to
be released as Visual
Studio 2008. We spent a
lot of time talking to
our major customers and
reviewing the feedback we
got on blogs and
questions on forums on
newsgroups to identify
what
enhancements/features
would be most useful to
our device developers.
I just wanted to
acknowledge the
tremendous increase in
the amount of Blog
activity that I have
received over the past
year. I think (and hope)
that this is because many
Sybase professionals out
there have come to visit
my site for latest
information on the Sybase
scene. Since I started my
Blog in August of 2005 I
have seen a steady
increase in unique visits
to my site. This whole
Blog experience of course
is Reed Shilt's fault.
Reed is the development
manager for PocketBuilder
and started the whole
thing off by opening his
own Blog within PBDJ,
then sending me an
invitation to join him in
this new venue. At that
point in time, Blogging
was a whole new
experience for me and in
fact, I had not even
heard the term until I
received Reed's email.
Software testing is an
indispensable part of
software development; it
aims to assess the
software quality and
confirm whether the
functions meet the
requirements defined at
the start of the project.
In 1990 the IEEE/ANSI
defined testing as: 'The
process of operating a
system or component under
specified conditions,
observing or recording
the results, and making
an evaluation of some
aspect of the system or
component.' (IEEE/ANSI,
1990 [Std 610.12-1990]).
The 'specified
conditions' could be
comprehended as
requirements or designs.
In the past decade, the
software industry has
evolved significantly,
especially in the
enterprise application
development area. And the
biggest evolution has
been the transition from
client/server
applications to Web based
applications.
Six years ago I was asked
to implement a data
repository to hold
network management and
performance data. With
monitoring systems,
databases have a tendency
to be large, and have a
delicate balance between
inserting (logging) new
data and deleting old
(aging) data out from the
system. The SQL Anywhere
server database from
iAnywhere was what the
customer wanted to use,
so I first had to
evaluate if it could
handle the expected load.
This article describes
the architecture and
features of the Web
application development
tooling in WorkSpace 1.5,
how to develop these
powerful JSF DataWindow
components, and then use
them in a JSF Web
application, as well as
how to integrate Web
applications into a
Service Oriented
Architecture.
I used to implement SMTP
for PowerBuilder using a
PBNI class that used P.J.
Naughter's
CPJNSMTPConnection MFC
class to do the heavy
lifting. Well, .NET 2.0
changes all that. One of
the new features of .NET
2.0 is the introduction
of a SMTPClient class.
One of the features of
.NET since it was
introduced is the ability
of non-.NET applications
to call .NET components
through the use of a COM
Callable Wrapper (CCW).
At Nielsen Media Research
(NMR), the Core Business
Architecture group
recently completed a
project to evaluate where
systems support business
processes poorly or not
at all. Our first
challenge was to
determine the format to
use in capturing the
information.
EAServer 6.0 brings with
it many new and exciting
changes on a number of
fronts, not the least of
which is its management
console, EAServer
Manager. Many of the
changes wrought in the
console are simple
byproducts of the changes
in the underlying server,
so I won't delve into
them. Instead I'll deal
with changes to the
console itself,
discussing the most
notable ones and
hopefully giving you a
good feel for what's in
store.
According to the
programmers' guide
provided with EAS (5.x),
a Web application is a
unit of deployment for
interrelated Web content,
JavaServer Pages (JSPs),
and Java servlets.
Generally, a Web
application developer
under EAS must create JSP
files and/or Java
servlets. Sometimes,
however, it would be
better to use some other
techniques to save
development time. It is
possible that there is
already a similar open
source Web page, or there
might be a demand to run
a complete Web
application not written
in Java/JSP code under
EAS.
Did you know you can make
automated installs for
your PocketPC and
SmartPhone applications
created with
PocketBuilder? When you
use a PocketBuilder
project to compile your
application, it
automatically creates an
_setup.ini file that can
be fed to a third-party
EZSetup program to create
the installation
executable (see Listing
1). It also creates a
_makecab.bat file that is
used to create the CAB
file (see Listing 2). The
project even
automatically executes
that file. That batch
file includes a
commented-out call to the
EZSetup program.
PowerBuilder provides the
send() function to send
messages to the Windows
objects. The information
about its usage is
fragmentary and widely
dispersed throughout the
help and manuals. Since
searching for this
information was quite
tedious, I decided to
write down what
information I could
gather.
One of the long awaited
features introduced in
PowerBuilder 10.5 is
support for contemporary
(aka Office XP) menus and
toolbars. The first
difference you'll notice
is that the flat
contemporary style and
new icons are used
extensively throughout
the PowerBuilder IDE
itself (Figure 1).
The PowerBuilder
Application Server Plugin
(PASP) is a new product
offering from Sybase.
It's currently in beta as
part of the EAServer 6.0
beta; however, when
released it will be
distributed as a separate
product. The PASP allows
PowerBuilder developers
to deploy PowerBuilder
components to third-party
application servers
(JBoss, WebSphere,
WebLogic, etc.), much the
same as they can with
EAServer today. This is
of particular importance
in companies that have
already standardized on a
non-EAServer application
server.
In a previous article
(PBDJ, vol. 12, issue 5)
I wrote about the best
file formats for using
Windows XP icons in
PowerBuilder. In the
summary of that article I
mentioned how to create
your own XP style icons.
A number of people have
since contacted me asking
for more detail on how to
create such icons and a
second article on how to
go about creating icons
for their own
applications.
Sybase has recently
included impact analysis
features into the
PowerDesigner (PD)
modeling tool. If you
aren't familiar with PD,
it's a powerful tool for
modeling business
processes, data designs,
XML messages, and
application logic (ala
UML). Within each model,
you can view the
dependent objects
(basically, what would be
affected if you deleted
something).
As I started a new
PocketBuilder application
and wanted to encompass
some of the 'context
sensitive' help features
that I have previously
used in a PowerBuilder
application. I knew that
this was not going to be
easy, as the Pocket PC
operating system does not
support the (Multiple
Document Interface)
behavior. As a result,
neither the Micro-Help
bar nor pop-up help (also
known as 'bubble help')
are available as they
would be in a standard
PowerBuilder application.
PowerBuilder developers
also use a nice feature
named 'PowerTipText' that
allows automatic 'bubble'
help to appear during a
mouse hover.
In the early days of
Java, a sample
application called Java
Pet Store was introduced
as a 'blueprint and
guideline' for Java
development. A few years
later when Microsoft
introduced .NET, they
also provided a similar
sample application to
demonstrate preferred
methods of coding for
.NET called .NET Pet
Shop. That has
subsequently resulted in
a bit of warfare as the
two camps attempted to
demonstrate why their
implementation was a
better,
higher-performance
implementation.
For years, people have
said that PowerBuilder
Foundation Classes (PFC)
has a steep learning
curve. Drives me crazy.
Don't believe it for a
minute. While it's true
that there is a lot to
learn about PFC, the same
can be said of cars, but
few of us learn the
intricacies of ignition
systems before learning
to drive.
The PowerBuilder
DataWindow object is a
powerful presentation
component. By using the
built-in DataWindow
functions within
DataWindow object
expressions, complex user
interfaces can be
developed, and by using
PowerBuilder's Windows
ActiveX control the same
component can be embedded
in a browser.
We've heard the rumors.
Could this really be the
last version of
PowerBuilder? Not by a
long shot. We're busy
creating and evolving
your favorite product. I
must admit, before
joining Sybase I heard
the rumors myself and
wondered about their
validity.
Over the past 10 years,
corporations have
experienced a dramatic
change in the way they
store and process
information. In the early
1990s corporate
information systems
tended to be isolated
from one another.
Your company decides to
implement a mobile
application initiative
and has chosen which
database, handheld, and
software packages to use.
A new year has begun and
new projects will be
started, so now is the
time to think about what
we are doing, what our
jobs are, and how we
understand enterprise
computing.
Time is passing, as that
is its nature. Outside of
overdone science fiction,
there really is no moving
backward. The future is
variable-filled,
uncertainty looming ahead
like an audit of a badly
run project. What do we
dare in the coming days?
What will this New Year
hold for us IT
professionals?
I'm sure many of you have
experienced the same
problems within your
company as I've
experienced at my work
these past few months. We
have a single database
server serving every part
of our information
processing community
within our company, from
transaction to batch
processing to analytical
processing.
Recently, my development
team was asked to modify
our inventory management
application to use
Microsoft SQL Server
(MSSQL) as its back-end
database instead of
Sybase's SQL Anywhere
(ASA).
Security is always a hot
topic. How do we make
sure that data can be
accessed only by those
who are allowed to access
it? Working in
conjunction with
encryption, the current
mainstream solution is
passwords, which is not
ideal.
Your company decides to
implement a mobile
application initiative
and has chosen which
database, handheld, and
software packages to use.
They're ready to start
creating a mobile
solution when someone
asks, 'How do we deploy a
new version?'
Chapter 5 of PowerBuilder
9: Advanced Client/Server
Development included a
discussion on how to add
items to the New dialog
within the PowerBuilder
IDE. This article will
review that information
and look at a couple of
additional techniques for
extending the
PowerBuilder IDE
There are times when it
seems that the most well
intentioned and seemingly
helpful IT professionals
are simply standing in
the way of the progress
of business. It may seem
preposterous to some of
you, probably raise a few
hackles no doubt. 'Hey,
not us.
A long time ago, after I
had finished school and
worked as a C++
developer, I started
programming with
PowerBuilder. I was not
one of the best database
developers; in fact, I
was more than happy to
create DataWindows
without a Cartesian
product. But over the
years I learned a lot and
lost my fear of the
complexity of database
servers.
From Application
Virtualization to Xen, a
round-up of the
virtualization themes &
topics being discussed in
NYC June 23-24, 2008 by
the world-class speaker
faculty at the 3rd
International
Virtualization Conference
& Expo being held by
SYS-CON Events in The
Roosevelt Hotel, in
midtown
Last week I posted a
screen shot of the new 3D
Rendering capabilities
being added to some of
the 3D graphs in
PowerBuilder 11.5. It was
met with mixed reviews on
the PowerBuilder Futures
newsgroup
(forums.sybase.com) so I
went back to the drawing
board to see what I could
come up with.
BluePhoenix announced
that it has expanded its
collaboration with
Microsoft on legacy
modernization projects.
The collaboration
provides customers moving
their applications or
databases to .NET-based
environments the best in
both modernization
services and technical
support. BluePhoeni
Sybase announced that
AJAX development
capabilities and further
Microsoft .NET
enhancements have been
added to the latest
version of Sybase
PowerBuilder 11, the
premier 4GL rapid
application development
(RAD) tool. PowerBuilder
11.2 represents another
milestone in the
PowerBuilder road
Sybase has released the
production version of its
flagship .NET development
tool - PowerBuilder
version 11.2. This latest
release of its premier
IDE for RAD includes not
only standard fixes but
also a good list of new
features. Here is the
'Coles Notes' version of
these new features.
In June of 2007, Sybase
released PowerBuilder 11.
PowerBuilder developers
can now deploy
PowerBuilder components
as .NET Assemblies or as
.NET Web Services. A
PowerBuilder developer
can now create these .NET
resources so that those
who develop .NET
solutions can benefit
from PowerBuild
FEATURED WHITE PAPERS
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
I began my career at RCA
Aerospace and Defense in
1983 and worked at MITRE
Corp., BAE Systems, and
the State of NH. I worked
in the defense field
performing software
In keeping with the
longstanding SYS-CON
tradition of being at the
very forefront of
software development with
all its online and
offline resources,
SYS-CON Media &
Last week, our
development team was
supposed to launch a new
version of our
application. As usual,
right before finishing
the application we
discover that one or two