How to...

How to do this and that
I Love Xbase++ (ILX)
The portal for Xbase++ developers worldwide
Till Warweg
2 min read
Views
594
Background The XbpHtmlViewer2 class has a data folder that serves as an integral mechanism for session isolation. This feature is critical for applications using the class, which internally relies on the Microsoft WebView2 runtime. By ensuring that every process employing XbpHTMLViewer2...
Anna Hristova
2 min read
Views
652
Let's start and create an example where we'll retrieve posts from a public REST API, such as JSONPlaceholder which is a free online REST API that you can use for demonstration and testing purposes. Here's the URL endpoint to retrieve posts: https://jsonplaceholder.typicode.com/posts Now, let's...
Till Warweg
4 min read
Views
749
The Asset Manager integrated into the Xbase++ Workbench provides an easy interface for viewing, (de-) installing and updating the assets being used in your projects. Behind the scene, the Asset Manager in conjunction with the Workbench, performs the following tasks for you: Manage asset...
Till Warweg
2 min read
Views
1,058
Using native SQL for manipulating data as well as structure (schema) of ISAM-emulated tables is a supported scenario, for example, for being able to share data with non-Xbase++ applications. In the following, the potential pitfalls and general requirements are discussed which must be put into...
Till Warweg
1 min read
Views
632
Background The PGDBE automatically tracks record locks in ISAM-emulated tables, which are set by clients connected to the PostgreSQL server. This is done with the help of the __lock_owner field in the table's meta data. However, when a client dies unexpectantly, has it's network go down or does...
Steffen F. Pirsig
2 min read
Views
839
Background Since the ISAM emulating tables of the PostgreSQL DatabaseEngine are in fact regular SQL tables, it is possible to manipulate them using SQL statements. However, some SQL operations are problematic, as they may lead to inconsistent/incorrect ISAM behavior. In the following, we will...
Jeffrey Wulf
5 min read
Views
1,172
Comments for Xbase++ 1.9 users 1. Support for projects with targets in multiple directories Beginning with Xbase++ version 2.0, complex project scenarios involving targets located in different directories are fully supported. This required changes in the way the targets and the source files...
Steffen F. Pirsig
3 min read
Views
1,533
Reaction score
2
Background The Xbase++ PostgreSQL DatabaseEngine provides two different access method to data. First, the ISAM emulating approach which works with dedicated SQL tables only. These SQL tables need to be created using ISAM commands like DbCreate/INDEX ON/OrdCreate or have been upsized from...
Till Warweg
2 min read
Views
747
Background Sometimes, an application may exhibit symptoms which are hard to understand without having information about the internal state, the workflow and timing of operations. This was not an issue with desktop applications as these basically follow the action->reaction principle. Anybody who...
Till Warweg
3 min read
Views
481
Background The Update Manager in the Xbase++ Workbench usually provides a seamless update experience; after clicking "Download and Install", the update process usually runs through without further user interaction. However like all processes, it can fail. This article provides some background...
Andreas Herdt
2 min read
Views
607
Problem description The Xbase++ ISAM emulation uses a native PostgreSQL sequence to calculate the next record number for append operations. Therefore the success of a DbAppend()/APPEND directly depends on the correctness of that PostgreSQL sequence. As a matter of fact the sequence can become...
Till Warweg
2 min read
Views
530
In a std I/O application, output occurs to the current console. The font used for outputting text into the associated window is controlled by the system and can be changed via the console properties. The following function can be used to determine the size of the font set for the window...
Andreas Herdt
3 min read
Views
810
Background The HttpEndpoint can be bound to an SSL certificate but it must be available in the Windows Certificate Store. This howto article describes how to provide a certificate using the win-acme tool and the IIS web server and how to bind the HttpClient to it. On the Let's Encrypt homepage...
Till Warweg
2 min read
Views
715
Background Starting with version 13 of PostgreSQL, the default authentication method was changed from MD5 to SCRAM. This authentication method is incompatible with the pqlib client dll used by the PostgreSQL Database Engine shipping with Xbase++ (status: build 1360). As a consequence, attempting...
Jeffrey Wulf
1 min read
Views
649
Overview With associative arrays it is possible to address an element in the array not by its ordinal (numeric) but by name (character string). The Xbase++ datatype array does not support this possibility. However, objects of the class DataObject() semantically offer an identical usage, because...