The Run Local or Hybrid Feature in Elliott 8.5

Release Date: 12/3/2018

In Elliott 8.5, you can run Elliott in three different modes based on the location from which you execute Elliott application programs:
  • Run Local: This is the default method.
  • Run Hybrid: This is designed to run for the terminal servers.
  • Run Network: This is the legacy method.
 By design, Elliott ran from a network share in the past. This offered the benefit of being able to install updates in a centralized area without the need to install local client updates on each workstation. In recent years, out of security concerns and other reasons, Microsoft has made it more difficult to run from a network share with the use of artificial roadblocks that Elliott needs to jump through.

Starting with Elliott V8.5, users can run Elliott from local folders even though the data still resides on the network share. This not only bypasses the limits placed by the Windows OS when running from a network share, it also improves application performance and makes program execution more reliable. You will continue to install Elliott updates on the network share. In the meantime, when executing Elliott V8.5 programs from a local folder, the system will automatically synchronize the updated network programs to the local folder. Therefore, there’s no need for Elliott local programs to be manually updated.

Set Up to Run Local

By Default, Elliott V8.5 runs from a local folder even though Elliott V8.5 is installed in the network share. To set up a workstation to run Local, you will use Windows Explorer to browse to the folder <ElliottRoot>\Bin85 and run on the EL850.EXE application. If you receive an "Open File - Security Warning" message like the following:

We can't verify who created this file.  Are you sure you want to run this file?
Name: M:\Elliott8\Bin85\EL850.EXE
Type:  Application
From: M:\Elliott8\Bin85\EL850.EXE

This is due to the fact that we try to run this application from the mapped network drive and it is OK. Just click "Run" to proceed:


Then the EL850.EXE application will start and you will see a sample screen like the following:


The purposes of EL850.EXE are the following:
  1. If necessary, create the Run Local (or Run Hybrid) folder and copy the necessary files from the source Elliott network folder.
  2. Create the desktop icon(s) and program menu either for this user or all users (Hybrid mode only).
  3. Create the DEP exclusions for running Elliott on the server.
This application will ask you which Elliott application to create. By default, Elliott V8.5 (EL850CC.EXE) will be checked. Accept the default and click the “Create” button to create the icon. Before creating the icon on your desktop, this program will check if the Elliott application programs are already set up in your local folder. If not, it will copy the necessary files from the network to your local folder. Once complete, it will create the icon to run your Elliott application. Your Elliott programs are copied to your local user profile folder as in the following example:
    C:\users\<username>\appdata\local\Netcellent\<NetworkDrive>\<ElliottRoot>\bin85
<NetworkDrive> can be value like “M” which is the network drive where your Elliott V8.5 is installed. <ElliottRoot> can be a value like “Elliott8” which is the folder where your Elliott is installed on the network drive. The startup executable for Elliott V8.5 Control Center is EL850CC.EXE. Since this path is long, in the future, when you try to run Elliott from your local, simply click on the Elliott V8.5 icon on your desktop, or choose from the program menu in "Start" -> "Elliott 8.5" to run.

If you are running Elliott on the server, it is likely that you will encouter Error 114 when you start up Elliott. The "Create DEP Exclusions" is selected by default if you are running this utility on a server.  If you did not check this option, you may need to fix this manually.  Please refer to the section “Fix DEP Issue If You Get Error 114 When Starting Up Elliott” below for more details on this issue.

Since the default local folder is your user's profile folder, it is not appropriate to create the icon for "Everyone on this machine," so this option is grayed out. Also, the "C:\users\<username>\appdata" is a hidden folder.  If you want to use Windows Explorer to browse to this folder, you have to choose the option in Windows Explorer to show the hidden folder before you can see it.

With prior Elliott version, you need to add DEP Exclusions to Windows Data Execution Prevention Tab manually to prevent Elliott Startup Error 114 when running on the server. We are making it easier now by offering the option of "Create DEP Exclusions" option in EL850.EXE utility.  This option is selected by default when you run EL850.EXE utility on the server.  

