ࡱ > c e ` a b @ a bjbjPP . : : Y = = = = > T j 2 > L 0? 0? 0? 0? @ > M@ a@ i i i i i i i $ :k R m X i G @ @ G G i 0? 0? i CU CU CU G 0? 0? i CU G i CU CU sf | g 0? > + = S f si i 0 j g m T j m $ g h h g m h m@ d A CU B C p m@ m@ m@ i i ! $ 9U
!
Serialized Inventory Application Suite
Installation Overview
Document Version:
Version of this Document: v1.0.023.1
Date of Document: 16th Feburary 2010
Author: Norman Bain
Version History:
v1.0.023.0: Orig version of this document.
v1.0.023.1: Adds detail re installation of runtime files.
Document Overview:
This document describes how to install the applications that make up the SerializedInventory suite of programs. There is also a detailed description of the relationship between the programs.
The applications in the SerializedInventory suite are:
SerializedInventoryUpgrader (Upgrader)
SerializedInventoryServer (Server)
SerializedInventoryPda (Pda)
Microsoft ActiveSync v4.2 (ActiveSync)
Pronto Point of Sale (Pronto)
High level view of what the programs do:
Upgrader: Is a normal PC executable program with user interface screens. At v1.0.0.23.0 the Upgrader does NOT run as a service. The Upgrader has a role of ensuring that the running version of a Server program in the VHA Stores is current. Upgrader does this by being visible (has an IPAddress that is visible) to the Server application running in the Stores. The Server application sends a TCP packet (containing Server version information) to the Upgrader. Upgrader can (if required) send a new Server executable back to the Server that has sent the version information.
Server: Is a normal PC executable program that runs as a service on a PC in VHA Stores. The Server has the role of reading file data which has been exported from Pronto and making it available to a Pda. The Server also receives stocktake data from a Pda and makes it available to Pronto. The Server has a role of ensuring the Pda application is a good match for the Server; essentially if Upgrader causes Server version to change then Server will cause the Pda version to change. The Upgrader does NOT need to be running for the Server program to work; the Server will continue to try to communicate version information to the Upgrader but the Servers operation is not affected if the Upgrader does not respond.
Pda: Is a normal WindowsCE executable program running on a Motorola MC3000 Pda in VHA Stores. The Pda program communicates with the Server program using TCP.
ActiveSync: ActiveSync version v4.2 or later is required to be installed to the PC that the Pda Cradle is attached to. An ActiveSync connection provides the mechanism by which the Pda can achieve a TCP connection to the Server. The installation of ActiveSync is not discussed further in this document; contact the writer if more information on ActiveSync is needed.
Pronto: The Pronto application suite provides PointOfSale functionality to the stores. The installation of Pronto is not discussed further in this document.
Installation of the Server program:
The executable for the Server program is available from the following download link:
HYPERLINK "http://downloads.purposebuilt.com.au/VHA/SerializedInventoryServer_1.0.023.0.exe" http://downloads.purposebuilt.com.au/VHA/SerializedInventoryServer_1.0.023.0.exe
The Server program has a dependency on two runtime files; available from link:
HYPERLINK "http://downloads.purposebuilt.com.au/VHA/prt-WIN32-1_0_0_34.dll" http://downloads.purposebuilt.com.au/VHA/prt-WIN32-1_0_0_34.dll
HYPERLINK "http://downloads.purposebuilt.com.au/VHA/prt-WIN32-1_0_0_34.dll.md5" http://downloads.purposebuilt.com.au/VHA/prt-WIN32-1_0_0_34.dll.md5
The runtime files MUST be copied (with names UNCHANGED) to the following folder. It is NOT required that the runtime files be registered; just that they be present in the folder.
C:\Program Files\Common Files\Purpose Built Software\Protara\Bin\
The Server program runs as a service on the Store PC; hence must be installed as a service using the PCs command prompt utility.
The Server program MUST be installed into a folder that is known to Pronto. At time of writing the Hutchison Stores were using the D:\Stocktake folder; it is not known to the writer if this folder path is hard-coded into Pronto or is part of the Pronto fixed configuration.
Do as follows to install the Server program to a Store PC:
Download the exe and rename it to SerializedInventoryServer.exe
Copy the exe to folder named D:\Stocktake\
Start a command prompt and navigate to the D:\Stocktake folder
Run command SerializedInventoryServer _service_install
Goto ControlPanel->Services panel and set the service to AutoStart.
Start the service.
If the Server program is going to communicate with the Upgrader program then the Server needs to be configured with the IPAddress and Port of the Upgrader. This configuration is made known to the Server by putting a file named ServerSettings.xml into the same folder as the Server executable.
At time of writing the content of the ServerSetting.xml file was:
10.132.200.10 8471
A decision will need to be made by the VHA team as to a suitable location for the Upgrader. The Upgrader is NOT critical to the operation of the Server; the Server will work just fine if the Upgrader is not present. The Server programs could (if needed) be upgraded (if needed) by use of other support utilities. However if the Upgrader is planned to be used to support version change to the Server program then the PC running the Upgrader will need to be visible to the PC running the Server program.
Should finding a SINGLE location within the VHA network for the Upgrader become problematic; then it would be an acceptable alternate solution to run several Upgraders.
NOTE: If the ServerSettings.xml file content does NOT point to a good IPAddress/Port as required to find the Upgrader then Server will just ignore the failure to communicate with Upgrader.
Installation of the Pda program:
ActiveSync version v4.2 or later is required to be installed to the PC that the Pda Cradle is attached to.
The Pda program comes pre-installed on the MC3000 Pda devices. It is not required to further install software or configure the Pda devices. The Pda communicates with the Server program using TCP. The Pda needs to be in the cradle and have an ActiveSync connection to the PC before an attempt is made to Sync the Pda. The Server program must also be running. The Pda is fault tolerant in all this (data will not be lost etc); the Pda will try to present a well formed message to the user should it not be able to connect with the Server.
Installation of the Upgrader progam:
The Upgrader is a stand alone PC based executable application. It has user interface screens. At time of writing does NOT run as a service.
The executable for the Upgrader program is available from the following download link:
HYPERLINK "http://downloads.purposebuilt.com.au/VHA/SerializedInventoryServer_1.0.023.0.exe" http://downloads.purposebuilt.com.au/VHA/SerializedInventoryUpgrader_1.0.023.0.exe
Installation of a new Upgrader is by the following steps:
Download the Upgrader exe and rename it to SerializedInventoryUpgrader.exe
Create a folder someplace (say c:\Program Files\Upgrader\)
Create a shortcut for the Upgrader.
Ensure that the Upgrader shortcut is in the Startup menu for the PC.
Start Upgrader.
It is essential that the Upgrader is included in the auto-start (Startup) menu for the PC; especially if the PC is likely to be rebooted on some cycle.
Upgrader interactions with Server and Server interactions with Pda:
The mechanism by which the Upgrader is contacted by Server and how Upgrader advises Server that the particular Server application needs to undergo an auto-upgrade is covered in the balance of this document. Also covered is the mechanism by which the Server and Pda applications keep their version numbers a match.
Version number compatibility and upgrade overview:
The Upgrader, Server and Pda applications have a version numbering scheme that is similar in layout. At time of writing the version of Upgrader, Server and Pda that was deployed was v1.0.023.0.
The Server and Pda application versions keep themselves in full version lock-step. That is; the Pda and Server applications (per spec at this time) MUST be the same version in order to function correctly and the Server and Pda programs are designed to facilitate this. The Pda on each sync with Server sends its application version number to the Server; should the Pda version number not be a match for the current version of Server then Server will advise Pda that the version is not a match and offer the Pda a matching version. The message sent to the Pda allows the Pda user to select an option to upgrade (or downgrade) to the version that matches Server. If the Pda user agrees to the version change then the Server will send the matching Pda version executable to the Pda and Pda will switch (auto-upgrade) to that version.
The Server application is told what version is current for the Server by the Upgrader. The Server application has a mechanism (via a timer) that once per day (and on startup of Server exe) sends the version of the Server, plus the name of the PC the Server is running on, to the Upgrader application. The Upgrader maintains a list of the known Servers (by PC name) and their correct version numbers. If the Server version is not a match for the version that has been set in the Upgrader then the correct version is sent by Upgrader to the Server and the Server will switch (auto-upgrade or downgrade) to that version. Later (when a Pda syncs) the Server will ensure that the Pda is also on the same version as Server.
How Server has the access to the Pda executable that is a match for Server:
The Server application has embedded in itself the exe of (and has the ability to extract) the matching Pda application. Technically speaking; the matching Pda application is contained within the resources of the Server application. The Server on startup will examine the files in the same folder as the running folder for a file named like "SerializedInventoryPda_v1.0.023.0.exe". Should the file not be present then Server will extract and create a file of that name into the same folder as Server. This is the Pda file that is sent to the Pda during a comms session where the Pda version is found to be a mismatch for Server. The Pda will rename the file to SerializedInventoryPda.exe.
How Upgrader has access to the Server executables:
The Upgrader application has embedded in itself the exe of (and has the ability to extract) the matching Server application. Technically speaking; the matching Server application is contained within the resources of the Upgrader application. The Upgrader on startup will examine the files in the same folder as the running folder for a file named like "SerializedInventoryServer_v1.0.023.0.exe". Should the file not be present then Upgrader will extract and create a file of that name in same folder as Upgrader. It follows that by successive running of various versions of the Upgrader there will be available to the Upgrader any number of explicitly named Server exe files.
The Upgader on each extraction of a newly versioned Server file will make an entry into its own database that the version is available. The volume of the available Server versions can be seen in the Upgraders VersionList screen.
It is NOT required that the Server version be a match for the Upgrader version. The Server version for a Store is configurable within the Upgrader.
How Upgrader has knowledge of the Servers running at Stores:
The Server communicates its PC name and the current Server version to the Upgrader on startup of the Server application and once every 24 hours thereafter. When Upgrader gets the data it checks the PC name with those names it has already seen and has recorded on its database. If the Server PC name is NOT known to Upgrader then (provided the Upgrader settings allow it) the PC name is auto-added to the Upgrader database. The list of known Servers is visible in the Upgraders UserList screen. From the perspective of the Upgrader each Server is an Upgrader User.
What default values does the Upgrader give to the Server (User) record in Upgraders db:
The Upgraders User record contains the following fields:
UserName: is set to the name advised by Server application.
IsActive: default is set true; this value is the active status of the named Server.
NextVersion: default is