AcuODBC® FAQ



October 31, 2002
  1. What is ODBC and what do I need to install AcuODBC?
  2. How can I debug AcuODBC problems?
  3. My tables are shown, but not the associated columns.
  4. I have installed a new version of AcuODBC. Now the DSN doesn't work.
  5. I can read my Vision data using AcuODBC, but I can't update it.
  6. I am getting an "Assignment Error." What does this mean?
  7. Access 2000 reports records "#deleted" if keys contain numeric key data.
  8. I cannot update a Vision file using Microsoft Excel with AcuODBC.
  9. MS Query has generated the error message "cannot access table <tablename>" when I select a table from the DSN.
  10. Which SQL- and API-conformance levels are supported by AcuODBC?
  11. I am using PHP and get an error message saying "No valid license for AcuODBC. No entry for product 'AcuODBC' in the file AcuODBC. alc."

  1. What is ODBC and what do I need to install AcuODBC?
    ODBC (Open Database Connectivity) is an open standard Application Program Interface (API) for accessing a database. AcuODBC is based on Microsoft's ODBC standard, and provides an interface for making Vision COBOL data available to report applications like Crystal Reports, Microsoft Access, Microsoft Excel and others. You must have the Microsoft ODBC Data Source Administrator installed on your machine to use AcuODBC.

    Back to top


  2. How can I debug AcuODBC problems?
    AcuODBC can be configured to produce three types of trace files: AcuODBC trace, Vision File trace, or SQL trace. These can be enabled by opening the ODBC Data Source Administrator, selecting the AcuODBC Data Source Name (DSN), and selecting the Tracing tab. You can read more about how to trace problems in section 7.4, "AcuODBC Trace Files," of the AcuODBC User's Guide.

    • It is important that you limit the use of SQL tracing to debugging data access problems. Having tracing turned on may cause performance degradation as the trace files grow in size. This is due to the ODBC Datasource Administrator parsing the entire trace file when any access is attempted via the datasource.
    • If you are using AcuServer™ or AcuODBC Server, you should also switch on these products' tracing facilities. This is useful in discovering AcuServer- and AcuODBC Server- related issues such as permissions and connection attempts.

    Back to top


  3. My tables are shown, but not the associated columns.
    This usually means that the XFD file was found, but the data file wasn't. (See Chapter 6 of the AcuODBC User's Guide for a discussion of data dictionaries.) Check the "Data File Extension" box on the bottom of the DSN configuration. It should contain the correct suffix of your data file or be empty if your data file doesn't have a suffix.

    If your data file isn't in the same directory as the XFD, make sure that the correct path is shown in your DSN's data directory section. If your data is on a UNIX machine, make sure that you have created an "xfdrmt.dir" file. See section 6.5 of the AcuODBC User's Guide for information on this file.

    If your XFD doesn't have the same name as your data file, you need to set a file alias by clicking on the File Alias tab of the DSN. You can read more about this in section 3.6 of the AcuODBC User's Guide.

    Back to top


  4. I have installed a new version of AcuODBC. Now the DSN does not work.
    When you create a DSN, a Windows registry key contains the path to AcuODBC and your files. These are not modified when installing a new version of AcuODBC. After you install a newer version, you need to remove the old DSNs and create new DSNs which will contain the new/correct paths.

    Back to top


  5. I can read my Vision data using AcuODBC but I can't update it.
    If you are allowed only to read a file through AcuODBC, you may have the "Read Only" check box checked. Look in your DSN under the Advanced tab for this check box.

    If this box is unchecked and you still can't change any data in the file/table, you may have a "Read Only" AcuODBC license. You can view your license file ("acuodbc.alc") in a text editor to determine if this is the case. If it is a "Read Only" license and you want a license that will allow you to do updating with AcuODBC, you can contact your software vendor or Acucorp Account Manager for a new license.

    • Please note that you cannot update files in Microsoft Excel. Excel works with a copy of the data from the file and saves all your work in a workbook rather than in the Vision file.

    Back to top


  6. I am getting an "Assignment Error". What does this mean?
    The message "assignment error" means the data file has non-numeric data in a numeric field. By default, AcuODBC version 5.0 and earlier changed this data to a zero, so these versions would not generate an "assignment error", but when the record was written back to the file, the zeros were written, replacing whatever data was in the offending numeric field.

    AcuODBC version 5.1 did not change the data, thus generating an "assignment error".

    AcuODBC 5.2 goes a step further and allows the user to configure how AcuODBC handles non-numeric data in a numeric field. In the AcuODBC Data Source Advanced tab, you can tell AcuODBC how to handle non-numeric data. Your options are:
    • Report the error
    • Change the data to zero (like version 5.0 and earlier)
    • Truncate fields at the first non-numeric character.

    Back to top


  7. Access 2000 reports records "#deleted" if keys contain numeric key data.
    There appears to be a bug in Microsoft Access on Win9X machines if the Regional Settings have been changed to use a comma (",") rather than a period (".").

    There is a new option in the AcuODBC Data Source Advanced tab, "Use DOUBLE for Numeric Key Data," to work around this bug in Access.

    Back to top


  8. I cannot update a Vision File using Microsoft Excel with AcuODBC.
    Please note that Microsoft Excel is not an application that you can use to update your files. Excel works with a copy of the file and saves all your work in a workbook rather than directly into the Vision file.

    If you need to modify Vision data, link the tables using Microsoft Access (or another similar application) to update your Vision files.

    Back to top


  9. MS Query has generated the error message "cannot access table <tablename>" when I select a table from the DSN.
    This often happens when the XFD description of the data and data file's header information don't match. You can verify this by running this command at the command line:

    vutil32 -info -x <filename>

    (See section 3.3 of the ACUCOBOL-GT® User's Guide for a discussion of vutil, Acucorp's Vision file utility.)

    Another way to view the data file's key structure is through Acucorp's indexed file record editor, alfred. (See section 3.5 of the ACUCOBOL-GT® User's Guide for information on alfred.).

    Back to top


  10. Which SQL- and API- conformance levels are supported by AcuODBC?
    See Appendix A, "ODBC Conformance Levels," in the AcuODBC User's Guide for this information. Generally, AcuODBC is Level 1 API compliant, and supports some SQL grammatical functions from all three levels of compliance.

    Back to top


  11. I am using PHP and get an error message saying "No valid license for AcuODBC No entry for product 'AcuODBC' in file AcuODBC.alc".
    PHP (a Hypertext Preprocessor) tries to read the license file as a UNIX-style text file rather than a DOS-style text file. It is very easy to fix this problem. FTP a copy of the "AcuODBC.alc" file to a Windows operating system from your UNIX or Linux machine in text (ASCII) format, then FTP it back in binary format.

    Back to top

Your Session will expire in 90 minutes
Notification will be shown in:
600 seconds