Chapter 2 - Installing, configuring and test-running
- To Install
Support files you may need.
Optional but recommended: download and installation of MySQL
After setup - guide to your resulting PixieEngine folder.
Terminal emulator setup.
Suggested exercises and guide to the example programs.
To Install
:
- Download "PixieEngine.zip"
- Unzip it into a folder
- Run "Setup.exe"
- For an immediate test, run "PixieLink for
PixieEngine" from the Menu or installed file folder. Login as "john"
with a password of "john".
Run the suggested terminal exercises and example
programs listed at the end of this chapter.
Support files you may need
The PixieEngine download is kept to a reasonable size of about 1.1 MEG by leaving out files that are often installed and used by other programs. The 2 support packages you may need are:
- PixieWare Common Files (2 Meg) .
You will already have these if you have previously
installed any of our PixieWare, or any other software authored with Visual
Basic 6.0 , or if your test machine also has VB6. If unsure, just try running
"Setup.exe" as in step 3 above and if it gives an error message, that means
you need to install this first.
- Microsoft Data Access Components ("MDAC") (6.5 Meg)
Any need for this will show up as soon as you try to test run, usually with an "Error 91" message.
If the 6.5 Meg size of that download is a problem, try searching
for it by its filename "MDAC_TYP.exe" on any CD from Microsoft,
they park it on nearly everything, even promotional freebies and demos.
Download and Install MySQL
PixieEngine installs initially as "Access/Jet DataStore", but this is a lightweight datastore which makes installation to a working demo stage quick and simple. To see the full performance, you need:
- MyODBC - install on the same machine as PixieEngine.
You do NOT need to create "DSN"s. PixieEngine handles ODBC connections
automatically.
- MySQL - while PixieEngine is a Windows system, it can
use MySQL on Linux or MySQL on Unix as its datastore.
- Copy sample data folders "dm" and "testpxe1" into the "x:\MySQL\data"
folder. These sample data files are in Windows format. If using a Unix
MySQL, you need to either convert that data with "MySQLDump" or download our
v3.23 "universal format" sample data files.
- EITHER create user "john" in MySQL or add an existing MySQL user to the
dm.users file/table.
After setup - guide to your resulting PixieEngine folder
By default, Setup.exe installs PixieEngine into folder C:\Program Files\PixieEngine
but you do have the option to change that. The resulting folder contains:

NOTEs on files and folders: in descending order of your need to deal with them.
| PxEngLink.exe |
GUI and Terminal Emulator front end. Start your trial with
this, login as "john" with a password of "john". |
|
PxEngConsole.exe |
Visible front end for configuration and control of PixieEngine.
Windows menu item in "Start -> Programs ->PixieEngine".
The "Classic" sockets server as supplied requires you to start it manually with PxEngConsole.exe.
You can make that automatic by creating a shortcut in "Startup" with a command line argument of "start" eg
"C:\Program Files\PixieEngine\PxEngConsole.exe start" |
|
JetMDB
(FOLDER)
|
Contains "Access/Jet DataStore" accounts, each account being emulated by a ".mdb" file. We provide 2 test accounts: "dm.mdb" and "testpxe1.mdb".
You can open these
directly with Microsoft Access to get a quick look at some PixieEngine
ideas.
|
|
PxAppTemplate
(FOLDER)
|
VB Project. VAR-programmable-app source code for the supplied examples. You start creating an App by copying this folder.
|
|
PxEngTest.exe |
Test client. Automatically does an item "RReadU", alters the item with a random number generator, and does a "WWrite" back, all on an approx 2.5 sec repeating cycle.
You can start this multiple times to stress-test PixieEngine on your system. Give 2 or more instances the same ItemID to test record locking.
Windows menu
item in "Start -> Programs ->PixieEngine", but multiple-start is
easier from "Windows Explorer"
|
|
ComClientTest
(FOLDER)
|
VB Project. Source code for PxEngTest. Gives
examples of use of direct ActiveX connection methods. |
|
dm
testpxe1
(FOLDERs)
|
Example "Accounts" for MySQL. When using MySQL,
copy these folders into your MySQL "data" subfolder. |
|
PixieEngine.dll
PxEngFns.dll
|
Core components. You deal with them directly when
you program apps with Web or Custom(ised) GUI front ends, using
Microsoft's ".asp", "IIS Webserver", "VBA", "ActiveX", "COM", "MTS",
"COM+" and/or "DCOM" technologies. |
|
PixieEngine.ini
PxEngSocket.exe
PixieLink.ini
|
"Behind the scenes" configuration files and
components servicing other components. |
Terminal Emulator Setup
PixieEngine at the time of writing (13 Jun 2000) only supports the "mm-mon" terminal type with 25 lines per screen. This is fixed with no provision for any "telnet negotiation protocol"
The "Socket Server" is setup by default with a TCP Port
number of 7401. It can run on the conventional 23, and we only give it a
different number because of its tendency to by trialled by PICKies who already
have 23 in use on their machines.
Note that the new (July 2000) Socket Server follows convention in that all clients connect on the same TCP Port number. If you prefer the "nailed ports" convention we can supply an alternative Socket Server on request.
Telnet, the freebie program provided with Windows, will work well for simple "teletype" test programs eg our "test2". The only "trick" is in the settings where you need to overwrite the default "port" setting "telnet" with "7401" etc.
Setup for Accuterm 97:

