Ap B. HP ALLBASE/4GL Versions [ HP ALLBASE/4GL Developer Reference Manual Vol. 2 ] MPE/iX 5.0 Documentation
HP ALLBASE/4GL Developer Reference Manual Vol. 2
Appendix B HP ALLBASE/4GL Versions
Versions
This appendix describes the procedures for creating and maintaining
versions of HP ALLBASE/4GL applications.
A version is a set of additional parameters that operate in conjunction
with a base application. When HP ALLBASE/4GL runs a version, it
effectively runs a modification of the base application. Typically, you
would use a version to provide an application that has been modified to
suit the needs of a particular end user, or group of end users.
A version is not a modified copy of the base application. Instead, it's
a set of parameters that represent the difference between the base
application and the modification that you want to present for the
selected users. A version cannot be run unless the base application
exists on the same HP ALLBASE/4GL system. Also, versions cannot be
unloaded or loaded without the base application.
Defining Versions
Defining a version and the list of eligible developer names and end user
names for the version is a system administrator task. The system
administrator can assign a development security code for a version.
The HP ALLBASE/4GL Developer Administration Manual describes these
procedures.
Developing Versions
For the most part, the techniques for developing versions with HP
ALLBASE/4GL are identical to the techniques for developing any other
application. All the facilities of the HP ALLBASE/4GL developer are
available to you while you are developing a version.
To develop a version of an application, sign on to HP ALLBASE/4GL as
normal, and then enter the version name in the Application or Version
field on the HP ALLBASE/4GL sign-on screen.
While you are developing a version, all the components of the base
application are accessible, although they appear in secured form.
Although base application components are accessible while you are
developing a version, a component does not become part of the version
unless you press the Commit Data function key. There is no need to
commit a component from the base application in a version unless you
modify the component.
To define a modified component for a version, call up the component of
the base application on the appropriate definition screen and enter N in
the Secured field if the item is secured. You can now make any changes
that are required, and commit the component as part of the version by
pressing the Commit Data function key.
You can also use the appropriate definition screens to define new
components for the version. The catalog copying screen in the utilities
menu allows you to copy components from other applications or versions.
When you define a new or modified component for a version, (for example,
adding a further option to a menu and the necessary screen and logic to
support the option), HP ALLBASE/4GL stores the additional information
with the version. If you modify an existing item to create a new item
for the version (for example, adding some further fields to an existing
screen) HP ALLBASE/4GL takes a copy of the original item from the base
application and stores the modified item with the version.
With the exceptions listed below, any subsequent changes made to items in
the base application are automatically reflected in versions of the
application, provided a modified copy of the same items doesn't already
exist in the version. If you have defined a modified item in the
version, changes to the same item in the base application have no effect
on the item in the version.
Limitations
Under some circumstances, changes to the following items in the base
application will not be reflected in versions of the application:
* Validation ranges.
* Validation tables.
* Alphanumeric constants.
* Numeric constants.
* Variables.
* Calculated items.
* Data file definitions.
* Work area definitions.
* Scratch-pad name declarations.
HP ALLBASE/4GL stores these items in common internal lists. If you make
a change to any one of these items in any particular type, HP ALLBASE/4GL
creates a copy of all of the items of the same type in the version.
Subsequent changes to these items in the base application will not be
reflected in the version.
Changes to these items will only be reflected in versions of the base
application if you have not made any changes to any items of the same
type in the version.
NOTE A version may contain generated components (for example, functions
and processes) that refer to dictionary items in the base
application. Changes to the dictionary items in the base
application will not be reflected in generated components in the
version unless you generate the components again.
Unloading and Loading Versions
Unloading and loading versions is a system administrator task. A version
cannot be unloaded or loaded without the base application. Up to 10
versions can be unloaded or loaded with the base application.
The HP ALLBASE/4GL Developer Administration Manual describes the
procedures for unloading and loading applications and versions.
Version Data File Reformat.
HP ALLBASE/4GL provides a mechanism for automatically reformatting KSAM
data files in the HP ALLBASE/4GL run-time environment. Data file
reformatting may be necessary if you have changed the format of a record
layout for a data file by changing the number of fields, changing the
order of fields, or changing the details of fields.
The HP ALLBASE/4GL run-time environment data file reformatting system
relies on the structure file (xxxxS, where xxxx is the name of the data
file) associated with each data file, and a file-structure file (in the
group identified by the current value of the MPE/iX variable HP4FSPATH)
created by the run-time application unloading procedure. During the
subsequent application loading procedure, HP ALLBASE/4GL compares the
existing file format, as described in the existing structure file with
the new file format contained in the file-structure file. If the two
formats are different, HP ALLBASE/4GL reformats the existing data files
in the run-time environment.
The automatic data file reformatting system cannot simultaneously
reformat data file for both a base application and a version. To
overcome this limitation, the run time file reformatting system only
reformats the data files for the version if the version file format is
different from the base application file format. To reformat data files
for the base application only, the application must be unloaded by itself
without any versions.
This means that you may need to unload (and subsequently reload) an
application twice if a version of the application uses data files with a
different format. By initially unloading and then loading the
application without the version, you can reformat the base application
data files. By subsequently unloading, and then reloading the
application with the version, you can reformat the data files for the
version.
Don't attempt to unload more than one version with an application if all
the versions use different file formats.
Refer to the HP ALLBASE/4GL Developer Administration Manual for more
information about run-time data file reformatting.
MPE/iX 5.0 Documentation