Remote Order Entry is an optional component application of GO.EXE. The application connects on demand with compatible remote order entry systems (one at a time) through a single telephone line. Received orders are queued on the PC's hard disc and passed (on demand) to your main (Host) computer, which processes the order and returns the outcome to the PC. The application records the outcome and sends an Outcome Report to the remote system, if it chooses to remain on-line.
Your customers prepare each order off-line on suitable computer equipment, then send their order directly to you over the public telephone network. Developers wishing to implement client-side order entry software should consult the Protocol Handbook. See Order Entry for the Psion Series 3 and Order Entry for the Epson HX20 for my client-side order entry software.
An order consists of:
GO.EXE isolates your Host computer from the various systems used by your customers, relaying information between the Host and Client ends (without loss or duplication provided the other systems cooperate). It is optimised for the fast handling of bulk orders. Callers cannot "browse" your product file and cannot "hack" into your system. Your Host computer makes all the decisions over how to handle orders (e.g. it might substitute an alternative product in certain situations).
The application is designed to operate attended or unattended. It handles all the intricacies of communication over the public telephone network, presenting your Host computer software with a standard interface independent of the various remote systems. It will accept, queue and acknowledge orders even when your main computer is temporarily unable to process them. It retains the details and the outcome of orders taken and provides a simple mechanism to resubmit orders to your Host computer (without troubling the customer) should this be necessary.
Where an Order Entry PC replaces a Host computer terminal (connected through a serial cable), your sales staff may process orders manually and/or electronically in one telephone call. For example, a Calling Rota scheme implemented on your Host computer may present an account and telephone number to be called, GO.EXE gets the modem to dial the number, a conversation ensues then the modems are put on-line to process a prepared order, then a manual order is taken.
As GO.EXE can receive orders even if your Host system cannot process them, you could find yourselves with a mass of Access Codes and Item Codes that you cannot easily interpret. GO.EXE can look up these codes in its database, if you pre-install a file with suitable content named EOEBASE.CSV (this should be replaced periodically to keep it up to date). The scheme works as follows:
** 11 Feb 98 17:39:44 Received 10 lines via line 99. Protocol:A4 Modem connect:10 Access Code 01008 C/Ref:ALPHA 4 1D JOHN WELLINGTON WELLS THE SPOOKERY BATT END UNDER WYCHWOOD GLOUCESTERSHIRE 1/243/078 Pick 1 B 100 PROMINAL TABS 200MG 8828K 16/065 Pick 2 B 36 JELONET 10X10CM TIN 7478 41X 26/032 Pick 20 B 10 K-BAND 10CMX4M 2276V 37/114/001 Pick 1 B 100ML URINE TEST GLASS CYLIND 232/S 5358N 77/114 Pick 1 B 56 HYPOVASE TABS 0.5MG 5799A 77/275 Pick 1 B 28 STARIL 10MG TABLETS 11734R 77/322 Pick 1 B 100 LABSTIX REAGENT STRIPS 1509B 77/413 Pick 2 B 50G FLAMAZINE CREAM 6934V Pick 2 B Order line 1 Code 028-2749 not on local file. Pick 2 B Order line 2 Code 044-0586 not on local file.
EOEBASE.CSV is an ASCII Comma Separated Variable file with one product or account record per line.
A,1008, 1D,JOHN WELLINGTON WELLS\THE SPOOKERY\BATT END\UNDER WYCHWOOD\GLOUCESTERSHIRE\,
JOHN WELLINGTON WELLS\THE SPOOKERY\BATT END\UNDER WYCHWOOD\GLOUCESTERSHIRE\
P,2G,234856,,KLI10P,19/022,KLING CONFORM BANDAGE 3.5M,P54462, 5CM P,3J,234864,,KLI7G,25/043,KLING CONFORM BANDAGE 3.5M,P54463, 7.5CM P,4M,234872,,KLI8C,22/013,KLING CONFORM BANDAGE 3.5M,P54464, 10CM P,5P,234880,,KLI9V,26/023,KLING CONFORM BANDAGE 3.5M,P54465, 15CM P,6S,401422,5012509956158,BAN396G,14/033,SLINKY CONF BANDAGE 4M STRETCH,3538, 5CM P,7V,401430,5012509956165,BAN397C,21/032,SLINKY CONF BANDAGE 4M STRETCH,3539, 7.5CM P,8Y,401448,5012509956172,BAN398V,55/032,SLINKY CONF BANDAGE 4M STRETCH,3540, 10CM P,9B,401455,5012509956189,BAN399R,21/013,SLINKY CONF BANDAGE 4M STRETCH,3541, 15CM P,10F,332635,5000223042912,,16/031,ELASTOWEB BAND+FOOT LOOP 1.8M,66004291, 7.5CM P,11I,180588,5027519000708,MIN212S,69/184,MINIMS CYCLOPENTALATE 1%,, 20
Your electronic information network may seem formidably complex when something is not working smoothly! It may help to visualise a series of layers, each one built upon its predecessor:
At each layer, information passes according to a set of rules called a protocol. Many different protocols (each identified by some name or other) may be encountered at any layer. Note that communication is virtual at all layers except the physical: in reality data is transferred across the interface between each pair of adjacent layers, so a failure in one layer will result in all higher layers failing too.
For further details, see the Opsys Protocol Handbook. Opsys handles all communication with and through the local modem via a background task known as the Communicator.
SYNC | Holds the configuration settings for GO.EXE and the current control data for the Telecom Session. |
---|---|
TELECOM | Holds the received order queue and the control data for each item in the queue, including its status and outcome. |
TELECOM.BAK TELECOM.TMP | Main menu option E (Erase old items from queue) produces a new version of the file TELECOM. During this process the new version is named TELECOM.TMP. On completion, the old version is renamed TELECOM.BAK. |
TELECOM.REF | A work file indexing the start position of each queue item in TELECOM. |
TELECOM.HIS | Holds descriptive text provided by the Host computer during order processing: viz. Account description, Invoice To, Deliver To, and product descriptions. |
EOEBASE.CSV EOEBASE | See Picking Lists. |
GO.SYN | B-Tree structured indexes into EOEBASE to decode Access Codes, PIP Codes, BCL Codes, EAN Codes and LINK Codes for Picking Lists. Also used to sort the Picking List into Bin Number sequence. |
When GO.EXE is started:
If the queue appears to have become garbled, you should close down GO.EXE, delete TELECOM.REF and TELECOM.HIS, then restart GO.EXE. This will resolve the problem without losing any received order data, provided the TELECOM file is intact. If it does prove to be garbled (and this is not confined to specific orders which you can stop), you'll have to delete TELECOM too.