Welcome!


Every programmer knows about the IF command. It's pretty much a fundamental part of the syntax of every computer language that has ever existed. I don't need to explain how it works. The DataWindow can't use the IF command though. It does, however, support an IF function. In its sim...
Security is a must for most corporate applications. This article will give you a starting point to designing and implementing your own. We will do it with a table that is added to the example database and implement it in ancestor code. The idea is that you should only have to add rows ...
Sybase I am convinced that PowerBuilder is poised for a mighty comeback. The fact is that still today PowerBuilder is by far the most productive development tool available. It eclipses all the rest. An experienced PowerBuilder programmer is demonstrably more productive and can finish t...
In my last article we explored what I call Advanced DataWindow Sorting. We covered everything that we need for the DataWindow. In this article we are going to polish what we did last month and make it look professional. The main area of concern is our sort selector window as seen in F...
While external controls exist for viewing image thumbnails, there can be the need to view images as thumbnails within the context of other data within a multi-row list, treeview or report. This can be easily done with a PowerBuilder DataWindow object. In this case a treeview DataWindow...
This article provides a means of automating the sorting of DataWindows... not just grid DataWindows as discussed in last month’s article, but all DataWindows, regardless of display format. Bear in mind that we are writing programmer tools. When writing for programmers we want to give ...
PowerBuilder has a very handy way to make data entry more convenient: the DropDownDataWindow and DropDownListBox edit styles for DataWindow columns. Indeed, it’s much simpler to pick up a value from a look-up list than to type it in each time you need to enter it. However, it looks lik...
This article describes how to create a grid presentation window that allows sorting by clicking on the column header. To begin we need to create a grid DataWindow. I’m selecting just few columns from the employee table. Here is my sql for the DataWindow in Figure 1. Once we have crea...
This is the third and final part of a series presenting a proposal for the use of the tag property of DataWindow columns. My original thought was to provide a means to automatically set a microhelp for each column. Of course, if you are using an MDI application you have a function to s...
With all the attention in PB12 focused on .NET and WPF, some of you may be wondering about the future of Win32 targets in what is now being called PB Classic. Those hoping to still continue to work with Win32 targets in PB Classic can rest assured, PB Classic is not going away and we a...
This is the second part of a two-part article. In the last article we learned how to use the tag property to create our own microhelp and automate it. In this article we are going to go one step further and use the tag property for other things. The list of items that I used the tag p...
Have you ever seen a form that has its own microhelp that changes when a field gets focus? I’m sure you have. You might see a window and at the bottom of the window is a line that says, “OPTIONAL – Enter the employee birth date,” when a field is entered. We are going to create a simple...
This month the article is not exclusively about DataWindows. To be sure it is about DataWindows, just not exclusively so. This month we are going to have to stretch our skills just a little. The goal is to replace SQLCA with something a little more robust. Essentially we are going to ...
Not sure when this sneaked in... I was working on some new DataWindow object courseware with version 12.1 last week when I stumbled onto this little change. For those of you with a penchant for using the Messagebox function for debugging, you might find this interesting Used to be...
One of the most useful custom objects that I’ve ever written is my master_detail object. It holds a prominent place in my toolkit. This article will take you through the steps of how to write one and in the process de-mystify the object. First we want something that looks like Figure ...
One of the main goals of PowerBuilder Classic application refactoring is to divide the code into logical partitions. Although you will likely not gain significant performance increases in exchange for your efforts, you will achieve two other highly significant gains. First, your logic ...
Service objects were introduced for PowerBuilder at about the same time as the PowerBuilder Foundation Classes. Much like the PFC, most programmers found reasons not to use them. In this article we will reduce the complexity of these objects and in so doing perhaps open a new world of ...
PowerBuilder has very good online help and documentation that extensively covers most aspects of programming with PowerBuilder. However, from time to time you’ll come across a problem that you can’t find an answer to in the online help or documentation. If a search on the Internet does...
If you’ve been following the product direction for PowerBuilder for the last few releases, and particularly with respect to the upcoming PowerBuilder 12, you know that PowerBuilder is evolving into a .NET development tool. As PowerBuilder developers, you’ll also know that the key stren...
One of the minor DataWindow Object design annoyances I have accepted as a fact of life is the total lack of tool support when writing a SQL Select statement in Syntax mode. I'm often forced into syntax mode by limited abilities of the GUI SQL painter. In support what I imagined was m...
Software that is not used is useless. Facing the challenge that doctors prefer to spend time with their patients rather than facing the monitor, we have fine-tuned methods in our DataWindow-based forms so that user entry is quick, painless, and a pleasure. These include the use of drop...
This is the second part of an ongoing series about the new features that were added in PowerBuilder 11.5. In the first part, we looked at the Federal Desktop Core Configuration (FDCC) and the impact it had on developers. In this part, we’re going to look at a number of the improvements...
TecnoTRENDS has been using PowerBuilder as its main development platform for years. The ultimate reason for choosing PowerBuilder was the versatility of the Sybase DataWindow control available under this platform. In short, the DataWindow control provides a significant productivity boo...
One of the typical problems developers face when using the HTML DataWindow (HTML DW) is that there's no SetRowFocusIndicator() method to allow users to see which row is the current one. This can confuse the user and lead to errors. For example, without a current row indicator users may...
This article talks about the ease with which DataWindows can be designed and consumed in a Microsoft Visual Studio 2005 environment. The DataWindow .NET version 2.5 has the infrastructure to support this concept. With the earlier versions of the DataWindow .NET, such as 1.0, 1.5 and 2....
It will come as a surprise to no one that PowerBuilder's native graphing capabilities are somewhat lacking. Even the Define Graph Style dialog for the DataWindow graph style seems to have been left out of the GUI update in PowerBuilder 10.5 (see Figure 1). Forget Windows 95, this looks...
The current version runs with DataWindow.NET 2.0 and uses PowerBuilder 11 Web Services. To keep the installation slim it uses no database; instead the data is stored in DataWindows or XML files. Prognos makes use of AJAX techniques and accesses .NET classes from PowerBuilder for XML ha...
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 numeri...
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.
One of the first things you'll notice when you open up the File->New->DataWindow dialog in DataWindow Designer 2.0 is the new TreeView DataWindow presentation style (see Figure 1). Once you've double-clicked on that, you'll see the same series of dialogs that you're already familiar wi...
Microsoft Visual Studio has excellent multi-language support both at design time and runtime, while Sybase DataWindow.NET doesn't have that. In this article we'll consider how to implement multi-language data presentation using DataWindow.NET. DataWindow.NET has two integral parts. One...
In the early 1990s, before Windows 98, before Windows 95, before Windows NT, even before Windows 3.1, the DataWindow was being hatched by a small team of developers in Massachusetts. By small, I mean a single developer, Kim Sheffield - the 'Father of the DataWindow.'
Last month we saw how DataWindow.NET technology can be a benefit when used for data presentation and data access in a Windows Forms (WinForms) application. This month we're going to look at how DataWindow.NET technology is a simpler but more powerful way of formatting data in the prese...
Last month we looked at Microsoft's .NET Pet Shop sample application and saw how DataWindow.NET technology could be used in the data access layer of an ASP.NET-based application to reduce the its complexity and increase developer productivity.
PowerBuilder novices know the problem as well as seasoned PowerBuilder developers. You build a window in the window painter. You arrange the controls on the window and the layout looks fine.
I recently had the opportunity to rewrite one of our major data entry systems. This system processes payments on a monthly basis, either individually or submitted as a group under an administration company - rather like companies that have a third party handle their payroll.
Let's face it - rewriting an existing application from platform to platform is not fun. But many businesses successfully served with PowerBuilder applications are rewriting parts of PB apps for the Web and maintaining the same functionality in PowerBuilder and Java, PowerBuilder and C#...
In the coding life of every programmer there's often a need to create a view of data that extends variably both to the right and vertically. Using a grid presentation style usually solves this problem. But what about when a programmer needs more control over presentation style?
The development of the Web DataWindow is a great technological advancement. It's extremely helpful in moving an existing PowerBuilder application to the Web. Most PowerBuilder applications contain many DataWindows for the various screens and reports. The ability to quickly render the...
We've spent two articles now on Sherlock (PBDJ, Vol. 7, issues 8 and 10). This is an application that will use dynamic DataWindows to create reports for the example database provided with PowerBuilder. Using this tool we'll learn about dynamic DataWindows and how to create them.