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

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