The "tag 3" form is shown with the "Advanced" button clicked. Substitute your own host computer name.
Under tag 4, "Term Type", select "PICK PC Monitor"
Suggested exercises and guide to the example programs
PixieEngine comes with a "dm.users" file giving you our names as users with the same as passwords. You should mostly use user "john" with a password of "john" who has a macro of "logto testpxe1". Other users eg "andrew"; password = "andrew", start off in "dm" where there is nothing much of interest to do (yet) except to manually "logto testpxe1"
"Classic" Terminal TCL, test1, test2, disptest, pxu1000
We anticipate most PixieEngine users would take
advantage of Microsoft Access and other GUI front ends to do TCL-type
operations. The reason for providing TCL is to give you a quick and easy way of
comparing PixieEngine to classic MVs in a familiar environment. We also found
TCL-emulation to be an interesting r&d challenge with good spin-off
benefits.
- Start PixieEngine Console (PxEngConsole.exe). Do any necessary configuration, then click "Start TcpPorts".
- Start your terminal emulator and configure as necessary - see previous section.
"Tickle" PixieEngine with (hopefully) one only press of the Enter key.
On prompt, login with username "john" and password "john".
You should get a welcome message and a colon ":" prompt.
- Try TCL commands who, listu, listf
- Try SQL queries from TCL. NOTE PixieEngine identifies these as SQL by you ending them with a semi-colon. PixieEngine is starting to support some custom and classic MV queries and the "end-with-semi-colon" is the flag for SQL rather than custom/classic.
select * from banks;
select a0, a1, a2, a3 from prod;
select a0, a1, a2, a3 from prod order by a1;
select a0, a1, a2, a3 from prod where a1 like '%card%';
select a0, a1, a2, a34 from prod where a34 < 10000;
select * from invoices;
Note that MySQL in its default "case insensitive" mode can handle upper,lower or mixed case in queries, EXCEPT that it needs you to be consistent with file and attribute names that get repeated.
Eg you could have trouble with "select a0, a1 from
prod order by A1;"
- umenu
Use this only
with the supplied "PixieLink for PixieEngine" GUI front end
PxEngLink.exe. Sample App driven by a GUI menu.
- test1 (or run
px1.bp test1 see file md for how program q-pointer
works )
Simple "teletype"
style program that does nothing more than echo back your entry on the next
line. Quick check that VAR-programming is working. Check out test1 source code
later.- test2 (or run
px1.bp test2 see file md for how program q-pointer
works)
Simple RRead/WWrite/WWriteV checker.
Example dialogue:
: test2
Input Table to open: eg prod
(or X to exit)prod
SUCCESS (0.2265625 sec) ; FileVariable = testpxe1.prod
Input ItemID to lookup eg 1011 :1011
RRead SUCCESS (0.3828125 sec), Item =
Edible Dot Matrix LQ1070 (24 Pin)þ1100þþþtech þþþþþ1þþEachþþþþþþþþþþþþþþþþþþþþþþ58700þþþþþþþþþþAppro-Andrew ACCþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþNþþþþþþþþþþþþþþþþþþþþ
Option: X=Exit, R=new RRead, W=WWrite, V=WWriteV :w
Enter an Attribute Number to replace :3
Enter new A3 to test WWrite :TESTXXXX
Optionally, enter a new ItemId to save-as
OR just press the enter key to rewrite "1011" :
WWrite SUCCESS (0.109375 sec), program will now start again
with RRead and you can check this edit by repeating this Item
Press Enter to continue ......
Input Table to open: eg prod
(or X to exit)prod
SUCCESS (0.21875 sec) ; FileVariable = testpxe1.prod
Input ItemID to lookup eg 1011 :1011
RRead SUCCESS (0.0625 sec), Item =
Edible Dot Matrix LQ1070 (24 Pin)þ1100þTESTXXXXþþtech þþþþþ1þþEachþþþþþþþþþþþþþþþþþþþþþþ58700þþþþþþþþþþAppro-Andrew ACCþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþNþþþþþþþþþþþþþþþþþþþþ
Option: X=Exit, R=new RRead,
W=WWrite, V=WWriteV :
- stest1
Same as test1 but achieved with VBSCRIPT.
Look in folder "script1" and find the source code as "stest1.txt" and
"mycase.txt".- disptest
Note: disptest requires "mm-mon" terminal type support.
This "display test" runs the TTag function, equivalent to "@(x [,y])
through some colour variations.
- pxu1000
This is a data entry screen with simplified navigation: Enter to move to next field,
"/"+Enter to go back, "q"+Enter to quit the sequence thenf"+Enter to save the edited item.
The file "cust" has items with ItemIDs of pobo, macbeth, maestro, kts
- Startup more than one instance/copy of your terminal emulator on more than one machine if possible, and repeat some of these, but especially listu from TCL
- Try restarting "PxEngConsole" nominating a large
"number of ports". Some lower-powered machines may give a sluggish response if
you are running 50 ports. Please let us know your results.
END
of
suggested classic and GUI terminal exercises.
"Object Oriented" Test Program "PxEngTest.exe" with multi-user stress-testing capability.
Automatically logs in as "john" and opens file "prod". You enter the ItemID.
"prod" has ItemIDs 1011, 1012, 1013, …
Automatically does an item "RReadU", alters the item with a random number generator, and does a "WWrite" back, all on an approx 2.5 sec repeating cycle.
You can start this multiple times to stress-test
PixieEngine on your system. Give 2 or more instances the same ItemID to test
record locking. Multiple-start is easiest from "Windows Explorer"
NOTE: to use PxEngTest.exe with MySQL, you will need to create a user "john"
with a password of "john".
Top Next = Chapter 3: VAR-Programming