Chapter 2 - To install, configure and test-run

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:
Essential with PixieEngine 2.1: Uninstall any previous 1.x version of PixieEngine.

  1. Download "PixieEngine.zip"
  2. Unzip it into a folder
  3. Run "Setup.exe"
  4. 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

Some older Windows machines may still need 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 you want to confirm its presence, run a search on your hard drive for file "msado21.tlb".

Download from http://www.microsoft.com/data/download_25SP2.htm

If the 7.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:

  1. MyODBC - install on the same machine as PixieEngine. You do NOT need to create "DSN"s. PixieEngine handles ODBC connections automatically.
  2. MySQL - while PixieEngine is a Windows system, it can use MySQL on Linux or MySQL on Unix as its datastore.
  3. Expand supplied "dm.zip" and "testpxe1.zip" into MySQL data folders "dm" and "testpxe1".
    Copy these folders to be subfolders of ...mysql\data and they become mysql databases.
  4. EITHER create user "john" in MySQL or add an existing MySQL user to the file/table "dm.users".
    Do NOT fill in the password field in dm.users .  That is there only for Access/Jet.
  5. Run PxEngConsole.exe to select and configure MySQL as your datastore.

Run on Microsoft SQL Server or its "MSDE" Junior Edition.

  1. Export the supplied Microsoft Access files "dm.mdb" and "testpxe1.mdb" to MS_SQL_SERVER
  2. Create a user, pref with full administrator rights, or at least read/write rights 
    to databases "dm" and "testpxe1".  If you can call this user "john" with a password of "john",
    you will not need to change anything in the supplied example code
    Table "users" in database "dm" is quite optional.  You can enter 0 or 1 in A8 to give a "sys0" or "sys1"
    emulation.  Do NOT fill in the password field in dm.users .  That is there only for Access/Jet.
  3. Run PxEngConsole.exe to select and configure MSSQL as your datastore.

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.

NOTEs on files and folders: in approx descending order of your need to deal with them.

PixieLink.exe

GUI and Terminal Emulator front end. 
Start your trial with this. Login as "john" with a password of "john".
Find it in Start Menu:Programs --> PixieEngine --> PixieLink
Or installed by default as C:\Program Files\PixieLink\PixieLink.exe

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.

ComClientTest(FOLDER)
   containing
PxEngTest.exe

PxEngTest.exe is a 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"

VB Source code for PxEngTest is provided. Gives examples of use of direct ActiveX connection methods.

MySQL (FOLDER)

Example data "Accounts" for MySQL as "dm.zip" and "testpxe1.zip". When using MySQL, unzip these and copy the resulting folders into your MySQL "data" subfolder.

PixieEngine.dll

Core component. You deal with this 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.

TransferItem (FOLDER)
TransferBulk (FOLDER)
"Drop boxes" for transfer of data from/to classical PICK-etc engines.
Start transfer utilities by entering 'admin' from TCL when using client PixieLink.exe.
PxApp1 (FOLDER) Example app with source code, as seen when entering 'umenu' from TCL when using client PixieLink.exe.
PxApp2 (FOLDER) Example web app with source code.

PixieEngine.ini

"Behind the scenes" configuration files and components servicing other components.


Also installed in parallel folders:


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.

First Test Drive

  1. Run "PixieLink" from the Menu.
    Or, via "Windows Explorer", this is file "PixieLink.exe" usually installed into "C:\Program Files\PixieLink\".
    Press F11 or select Menu:PixieEngineDirect to connect to "PixieEngine".
    Login as setup on first install: UserName =  john , Password = john
     
  2. Try TCL commands who, listu, listf
     
  3. Try SQL queries from TCL.
    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 orders
     
  4. New in PixieEngine 2.1
    Try PICK-etc-syntax LIST and SORT queries (aka "Pick Access", "English") from TCL.
    eg
    SORT PROD BY RETAIL WITH RETAIL > 20 DESCR RETAIL
    SORT PROD WITH A1 LIKE "[CARD]" A1 A2 A3
     
  5. umenu
    Use this only with the supplied "PixieLink for PixieEngine" GUI front end  PixieLink.exe. 
    Sample App driven by a GUI menu
    .

     
  6. admin
    Also only for use with "PixieLink.exe"  Provides data transfer via Pixie PseudoTape files
    for "TransferBulk" services, and Item-as-text files for "TransferItem" services
    similar to PICK etc "Super-Q-pointers" or UNIVERSE "Type-1-files".

     
  7. test1  (or run px1.bp test1 )
    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 in example "PxApp1".
     
  8. test2  (or run px1.bp test2 )
    Simple RRead/WWrite/WWriteV checker.
    You can simply keep pressing the Enter key to see a set of default actions.
    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 :

     
  9. stest1
    Same as test1 but achieved with VBSCRIPT.  Look in folder "script1" and find the
    source code as "stest1.txt" and "mycase.txt".
     
  10. disptest
    This "display test" runs the TTag function, equivalent to "@(x [,y])
    through some colour variations.
     
  11. pxu1000
    This is a data entry screen with simplified navigation: Enter to move to next field,
    "/"+(CR) to go back, "q"+(CR) to quit the sequence then "f"+(CR) to save the edited item.
    The file "cust" has items/records with ItemIDs of oboe, macbeth, maestro, kts
     
  12. Startup more than one instance/copy of PixieLink and/or terminal emulator(see below) 
    on more than one machine if possible, and repeat some of these, but especially listu from TCL
     
  13. Exit a PixieEngine session with  exit ,  off  or lo 

END of suggested  exercises.


Terminal Emulator Setup

PixieEngine 2.1 defaults to the "VT100" terminal type. It will also support Pick "mm-mon" but you
need to manually enter the command "term mm-mon ".

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.  The socket server is part of "PxEngConsole.exe".  Click button "Start TcpPorts".


You must leave PxEngConsole.exe running to keep sockets available.  
In tech talk, "this 'Socket Server' is not a 'Service' ". It is OK to minimise PxEngConsole.exe

Telnet, the freebie program provided with Windows, will work well for our terminal-style test programs eg "test2", "pxu1000". The only "trick" is in the settings where you need to overwrite the default "port" setting "telnet" with "7401" etc.  The command-line version supplied with Windows 2000 needs a space and 7401 at the end of its "open" command: eg
open myserver 7401
open 127.0.0.1 7401


 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"


"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, MSSQL, or ORACLE, you will need to create a user "john" with a password of "john".


Top    Next = Chapter 3: VAR-Programming