Classes of the given version of library are intended for dynamic creation of GROUP/QUEUE
structures. The functionality and construction of created structures are
similar to the standard structures GROUP/QUEUE described in the source code of
the program, and may be processed by all standard operators and functions
of Clarion language. Except for it they have some expanded functional
properties inaccessible for standard structures of above written types.
The given version includes TBaseGroupClass, TDynaGroupClass and TDynaQueueClass.
Advanced
Classes of the given version of library are intended for dynamic creation of GROUP/QUEUE/FILE
structures. The functionality and construction of created structures are
similar to the standard structures GROUP/QUEUE/FILE described in the source code of
the program, and may be processed by all standard operators and functions
of Clarion language. Except for it they have some expanded functional
properties inaccessible for standard structures of above written types.
The given version includes TBaseGroupClass, TDynaGroupClass, TDynaQueueClass,
TDynaFileClass, TDynaSQLClass.
Professional
Classes of the given version of library are intended for dynamic creation of GROUP/QUEUE/FILE/VIEW
structures. The functionality and construction of created structures are
similar to the standard structures GROUP/QUEUE/FILE/VIEW described in the source code of
the program, and may be processed by all standard operators and functions
of Clarion language. Except for it they have some expanded functional
properties inaccessible for standard structures of above written types.
The given version includes TBaseGroupClass, TDynaGroupClass, TDynaQueueClass,
TDynaFileClass, TDynaViewClass, TDynaSQLClass and many-many usefull functionos.
Requiriments
Before library using it is strongly recommended to upgrade your Clarion:
Clarion 5 to version 5b
Clarion 5.5 to version 5.5g
Clarion 6.x as is
Package
Set of templates: dLib.tpl
Include header file: dLib.inc with class declaration
Static libraries for local memory model
Dynamic link library for standalone memory model
Source example files: T_dFile.clw, T_dGrp.clw, T_dQue.clw, T_dQQ.clw, T_dView.clw
Example executables: T_dFile.exe, T_dGrp.exe, T_dQue.exe, T_dQQ.exe, T_dView.exe
Help file in chm-format
Features
Using of the given library allows to create more flexible and powerful
programs. And the opportunity to create structure GROUP/QUEUE/FILE/VIEW during
performance of the program by simple loading of their description from an
external textual file, allows to create programs that have very big degree
of autonomy and universality, insensitive or practically tolerant to change
structures of an entrance/target of the data stream. The basic advantages of
the given library before similar products (for example library xLib from
A.Solovjev):
The basic methods of work with fields of structures in such libraries are organized on the basis of a call of standard operator WHAT() and, thus, inherit all weak sides of the given operator which were described above. In the given library all basic methods of work with fields use original algorithm that has allowed not only to avoid the above described mistakes and lacks but also to realize the additional functionalities inaccessible both standard methods and similar libraries. In particular - simple and transparent work with references on standard types.
Using of library is more simple and intuitively clear.
It is possible to create of new structure or separated fields using of a usual string (a constant or a variable) with the standard description:
It is possible to load description of structure and its creation from an external textl file or from a string which filled, for example, in the TEXT-control. For more details - see the description of method LoadDeclare().
It is posssible to create FILE structures on basis of existent physical data file (.TPS/.DAT (Clarion)/.DAT (Btrieve)/.DBF (dBase3, dBase4, Clipper, FoxPro).
It is possible to create and using of some structures which directly are not supported by Clarion compiler and, therefore, may not be used in a static kind. For example, array of reference arrays.
It is possible to "link" with the standard static structures defined in the program, for reception of the full information for them and for its fields and/or for work with their fields. It is especially necessary to work with the structures transmitted through non-named reference variables &GROUP/&QUEUE/&FILE/&VIEW type. In this case, standard operators WHAT, WHO, WHERE intended for it that, as the saying goes, "have a rest"!
More full set both information methods, and methods for processing fields.
More full set of information methods which allows to carry out FULL analysis of VIEW-structure which is inaccessible to standard its properties. For example, there are no standard facilities for getting information about list (names and references) of file fields, declared with PROJECT on the any level. Also it is impossible to get full information about JOIN, including its nesting, names and key references, key fields and files.
Presence of the methods, that allows to full-value work with queues without necessity of obligatory "imposing" to fields of external names.
Is is possible to set expanded properties for fields that unavailable for fields of static structures. For example, it is possible to setup format of an input/output to all types of fields or additional comments for a field with an opportunity of the further processing and the analysis. Thus, for example, it is possible to load from an external textual file the description of structure with necessary comments and, analyzing them in the program, to place fields on the form in the necessary order or to process them (the control of values of input, performance necessary assignments with calculations through EVALUATE() , and so forth).
It is possible to use variable names for file, keys, MEMO-/BLOB-fields, as against similar libraries in which only names-constants are possible.
It is possible to simply work with SQL-queries without declaration of numerous dummy files.
Complete support of new drivers: In-Memory and IP Driver.
And many other things...
Availability
DynaLib costs from $80 to $180 depending of pack. It support both Legacy and ABC template chaines for Clarion 5/5.5.
It works only under 32bit memory model. It is shipped as a templates and DLL which must be
included in the ship list of your own application which will use the given library.