When you add Elliott EXEs to Windows Data Execution Prevention Tab, behind the scene, Windows is writing registry entries to HKLM area. See KB article: http://support.elliott.com/knowledgebase/articles/531028-manage-data-execution-prevention-dep-through-reg for more details.  In some situations, we noticed when user try to run Elliott from the user profile folder (Run Local,) the registry entries should be added to HKCU area instead. 

The EL850.EXE mimic the Windows Data Execution Prevention Tab behavior.  It first add registry entries to the HKCU area. By default, all users should have the permission to update the registry HKCU.  Then EL850.EXE will attempt to add entries to HKLM area as well.  Since only admin user have right to modify HKLM, system will perform UAC Elevation if UAC elevation is not disabled on your machine.  It may prompt you to enter an admin user and password if you are not an admin equivalent. See sample screen below:



If you were able to successfully elevate the UAC security, then registry entries will be created in HKLM area.  If the enter an user and password that does not have right to modify HKLM, then you will receive an error message.  In that case, you can resolve the DEP issue manually through Windows DEP tab, or add registry key manually.  If you choose "No" to the UAC prompt, then EL850.EXE will skip the step of modifying HKLM.  You should still be able to run Elliott 8.5 with your login, but other users may not be able to run if your installation is for Hybrid Mode.

Set Up to Run in Hybrid Mode

Hybrid mode is mostly used if you run Elliott on the terminal server. Elliott Hybrid mode is similar to Local mode, where the Elliott programs are copied to a local folder. But in Local mode, each user will have their own copy of Elliott programs in their profile folder. With Hybrid mode, all users on the server will share the same programs in a central directory. The result is saving disk space.  You can estimate roughly 200 MB additional disk space per user on the terminal server if you choose to use the Run Local mode. If this is not a concern for you, then you should just use the Run Local mode for fewer complications.

For example, you may set up the following Run Hybrid folder on your server:
  D:\ElliottHybrid\Netcellent\M\Elliott8\Bin85

You may use EL850.EXE utility to create this Hybrid folder by clicking on the "Change" button in "Local Folder" area.  Then in the "Browse For Folder" dialog window, choose "Make New Folder" to create a new folder under your local drive.  See sample screen below:


Now click "OK" to return the folder name back to the prior window.  In the example above, we choose to create a local folder "ElliottHybrid" on C: drive.  It can be whatever folder name you'd like but don't use "space" in your folder name. Now you will see the full path returned to the "Local Folder" area as in the following sample screen:

In the sample screen above:
  • C:\ElliottHybrid: This is the folder you choose to create.
  • Netcellent: This name is hard-coded and needed to make the Run Hybrid mode work.
  • M\Elliott8\Bin85: This is to match your Network Folder.
If you choose the option to create the icon for "Everyone on this machine," then you don't need to run this EL850.EXE utility for each desktop user who uses this terminal server. You can only do so if you are the Windows Administrator or Administrator equivalent.

If you did not choose to create an icon for "Everyone on this machine," you may manually create the icon on each user's desktop by using the following sample values:
  • Target: D:\Netcellent\M\Elliott8\Bin85\EL850CC.EXE
  • Start in: D:\Netcellent\M\Elliott8\Bin85
See the following sample screen:


Since running on the server will likely result in receiving error 114, which requires you to define the DEP exclusions for Elliott, the option "Create DEP Exclusions" is selected by default when you run on the server so you don't have to create the DEP exclusions manually.

Hybrid mode will potentially save disk space since all users on the terminal server will share the same copy of Elliott programs. But since all users running in the Hybrid mode can make updates from the network to local, you should not implement NTFS security to restrict your Elliott users from updating the local Elliott folder. Otherwise, after the Elliott programs are updated on the PSQL server, the admin should take on the responsibility to immediately go to each terminal server running in the Hybrid mode to start up Elliott to initiate the synchronization.

Also, it is more likely that your users may receive update conflict messages when starting up Elliott in the Hybrid mode because multiple users share the application programs in he same folder. Therefore, it is suggested that you limit your Elliott updates on the network to after hours if Hybrid mode is used. But then you still may be faced with the issue that some of your uses do not logoff from Elliott at the end of the day.

