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

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