PixieEngine(TM) 2.0
Whats New in Version 2 - Guide for
Upgraders
-
Utility "admin" provides data transfer services.
-
Function Library changes location - recompile any existing apps.
-
Global Catalog with file "PixieEngine.ini"
-
More Datastores: UV and D3
-
Other new functions, examples and features.
1. Utility "admin" provides data transfer
services.
There are 2 new subfolders created in
this PixieEngine install: "TransferItem" and "TransferBulk".
- "TransferItem" works like the UNIVERSE Type-1 file,
or PICK Super-Q-Pointer file.
- "TransferBulk" is for importing from pseudo-tapes or files-ex-tape
produced by our supplied PICKBASIC program "PXT-DUMP"
To start using these, enter admin
in the TCL environment provided by PxEngLink.exe
More details in Appendix 1: Section
"Data Transfer".
2. Function Library Changes Location
Version 2 has had a major architectural overhaul. We have kept the
interface changes as few as possible, but even so, any existing apps need
re-referencing and re-compiling. Some
may also need our supplied functions module added.
Programs created with script are not affected.
If
your trials have not got too elaborate, you may be better to start again with
the new supplied PxTemplate app and its companion examples. Otherwise you
need to:
- Re-reference
In PixieEngine 1.x, the Function
Library for DCOUNT, EXTRACT etc was kept in a separate file
"PxEngFns.dll".
With PixieEngine 2.0, that same Function Library
moves back into the main data services file
"PixieEngine.dll".
VB6, Microsoft Office BASIC editor
and similarly COM-equipped languages have a list of "references".
Open
it, you may see a "MISSING" warning for the old "PxEngFns".
Just clear that
and make sure "PixieEngine" is checked.
The function library,
previously "PxEngFns.Functions", is now "PixieEngine.Functions
"
- Re-compile
Re-referencing is enough for Microsoft
Office front ends.
Apps built with compiling languages, eg VB6, will
require re-compiling.
- Functions Module
With PixieEngine 1.x we used the
"GlobalUse" technique with our file "PxEngFns.dll"
This caused DCount, Extract, Field etc
to integrate with the VB environment and appear as though they were native
language functions. This worked very well in most setups but the
exceptions were enough to have us removing "GlobalUse" in this release.
Adding our new supplied functions module, "basPxFunctions.bas" gives the same
effect and continues to support your PICKBASIC-flavoured code.
Advantages to doing it this way:
- The added-module method works for
Microsoft Office front ends where "GlobalUse" didn't .
- You now have the choice of treating these functions as intrinsic
or in their true colours as a library.
eg You may have functions of your own with similar
names that clash,
or your function toolkit may have such a problem eg the
PHP language with its iconv
function.
eg You may prefer the dot
syntax way of working, eg the way the context-sensitive help acts.
Note that we have needed to
change one function name:
UserPort.Release is now UserPort.RRelease
"Release" turned out to
be the name of a hidden Microsoft COM/ActiveX function, surprise! surprise!
which gave us the occasional clash problem.
You can
however keep the name "Release" for your local interface
function in "basPxFunctions", so your existing code need not change.
3. Global Catalog with file
"PixieEngine.ini"
With more experience of PixieEngine
apps supporting more than one datastore, it has become clear that the best
place to "catalog" programs is the same place the programs live, which is the
PixieEngine environment. So Programs can now be catalogued in file
"PixieEngine.ini" and this is now the preferred method. The
older, tradition-mirroring use of table/file "md" remains
supported.
4. More Datastores
UV and D3 are now supported.
The effect here is to replace PICKBASIC with VB and gain VB's advanced programming
environment while working in a server-side VB mode which is close to
PICKBASIC.
Or you can use PixieEngine to program D3 or UV in VBSCRIPT,
JAVASCRIPT, DELPHI, JAVA, C++, C#, PERL or any other language with an
ActiveX/COM interface method available.
5. New Functions, Examples and
Facilities
- myValue = SelectResult(field,
row)
SelectResult
Function: similar syntax to SelectArray, but more efficient and supports
scripting
which SelectArray could not. More details: see Appendix1
- "PX2" example web app with source code.
- Improved "PixieMassage.exe" for code conversion PICKBASIC to
VISUAL_BASIC.
Chapter 1:
Appendix 1 - Technical Reference
Continued support for older functions.