From the Editor-in-Chief of PowerBuilder Developer's Journal

Bruce Armstrong

Subscribe to Bruce Armstrong: eMailAlertsEmail Alerts
Get Bruce Armstrong: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Related Topics: Enterprise Architecture, Enterprise Application Performance


Say Hello to PowerBuilder 12.5!

This is a major release with a number of significant new features

By the time you read this, PowerBuilder 12.5 should be released. Like several ".5" releases before it (i.e., 6.5, 10.5 and 11.5), this release is a major release with a number of significant new features. We'll have a number of individual articles in PBDJ that will dive into these new features in greater detail. Given the editorial lead time, I wouldn't be surprised if you've even read a few by the time you read this! For now though, I'd like to give a brief overview of what you'll see in this new version.

PowerBuilder Classic
Just to show that you haven't been ignored if you're still using just PowerBuilder Classic, a number of important new features have been included for that version of the product.

RTF, Image and XPS Database Blobs in the DataWindow
This feature was added to PowerBuilder.NET in an earlier release [1], and has now been made available for the classic version of PowerBuilder. You no longer have to SELECTBLOB such data into a local file and then load it into a separate control to be able to display it in your applications. You can reference the blob containing the data directly in your DataWindow and it will display automatically.

User-Drawn Controls in DataWindows
A Paint expression function has been added to the DataWindow to allow you to paint custom controls within your DataWindow object.

Sharing ADO.NET Connections with .NET Assemblies

If your classic application uses an ADO.NET connection, it can share that connection with any .NET assemblies that it uses. You can either import the connection that the .NET assembly has established, or establish the connection within the PowerBuilder application and then share it with the .NET assembly.

Transparency for Window Controls
Most windows controls now support a transparency value for the backcolor of the control as well as a transparency property (adjustable from 0 to 100%).

Both PowerBuilder Classic and PowerBuilder.NET
A number of features have been added both to PowerBuilder Classic and PowerBuilder.NET.

AutoWidth Property
A new property for columns in a grid window allows for the width of the column to be determined at runtime in order to accommodate the amount of data that needs to be displayed. You can either have it set to base the width on the longest amount of data retrieved, or base it on the amount of data that is actually visible and then fine-tune that latter option for different behavior when the data is being scrolled (so that other data with different widths is becoming visible while the data the calculation was originally based on is no longer visible).

Enabled, Tab Order and Show Focus Rectangle Properties for DataWindow Controls
A number of non-column controls in the DataWindow now have enabled and tab order properties in both PowerBuilder Classic and PowerBuilder .NET. In addition, a Show Focus Rectangle property has been added for several non-column controls in PowerBuilder Classic. Further, the Enabled and Show Focus Rectangle properties are expressionable.

Finally, a number of significant enhancements have been added to PowerBuilder.NET.

Visual Studio 2010 Isolated Shell
PB 12.0 was based on the Visual Studio 2008 isolated shell. Updating to the more recent isolated shell provided two enhancements. One was that the help system was completely revised. More significant, the new shell finally adds support for multiple monitors. You can float panels of the IDE outside of the frame (including onto an additional monitor) and the IDE remembers that location and returns it there when you restart the IDE.

.NET 4.0 Support
PowerBuilder.NET has been brought up to date with support for the latest version of the .NET Framework.

Batch Command Capability
Somewhat akin to OrcaScript for PowerBuilder classic, the pbshell.exe now accepts a /pbcommand argument that in turn refers to a script file. The script file can contain a series of instructions that allow for command-line based compilation and deployment of PowerBuilder.NET targets. This is an essential capability for shops that are trying to support some type of continuous integration [2].

Multithreading Support
Multithreading is implemented in PowerBuilder Classic through Shared Objects. However, there was an issue with using the same technique in PowerBuilder.NET because the PowerBuilder.NET runtimes had deficiencies with regard to synchronizing data and locking mechanisms for static fields. In PowerBuilder.NET 12.5 those deficiencies have been addressed, and Shared Objects can now be used to implement multithreading in PowerBuilder.NET as well.

WCF Services
WCF Services is a new target used to create web services using the WCF model. WCF supports more transport mechanisms as well as implements WS standards related to message security and reliability.

Visual Objects Supported in .NET Assemblies
In previous versions of PowerBuilder.NET, you could only create .NET assemblies that were non-visual. With PowerBuilder.NET 12.5, you can create .NET assemblies that incorporate custom visual user objects as well.

PowerBuilder Assembly
The PowerBuilder Assembly target is a new target that provides much of the same capability as a PBD file in PowerBuilder Classic. You can create such a target and then reference it in another PowerBuilder.NET project without exposing the source code behind it.

REST Client
Previous versions of PowerBuilder only supported web service clients based on the SOAP architecture. Recently, REST has achieved significant attention as an alternative architecture for web services. With the new REST Client capability, PowerBuilder is fully able to take advantage of this new architecture as well.

Data Buffers in the Debugger
The debugger now allows you to see data in the primary, filtered and deleted data buffers of a DataWindow in new debugger DataWindow and ListView visualizers.

There are actually a number of other enhancements I haven't included on this list. I just pick and choose the ones that seemed most relevant to me. I encourage you to browse the new features section of the release bulletin to see what else may be of interest to you. Or better yet, grab an evaluation copy of the new version as soon as it becomes available and try it out for yourself. I'm sure you'll find something to like in this new version.




More Stories By Bruce Armstrong

Bruce Armstrong is a development lead with Integrated Data Services ( A charter member of TeamSybase, he has been using PowerBuilder since version 1.0.B. He was a contributing author to SYS-CON's PowerBuilder 4.0 Secrets of the Masters and the editor of SAMs' PowerBuilder 9: Advanced Client/Server Development.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.