How to Use EL860DB.EXE Utility to Create PSQL Databases

Release Date: TBD
Version: Elliott 8.6

Elliott 8.6 includes features -- Report Desk for example -- that require PSQL relational data access. In the past, PSQL databases were created manually by users. To make it easy to create PSQL databases, the new utility EL860DB.EXE is included in the Elliott 8.6 release, and you can find it in <ElliottRoot>\Bin86 folder where <ElliottRoot> is the root directory where you have Elliott 8.6 installed. You must be logged in to the PSQL server (where the databases reside) as a Windows Admin or equivalent in order to create databases with this utility.

Start by logging in as "SUPERVISOR." Then click on the top left corner toolbar task Config (Elliott Global Configuration) and go to the Databases tab, where you can find the button Create Databases. This is a shortcut to launch EL860DB.EXE.

This utility is compatible with PSQL 11, 12 and 13. For PSQL 11, the latest service pack is required. You must login as Windows Admin or equivalent to run EL850DB.EXE on the same machine as the Elliott Data (i.e., PSQL server.). It will not work on the client workstation.

Elliott Database Naming Convention:
From Elliott V7 to V8.6, we distributed different types of DDF files in the following folders to create PSQL databases:
  • <ElliottRoot>\DDF40 - for Elliott V7.x databases in data directory. Standard database name will be ELLIOTTDATA.
  • <ElliottRoot>\Bin\DDF40 - for Elliott V8.0 - V8.2 databases in data directory. Standard database names will be ELIDATA.
  • <ElliottRoot>\Bin85\DDF40 - for Elliott V8.5 databases in data directory. Standard database name will be ELI85DATA.
  • <ElliottRoot>\Bin86\DDF40 - for Elliott V8.6 databases in data directory. Standard database name will be ELI86DATA.  
  • <ElliottRoot>\Bin86\DDFROOT - for Elliott V8.6 databases in the root directory. Standard database name will be ELI86ROOT.
Since Elliott Business Software supports multiple companies, for data in folders like DATA_02, DATA_03...etc, the naming convention will be replacing "DATA" above with "DATA02," "DATA03,"...etc. For example, for Company 10 where data is stored in <ElliottRoot>\DATA_10 folder, the corresponding standard Elliott 8.6 database name will be ELI86DATA10.

By default, if not specifically specified, Elliott 8.6 will assume the database name for each company by following the convention above. EL860DB.EXE helps you to create these standard database names in Elliott V8.2 or V8.6 format.

User Interface:
If the EL860DB.EXE icon is not already on your desktop or startup, navigate to the <ElliottRoot>\Bin86 folder, find EL860DB.EXE and run it. You will see the following window show up:
  1. Database Version - You can select which version of database to create. This can be either 8.6 or 8.2. 
  2. Elliott Root Folder - A read-only text field that indicates the location of the Elliott Root Folder.
  3. Elliott DDF Folder - A read-only text field that indicates the location of the DDF folder. For 8.6, this is {ElliottRootFolder}\bin85\DDF. For 8.2, this is {ElliottRootFolder}\bin\DDF.
  4. Elliott Root DDF Folder - A read-only text field that indicates the location of the DDF folder for the Elliott Root database. This is only applicable for an 8.6 database.
  5. Elliott Data Folder(s) - You select which data folders to create database(s) for in this control group. This section has two list views. The left "Data folders with no database" list view shows all data folders that currently do not have a corresponding database. You can check one or more item(s) to create databases for the data folders. The right "Data folders with existing database(s)" list view shows all data folders that already have a corresponding database.
  6. Check All button - Check all items in the "Data folders with no database" list view.
  7. Uncheck All button - Uncheck all items in the "Data folders with no database" list view.
  8. Create Database(s) - Create database for all checked items in the "Data folders with no database" list view.
Differences between V8.2 and V8.6 Databases
This utility lets you create both Elliott V8.6 and V8.2 databases with Elliott's standard naming convention. 
Elliott 8.6 databases assume all Elliott document numbers (e.g., Invoice Number, Order Number, Purchase Order Number, Voucher Number...etc.) are in string format where you can store alphabetic values. On the other hand, Elliott 8.2 databases assume all document numbers are numeric.

Even though you may be using Elliott 8.6 programs, you may continue to run Elliott databases in Elliott 8.2 format as long as you don't store alphabetic values in your Elliott document number fields. You may do so because: (1) You would like to evaluate Elliott 8.6 first while most of your users are running on Elliott 8.2; (2) It may take you time to convert third-party applications like Crystal Reports or web applications that depend on the V8.2 web services to convert to the Elliott 8.6 format.

Once you are ready, you can use the <ElliottRoot>\Bin86\DDF2BTR.EXE utility to convert your V8.2 databases to V8.6 format. After that, you are ready to store alphabetic values in your document numbers, and you can't use Elliott 8.2 and other third-party applications that utilize the Elliott 8.2 format anymore. Please refer to Elliott 8.6 Release Notes and other KB articles on how to use DDF2BTR.EXE for this purpose.

Manually Create Database Through PSQL Control Center
For information on how to create databases manually via Pervasive Control Center (PCC), please visit this knowledge base article.

Define Database in EL860CF.EXE for Report Desk
Elliott 8.6 Report Desk uses the PSQL relational database to access Elliott data. It can work with either the Elliott 8.2 or 8.6 database format. It is important that the corresponding databases are created on a PSQL server for Report Desk purposes. In addition, Elliott needs to know which database name is used for which company. To do so, you can navigate to the <ElliottRoot>\Bin86 folder and run EL860CF.EXE.  Alternatively, you can login to Elliott as "SUPERVISOR" and find the Elliott Global Configuration utility icon in the top left corner, which is a shortcut to EL860CF.EXE.  Once you bring up EL860CF.EXE, you will see the following screen. Go to the database tab to associate each Elliott company with the right database name. See sample screen below:

It the above example, Company 1 is still using a numeric document number format so the Database is ELIDATA even though Elliott 8.6 is being used.  Company 3 was converted to use a string document number format, so the database name is ELI86DATA03.

Use NOTEPAD.EXE to Update EL860.CFG
The EL860CF.EXE file will update <ElliottRoot>\Bin86\EL860.CFG for you.  Alternatively, you can use NOTEPAD.EXE to update EL860.CFG. See sample screen below:

Keep in mind that sometimes NTFS security may prevent you from saving your changes, so verify your changes afterwards. 

Known Issue with DDF Files in DATA Folder
By design, your Elliott DDF files should reside in the <ElliottRoot>\Bin\DDF40 or <ElliottRoot>\Bin86\DDF40 folders. Then when you choose to create the corresponding Elliott database, you will specify as in the following example:
  • Dictionary: <ElliottRoot>\Bin86\DDF40
  • Data: <ElliottRoot>\DATA_03

We have seen that if you also have a copy of DDF files residing in the <ElliottRoot>\DATA_03 folder, then those DDF files will override the DDF files in <ElliottRoot>\Bin86\DDF40 in the  above example. This can cause a big problem for Elliott when accessing data through the relational engine. Therefore, you should not place DDF files in your DATA folder.


Feedback and Knowledge Base