DataEase 6.52 on Citrix Server
Environment: MS 2003 Server is used in all cases.
1. Install DataEase 6.52 on Citrix Server. (This effectively becomes multiple-workstations and should be treated as such).
2. Make sure FILES=100 is set in the \WINDOWS\SYSTEM\CONFIG.NT file on the Citrix sever.
3. Alter / add registry settings as though you were dealing with a workstation. They are all type DWORD. HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManWorkstation\Parameters UtilizeNTCaching=0 UseUnlockBehind=0 UseOpportunisticLocking=0 UseLockReadUnlock=0 4. Remove following files from DataEase 6.52 installation directory. a. DENETWRK.OVL b. PRINTERS.DAT c. CONFIGUR.DAT NOTE: If you are going to use load balancing across several CITRIX servers then points 1 to 4 need to be repeated on each CITRIX box. 5. Put the database in a separate directory on the server. 6. Create a named share to this database directory. 7. Create new folder as a subdirectory of the Database directory called DESYS. Put the following files into the DESYS folder. a. DENETWRK.OVL b. PRINTERS.DAT c. CONFIGUR.DAT 8. Create a CITRIX / MS User Group for the application. Give the group: a. READ & EXECUTE rights in the DataEase program directory on the CITRIX Box(s). b. MODIFY, READ & EXECUTE, READ, WRITE rights in the Share that holds the Database directory. c. NOTE: as the DESYS files are in a sub-directory to the database then it should inherit the rights from the share / directory above it. 9. Create all users for the application and add them to the group created above. 10. On the Database Server: Alter / Add the following Registry settings: They are all type DWORD. HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters CachedOpenLimit=0 EnableOpLocks=0 OpLocksDisabled=1 UtilizeNTCaching=0 UseUnlockBehind=0 UseOpportunisticLocking=0 UseLockReadUnlock=0 Note: All servers need rebooting before the individual registry settings become active on that particular machine. FURTHER REQUIREMENTS: You now need to consider the following requirements: DENAME DEPATH Mapped Network drives: a. To DataEase directory / sharename b. To Database directory/ sharename In normal circumstances, when doing this from a workstation then the DENAME and DEPATH are set as system environmental variables. This is not the case in a CITRIX environment. As part of the Application groups / User login scripts (usually written in VB). a. Create the mapped drive letter(s). It is safer here; then they remain the same, and dont disappear. b. Create as a user variable DEPATH to the DESYS directory you now have the drive letter from point a. c. Create as a user (not a system or they will all get the same) variable DENAME. The norm would be to set it to be the network / Citrix application login which has to be a unique session anyway. Tests to make sure that it is working correctly: 1. Login to a Citrix application session as more than one of the users in the group on separate machines. 2. Logon to Database. a. Test record locking is working correctly in record entry. Enter / Modify / Delete. If it isnt, theres a good chance of more than one set of DESYS files, being around, and everyone is effectively working standalone.b. Test record caching is not occurring. (Server registry settings). c. Test a form / report with lots of relationships involved. (Files = 100). 3. Look in file DENETWRK.OVL The users logged in should have a DENAME entry in that file. If not, then the DENAME is not being set for that user and that/those user(s) are going to corrupt data files and indexes.
Published: 15/12/05 - 10:03:03 (Ulrik Jacob Høegh - Krohn)
Related Articles