E. Crane Computing
E. Crane Computing                                                                                                                           Log In to Support Forum
PowerGen Versus PowerBuilder

PowerGen Outperforms PowerBuilder Feature-for-Feature

The chart below demonstrates how PowerGen V6.0 significantly improves upon PowerBuilder's build features. In addition to improving PowerBuilder's build functions, PowerGen V6.0 includes many entirely new functions that give you even greater control over your builds and source control management. The source control architecture for PowerBuilder was changed substantially in V8.0. Among the changes was the elimination of Registered PBLs as part of the mechanism for checking objects in and out of PowerBuilder. Many users relied (mistakenly, in many cases) on the Registered PBLs to be an accurate reflection of the source that was controlled in their source control systems. Consequently they used the Registered PBLs to build deliverables. With the elimination of the Registered PBLs came the requirements to be able to build PBLs from source-controlled objects. PB provides NO mechanism for doing this. Fortunately PowerGen Professional has provided this function for several releases in its Bootstrap Import and Synchronize functions.

Just a few of PowerGen's other features unavailable in PowerBuilder include full command line operations, unlimited application size, and an incremental build function that analyzes dependencies extensively and checks for changed sources and library list.

Feature PowerBuilder PowerGen V6.0

Synchronize Application from Exported Object Sources Not possible Quickly update PBLs to accurately reflect object sources that are controlled (for example) in a source control system through PowerGen's Synchronization function.

Recreate Application from Exported Objects Not possible Create PBL's and populate with exported source -- called Bootstrap Import in PowerGen Professional

Build Process Control Difficult (impossible) to specify what libraries get regenerated when dynamic libraries are created.

Dynamic libraries are always created in the same directory with source PBL's Can specify which libraries will be regenerated

Can specify when and if dynamic libraries will be created

Can effectively use PBD's and write-protected PBL's in the library list during the build

Can specify a directory to store created dynamic libraries

Can specify different regeneration strategies

Can mix the creation of PBD's and DLL's within the same application


Command Line Operation Limited function in PB8 only Regenerate, PBD Creation, DLL Creation, Copy, Import, Export, Optimize, Synchronize, and Bootstrap Import. Fully supports PB5, 6, 7, and 8 functions.

Unlimited Application Size Fails for large applications No limits

Shared and Third-Party Library Management

Libraries rebuilt unnecessarily, causing long build times.

Cannot use protected libraries in the library list

Cannot effectively build PFC-based applications

Can build and share third-party libraries once and simply reference them in later builds

Can safely use libraries in the build process without modifying them or having access to PBL source


Incremental Build Limited function and incomplete analysis Analyzes dependencies extensively, checks for changed sources and library list. Produces only PBD's/DLL's required by object changes

Compare
Application
to Exported
Source Objects
Not available
Produces a report showing objects that have been modified, added, or deleted

Object Export, Import,
and Copy

Cannot import or export more than one object at a time
Import fails for some valid export syntax
Export entire applications in one step. Export/import whole libraries to and from a single export file. Can import all valid syntax
Imports based on inheritance structure

Database
Connection
During Build


Must be available Not required