Tech Articles


Call SOAP Web Services Using HTTPClient Object


Since PowerBuilder 2017 R2, we have a new HTTPClient object, which is a base object for sending HTTP requests and receiving HTTP responses from a resource identified by a URI. Compared to the Inet object, the HTTPClient object is easier to use and supports more methods (Get/Post/Put/Delete) and more SSL protocols (TLS 1.0, TLS 1.1, TLS 1.2, SSL 2.0, and SSL 3.0).

Among other things, the HTTPClient can be also used to consume SOAP Web services. This is particularly useful as the Web Service Proxy has many limitations and defects calling SOAP Web services such as not supporting TLS 1.2. This article is to show how you can use the new HTTPClient to call your existing SOAP Web services instead. 

Read more

Generating a QR code using QRCoder


QRCoder is an open source .Net assembly for creating QR Codes.  What we're going to do is wrap that with an assembly in SnapDevelop we can use from PowerBuilder.  First thing we need to do is create a .Net standard Class Library project in SnapDevelop.

Read more

Git for a single developer


Let's say you're an independent contractor or a one person shop.  You want to take advantage of the source control features of Git, but you don't want to have to set up a server just for one developer.  Fortunately, you don't have to.  We're going to walk through the steps of connecting PowerBuilder to a local directory based repository.

Read more

Detecting a smart card insertion/removal from PowerBuilder


This is a follow up article to an earlier article I wrote called Communication with a smart card from PowerBuilder. In that article I showed how to interact with a smart card once it was inserted in the reader.  In this article, we're going to look at how we can monitor the card reader to determine when the user inserts or removes a smart card from it.

Read more

Spell checking in the new PowerBuilder 2017 Rich Text Edit Control


The original Rich Text Editing control shipped with PowerBuilder was based on an OEM of a popular third party control at the time called HighEdit. By the time 10.5 came out though, that control was quite dated and no longer supported by the vendor. As a result, in 2006 Sybase replaced that control with an OEM of another popular third party control called TX Text Control. There are licensing issues with that control though.  So with the release of PowerBuilder 2017 Appeon updated the control again, replacing the OEM of the TX Text Control with an OEM of the TE Edit Control. Note that if you encounter regressions with the new control you can switch back to the TX Text Control through a new RichTextEdit option in the Additional Properties dialog for the application object.  If you do however, you will have to obtain your own license of TX Text Control.

 

Read more

"Haunted" Apps - How to Avoid Ghost (Unresponsive) Windows


Are any of the windows in your PowerBuilder applications “haunted” by ghosts?

In the Windows operating system, the term “ghosting” is used to describe how the Desktop Window Manager visually intervenes on a user’s behalf whenever Windows believes the active, or "top-level" application window has become unresponsive. This article describes how Windows determines if a window should be ghosted and how the appearance of a window changes when it becomes ghosted. The article will also examine the common causes of an unresponsive PowerBuilder window and discuss some options for detecting, recovering from and even preventing windows with long-running processes from being ghosted.

Let’s start where most things begin… at the beginning – with an overview of the role of messages and message queues in an event-driven operating system.

Read more

DataWindow - Code Samples from CodeXchange


In this article you will find a list of Code Samples related to DataWindows for your PowerBuilder apps. These code examples are found at Appeon's CodeXChange.

 

Read more

Find Articles by Tag

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