If you choose the option to create a desktop icon for "Everyone on this machine," or "Create DEP Exclusions," you may receive the UAC elevation prompt. This is normal if you do not login as "Administrator" directly. 

Continue to Run in Network Mode

Running Elliott in Network mode is the traditional method and is still supported in Elliott V8.5. The reason this is not the default method is due to the fact that the new Run Local mode improves Windows security, Elliott updates and stability issues. To use the Run Network mode, you will have to set up the Elliott icon manually yourself. For example, if your Elliott V8.5 resides in network folder “M:\Elliott8\Bin85,” then you will set up the icon with the following sample value:
  • Target: M:\Elliott8\Bin85\EL850CC.EXE
  • Start in: M:\Elliott8\Bin85
Since it is likely that you will receive error 114 when starting up Elliott when running on the server, you will need to address this issue manually by adding the DEP exclusions.  Please refer to the section “Fix DEP Issue If You Get Error 114 When Starting Up Elliott” below for more details on this issue.

Additional Information with Run Local or Hybrid Mode


Files Used by Run Local or Hybrid Mode
When you choose to run Elliott V8.5 in Local or Hybrid mode, the following files in your network <ElliottRoot>\Bin85 folder are copied to your Local folder path:
  • EXE: Application
  • DLL: Application Extension
  • CFG: Configuration File
  • INI: Configuration Settings (COBOL related)
  • LBR: Library  (COBOL related)
  • PDB: Program Debug Database (for .Net Related Programs)
  • SF: Sub Files (COBOL related)
  • Config: XML Configuration File
  • XML: XML File
One exception is EL850.CFG file. Even though this file is copied to your local Bin85 folder, but we always reference the one in your network (or target) path. 

Keep in mind that there are three different possible CFG files:
  • EL850.CFG: This is the configuration set up through the EL850CF.EXE utility.  These are settings related to your system operation, including your license key, email setup, database configuration, etc. 
  • EL850S.CFG: This is the standard configuration file delivered from Netcellent.
  • EL850U.CFG: This is the user-defined configuration file to override values in EL850S.CFG.
Even when you choose to run in Local or Hybrid mode, we continue to access other files in other folders like DATA, Reports or Log on the network (target path).  This includes the sub folders under the Bin85 folder.

Maximum File Path Length for Run Local or Hybrid Mode
The maximum file path when running from a Local or Hybrid folder is 160 bytes. This is the maximum length of the folder path combined with the file name.

Maximum File Path Length for Run Network Mode
The maximum file path when running from Network (the legacy method) is 50 bytes. This is the maximum length of the folder path combined with the file name.  Since this is a much shorter length than the Run Local or Hybrid mode, make sure your network path for <ElliottRoot> is set to this limitation.

Fix DEP Issue If You Get Error 114 When Starting Up Elliott
If you are running Elliott on a workstation, chances are you won’t encounter DEP issues. On the other hand, if you are running Elliott on the server, you are likely to receive Error 114 when you start up Elliott. In that case, you need to resolve the DEP issue with the following steps:

Bring up Computer Properties and go to “Advanced System Settings.” Under “Performance,” click on the “Settings” button. Go to the “Data Execution Prevention” tab, . If you are running Elliott on the server only for the Admin user or Defer Processing, we suggest you to select “Turn on DEP for essential Windows programs and services only.” This will require rebooting your server for this change to take effect.

If this is a terminal server, we suggest that you define Elliott V8.5 programs in the exlusion list. Depending on whether you are running in Local, Hybrid or Network mode, browse to the corresponding Elliott programs folder and exclude the following Elliott 8.5 EXE programs from DEP:
  • DDF2BTR.EXE
  • EL850CC.EXE
  • EL850DP.EXE
  • EL850EV.EXE
  • EL850GE.EXE
  • EL850ME.EXE
  • EL850P.EXE
  • EL850RP.EXE
  • EL850TK.EXE
  • EL850US.EXE
You may refer to the following KB article for more detail:


EMK

