Back to projects

lib builder

Library builder for Powerbuilder

June 2021
C#
WPF
Powerbuilder
Powerscript
ORCA

LibBuilder is designed to build and regenerate library objects from Powerbuilder. It streamlines the development process by working directly with Powerbuilder objects.

Workaround demonstration for LibBuilder
Figure 1: Workaround demonstration for LibBuilder

The program was developed and tested on Windows 10 - 32Bit using C# with WPF. It requires either the .NET Framework (>= v.4.72) or the .NET Core Framework (>= v.3.1) to run. For ORCA functions, the corresponding ORCA DLL is installed with Powerbuilder. Supported versions include:

PowerBuilder versions and their corresponding ORCA DLLs
NameOrca-DLL
PowerBuilder 10.5PBORC105.DLL
PowerBuilder 12.5PBORC125.DLL
PowerBuilder 17.0PBORC170.DLL
PowerBuilder 19.0PBORC190.DLL

The second version of LibBuilder stores everything in a database without creating extra files. Only two files are found in the installation directory: the executable and the database, which is located at AppData\Roaming\LibBuilder\libbuilder.db.

Note that issues with Powerbuilder may occur if the target is open while LibBuilder is in use.

The following runtime examples illustrate both successful execution and error cases:

Successful runtime execution
Figure 3: Successful runtime execution
Runtime execution with errors
Figure 4: Runtime execution with errors

LibBuilder allows multiple procedures to run concurrently by selecting different targets. Each running process is added as a new tab.

Workaround demonstration for LibBuilder
Figure 1: Workaround demonstration for LibBuilder

LibBuilder can be executed from the command line. The parameter order and case are irrelevant. Below is a list of parameters and sample commands:

LibBuilder command line parameters
Parameter (short)Parameter (long)DescriptionTypeInput
-w-WorkspaceName or path of workspacestring
-t-TargetName or path of targetstring
-v-VersionPowerbuilder version of the workspaceenumPB105 = 105, PB125 = 125, PB170 = 170, PB190 = 190
-b-BuildBuild librariesbooleantrue or false
-r-RegenerateRegenerate library objectsbooleantrue or false
-l-LibrarysChoices of librarieslist of strings
-x-RebuildTypeType of rebuildenumPBORCA_FULL_REBUILD = 1, PBORCA_INCREMENTAL_REBUILD = 2, PBORCA_MIGRATE = 3, PBORCA_3PASS = 4

Samples:

  • Execute last saved procedure:
  • Full build of target tlfi_lokal.pbt:
  • Regenerate all objects of libraries client_elinv.pbl and client_tlfiutils.pbl:
  • First time working on a workspace with a complete build:
  • Show version:
  • Show help:
Command line example demonstration
Figure 2: Command line example demonstration
Application Color/Theme
Figure 5: Application Color/Theme
Process History
Figure 6: Process History
AutoUpdater
Figure 7: AutoUpdater