Tech Articles


DataBase Tracing Features


One of the "new" features in PowerBuilder 10.5 was actually initially introduced in the PowerBuilder 10.2 maintenance release. The folks at Sybase finally addressed a number of fundamental issues with database tracing for deployed applications.

Trace File Location
Users are often running under accounts that don't have Administrative or Power User privileges. As a result, they may not have sufficient rights to create a file in the WINDOWS directory, the very directory where a deployed application was hard coded to store the trace file. We've been able to specify an alternative location for applications run out of the IDE since PowerBuilder 6.0 by setting the DBTraceFile parameter in the database section of the PB.INI file. It wasn't until these new database tracing features were added that we gained this ability for deployed applications.

Read more

Installing GhostScript for PowerBuilder on Windows 10


** “Kool” Tip **

GhostScript on Windows 10

PDF Generation for PowerBuilder Classic 

 

   Most PowerBuilder developers know that the DataWindow object class in PowerBuilder (PB) Classic utilizes the open source (GNU) version of the GhostScript (GS) software to convert PostScript printer output into an Adobe PDF (Portable Data Format) file. The challenge this year for PB Developers moving into the MS-Windows version 10 domain, is that all drivers must be signed in order for the new O/S to accept the driver. This creates an issue for the GS installation as even the latest version 9.21 does not supply signed MS-Windows drivers.

Read more

Using Autoincrementing Columns from a PowerBuilder DataWindow


Note:  This blog entry is basically the written version of a video I did for the SAP Database and Technology Academy.  You can either watch the video or read the blog entry, or both if you’re so inclined.

 

 

Why use Autoincrementing Columns?

 

Before we get into how, first we need to look at why we want to use autoincrementing columns.  So let’s step back and consider how we want to create primary keys for the entities in our databases.  There are basically two approaches, using “natural” (intelligent) keys or “surrogate” (non-intelligent) key.  Natural (or intelligent) keys mean we pick some attribute of the entity itself that we believe provides a unique value we can use to reference that entity. We then use that key in foreign key references into other tables.

 

Read more

TreeView DataWindow Presentation Style


One of the first things you'll notice when you open up the File -> New -> DataWindow dialog is the new TreeView DataWindow presentation style (see Figure 1). The first thing you'll actually notice is that all of the IDE icons have more of an XP style, but then you'll notice the new presentation style. Once you've double-clicked on that you'll see the same series of dialogs that you're already familiar with from the other presentation styles, in which you select the data source, the tables to use, the columns in the tables, etc.

That is, it will be familiar until after you've finished defining the SELECT statement. Once you leave that, you encounter a new Report Definition dialog (see Figure 2). Here you indicate whether you want the TreeView DataWindow to be a Grid Style or not and which columns from the SQL statement should be associated with the first level on the TreeView. You can add other levels to the TreeView after it has been created, similar to the way you create additional group breaks in a group DataWindow (see Figure 3).

Read more

Customizing the PB IDE


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

Adding Items to the New Dialog
All versions of PowerBuilder 7 and beyond allow you to add items to the New Dialog by adding entries to the registry. First navigate to:

HKEY_LOCAL_MACHINE\SOFTWARE\Sybase\PowerBuilder\X.0

where X is the major version of PowerBuilder that you are creating the new item for (7, 8, or 9). Under that key create a new subkey called "CLSID" that all the new items will be located under (see Figure 1).

Read more

Using Oracle Stored Procedures in Your DataWindows


Oracle was slow to introduce support for returning result sets from stored procedures. When they finally did add such support, they did so in a manner that was somewhat different than the approach used by other vendors.

This has a couple of consequences for PowerBuilder developers. The first is that the PBDBMS approach was developed within PowerBuilder as an interim workaround. The second is that using stored procedures to return result sets is not as widespread a practice with Oracle databases as it is with other database products.

This article (an excerpt from an upcoming book on PowerBuilder 9) is an attempt to address this situation. The interim PBDBMS solution is going away. In PowerBuilder 8, support for the PBDBMS was restricted to the O73 driver and with PowerBuilder 9, support for it will be dropped completely. If you're still using that old technique and need to migrate, or you would just like to learn the new one, this article should help.

Read more

Find Articles by Tag

Automated Testing Testing TreeView Menu Database Table Data Messagging Web API Elevate Conference OAuth 2.0 Export JSON Repository Windows OS Open Source OrcaScript File Syntax PowerScript (PS) JSONGenerator RibbonBar Builder OAuth Windows 10 Icons Debugger SqlModelMapper DevOps BLOB PowerBuilder Compiler UI Themes InfoMaker RESTClient 64-bit Authentication PowerBuilder GhostScript DataType NativePDF Graph UI Modernization SqlExecutor CoderObject Debug Database PowerServer Web Database Profile .NET DataStore SOAP CrypterObject Error Web Service Proxy Database Table Schema Window Validation Text External Functions Oracle Script License ODBC Event Handler SnapObjects Event Handling Branch & Merge .NET Assembly MessageBox C# Bug TLS/SSL PDFlib COM Database Connection Database Painter Interface Model Event Debugging HTTPClient PostgreSQL ODBC driver Installation Application Encryption XML DataWindow JSON PowerBuilder (Appeon) DataWindow Visual Studio .NET Std Framework WebBrowser PostgreSQL PBNI Source Control PowerServer Mobile Migration OLE Source Code Linux OS Trial Configuration Import WinAPI Filter API RichTextEdit Control Service REST SDK Git Variable Charts iOS CI/CD Deployment Encoding Database Table Android TFS DLL Resize Array PDF UI Authorization 32-bit Excel Import JSON ActiveX SnapDevelop SVN Data Mobile PFC RibbonBar JSONParser Outlook Jenkins Export SQL Design PBVM Transaction JSON Platform Database Object Azure DragDrop Sort Icon Performance IDE Stored Procedure TortoiseGit Class Expression PBDOM SQL Server