Elliott Version 8.5

  1. V8.5 Alpha Document Number Support
  2. Crystal Report Conversion for V8.5
  3. The Run Local or Hybrid Feature in Elliott 8.5
  4. How to Use EL850DB.EXE Utility to Create PSQL Databases
  5. PSQL Database Naming Convention for 8.5 Databases
  6. Showing Document Date in Links After Elliott 8.5
  7. The Lessons We Learned from Upgrading Web Service 8.2 to 8.5 in eStore
  8. Report Desk Tables
  9. Report Desk Delivery Strategy
  10. Report Desk Thresholds
  11. How Is Font Being Determined in Report Desk?
  12. How to Use DebugLogLevel Registry Value to Debug Report Desk Issues
  13. How to Use Report Desk – User Perspective
  14. How to Use Report Desk – Admin Perspective
  15. Feature - ASCII File Filter Condition in Mass Email and Export Processor
  16. How to Use Variables in Report Desk Title and Column Headings
  17. How to Override Report Desk Font and Margin Defaults
  18. Feature - List Users Acively Logged into Elliott and Optionally Send Email
  19. Feature - Allow Print One Invoice to Print Duplicate Invoices for Order Not Posted
  20. Feature - Print Range of Duplicate Unposted Orders
  21. Feature - Prevent Duplicate Invoice Numbers with Invoice Cross Reference File
  22. Feature - Last Year Net Income Layout Support
  23. Receive Message "Not Found" When Trying to Set Up Run Local
  24. Receive 'Invalid Column Name' Message After Starting to Use Alphabetic Document Numbers
  25. Feature - Invoice Log Report
  26. Feature - Add Sales or Usage to Where-Used inquiry
  27. Feature - Case Size Support for Quantity Per Box
  28. Feature - Exclude Obsolete Customers from Customer Generic Search
  29. Feature - Refresh VICS Bill of Lading
  30. Feature - Support Item Case Size in New Item CSV Import and Change Existing Item Import
  31. Feature - Copy Notes, Attributes, and Links When Copying Item Through the New Item CSV Import
  32. Feature - Enhanced Cash Receipts Processing Apply-To Range
  33. Feature - Add Links Import to System Files Setup
  34. Feature - Shipment Email Acknowledgement for Bill-To Customers
  35. Feature - Restrict Sending Tracking Number to Bill-To Customer in Shipment Email Acknowledgement
  36. Overriding Report Desk Report Configuration
  37. Report Desk: Using Global Variables and Parameters
  38. Using CheckBoxes in Report Desk
  39. Feature - Allow Source Range on Credit Card Log Report
  40. Feature - Indented Bill of Material CSV
  41. Feature - Stock Status Reports Add Include with Alloc or On Order Quantity Option
  42. Feature - Release Manually Held Orders
  43. Report Desk: Optional File Input Parameter
  44. Feature - Create Shipment Records When Complete Bill Of Lading
  45. Feature - Print Warning Msg for Cancelled PO Line Item
  46. Feature - Export 25-Character PO Number in Expanded Aging Report CSV File
  47. Feature - Show Pending Cash Receipts in Payment History Inquiry
  48. Feature - Show Customer Note Fields in Payment History Inquiry
  49. Receive "Error Getting List of Override Reports" When Printing Report
  50. Feature - Fields Added to User-Defined CSV to Support EDI 846
  51. Feature - Credit Memo Warning When Fully Paid
  52. Feature - Create Shipment Verification Box Records Through Billing CSV Interface
  53. Feature - Show Box ID on Order Inquiry Shipment Data Screen
  54. Feature - Print Error Message If Inventory Transaction Distributions Are Missing
  55. Feature - Customer CSV Import
  56. Feature - Alleviate Error 25 When Two Users Import Sales Orders Simultaneously
  57. Feature - Use Note Type for Special Instructions on VICS BOL
  58. Feature - VICS BOL to Enforce Shipment Verification Before Printing of BOL
  59. Feature - Order/Invoice Inquiry Box Serial Number Drill Down
  60. Feature - Delete Order Tracking Note When Void Completed VICS BOL
  61. Feature - Picking Ticket For Customer 2 Event

Feedback and Knowledge Base