PowerBuilder Developer's Journal
A picture is worth a thousand words. We all have heard this saying a
countless number of times. But what if you don't understand what is drawn in
the picture? I was approached once with a request to review requirements
specifications for some module. The document contained a scheme that
represented the place of the module within the system. The picture was mainly
made of rectangles and arrows. The rectangles had labels and I figured out
that they represented other modules in the system. But I couldn't understand
the meaning of the arrows. When I asked the author about them, the answer was
"Well, they are just arrows." After a pause, "They show that there's some
connection between the modules" was added.
Nowadays, the UML has become the de facto standard graphical notation for
software projects. There are many books and training cours... (more)
Let's suppose that you have a search window where a user can enter a search
string and get the list of text items matching this pattern. Ideally, the
portions of text that meet the search criteria should be highlighted, for
example, by text formatting. It could look like Figure 1.
In PowerBuilder we have a great tool for searching and displaying information
- the DataWindow. But how can we do text formatting inside a DataWindow
column? Unfortunately, there's no way in the DataWindow object to do that.
This article describes a technique that will let you simulate this.
A Sample Da... (more)
It may seem as if PowerBuilder programmers are bound to use global variables.
Even the PFC, which is said to be the most successfully designed
object-oriented framework, requires the use of global variables. Is it
something in the nature of PowerBuilder that makes us use them? I won't
discuss whether it's good or bad to use global variables as enough has been
said on this subject. However, I am going to discuss why global variables are
usually used in PowerBuilder applications and how we can live without them.
When Global Variables Are Used
Let's face it, if you use global variabl... (more)
DataWindow display formats aren't a big secret. Most PowerBuilder developers
use them to format numeric, date, time, and string values properly. Such
display formats are usually straightforward and contain characters that have
special meaning for a specific datatype like '#' for numeric values or '@'
for string values. However, the DataWindow display format is a very powerful
tool and you can get more than simple data formatting. This article explores
what you can do with DataWindow display formats demonstrating a few tricks.
Using Regular Characters
A DataWindow display format ca... (more)
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. For me, legacy code is code written by someone
else no matter how long ago - 15 years or 15 minutes. What's common about all
applications that were written by someone else? You don't kn... (more)