> SYSPRO Error Messages

SYSPRO Error Messages

While running SYSPRO, error conditions can be detected by the operating system, the runtime system, or the SYSPRO program itself.

Some of these error messages can occur in various programs and situations. The causes and solutions listed are not absolute and merely serve as a basis for troubleshooting these errors.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

When an error occurs, you can press Ctrl+F1 to view documentation about that specific error.

Summary of message types

Group General Explanation
User validation errors These errors are related to the number of operators currently logged in.
Setup errors These errors relate to problems regarding control records that have not yet been created.
Program loading errors These errors usually indicate that the system is attempting to load a program, but cannot successfully continue due to a problem.
Screenset errors These errors relate to problems when the program attempts to load a screenset.
Security access errors These messages indicate that the operator code and/or the operator group or role does not have access to load the program, to perform an activity and/or to continue with the transaction. These include the Electronic Signatures messages.
Transaction processing errors  
File status errors These errors usually indicate that the program is attempting to perform an action on a file or a table, but cannot complete the operation successfully due to a specific problem.
File status 9-xxx errors These errors usually indicate that the program is attempting to perform an action on a file or a table, but cannot complete the operation successfully due to a specific problem.
SQL errors These errors only occur in a SQL environment and can indicate that there is either a problem in the SQL statement or SQL optimized code or there may be a problem with the SQL handles. These errors are normally program errors.
Program processing errors Occasionally the program(s) can be corrupt and reloading the programs will solve the problem.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

Other errors  
Hardware and/or operating system errors These errors are often the result of power fluctuations, causing either temporary or permanent corruption. If the machine is re-booted and the error still exists, then further checks are required.
Network and/or file permission errors These errors usually require the expertise of the network and/or the system administrator.

User validation error messages

Too many users logged in concurrently

Cause Remedy
This message indicates that you have attempted to load SYSPRO and the number of concurrent users would exceed the number of licensed users that are available. Possible remedies include:
  • Log out inactive users by using the Currently logged in users program.

  • Check operator codes to ensure that the setting Allow multiple people to use this operator concurrently is correctly selected for specific operators.

  • Check your license details and contact SYSPRO Licensing if you need to increase the number of licensed users.

This message can also be an indication of a corrupt operator user count file.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

You have been logged out by an administrator

Cause Remedy
This message indicates that your logged-in session in SYSPRO is no longer active. This message normally indicates that the system administrator has logged you out of SYSPRO.

Contact the system administrator to check if you were logged out intentionally.

This message can also be an indication of a corrupt operator user count file.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

Program loading error messages

Program is already in use

Cause Remedy
This message indicates that you have attempted to load a program that you are already using. The program cannot be loaded twice. Close the first instance of the program.

Use the View Users program to check your open instances.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

Program error - file not yet opened

Cause Remedy
This message indicates that the program is attempting to use a file that has not yet been opened.

This message generally indicates a program error.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

Program not found

Cause Remedy
This message indicates that you have attempted to open a program that does not exist.
  • Check the accuracy of the pathnames defined in the System Setup program.

  • Check the Programs folder on the application server to see if the program exists in this folder.

  • Re-install SYSPRO on the application server.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

Program used concurrently

Cause Remedy
This message indicates that you have attempted to open too many programs. Close the programs that you are not using.

Use the View Users program to check your open instances.

Program cannot be run standalone

Cause Remedy
This message indicates that you have attempted to run a program that cannot be run standalone. The program requires one or more parameters which have not been provided.

Most SYSPRO programs can be run without requiring any parameters to be passed, however, some SYSPRO programs are always called directly from other programs and are passed mandatory parameters. These programs do not appear on the SYSPRO menu and if you attempt to run them using the Run a Program function (Ctrl+R) this message is displayed.

If you receive this message and you did not use the Run a Program function (nor have you added the program to a menu) then this may indicate a program error.

Do not:
  • run the program from the Run a Program function or

  • add the program to your Favorites or Quick Launch menu.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

Program is part of an unlicensed module

Cause Remedy
This message indicates that you have attempted to open/run a program which is part of an unlicensed module. Contact the system administrator to check the company's license. If this is a program that is required, then the system administrator must contact SYSPRO's licensing department.

Security access messages

You have been denied access to the program

Cause Remedy
This message indicates that you have attempted to load a SYSPRO program to which you do not have access. The program name is displayed in the error message. Contact the system administrator to check the program access levels of the operator group to which you belong.

Access Denied

Cause Remedy
This message indicates that you have attempted to access a key field to which you do not have access. Contact the system administrator to check your operator access levels.

Setup error messages

These error messages relate to problems regarding control records that have not yet been created.

Control records contain information relating to each module in SYSPRO.

Information contained in control records include:

  • the current financial year and month (for all modules that integrate to the General Ledger)

  • next journal number

  • opening and closing control balances

  • month status flags

  • month end dates

  • archive numbers

  • period-to-date values

Control records are created automatically when you add a new company, or if you add a new module to an existing company where the control record for the new module does not exist.

When you set up a new company, you are required to select the modules to be installed. Thereafter, you are required to specify the year and month for each of the modules that still require the financial year to be defined. As soon as you do this, all control records for the modules you are installing are created.

The modules that integrate to the General Ledger are immediately populated with the year and month you have defined. These modules include Accounts Receivable, Accounts Payable, Cash Book, General Ledger, Inventory, Work In Progress and Fixed Assets.

Additional information is added to control records according to the entries made and the options chosen within the setup programs of each module.

In a C-ISAM environment, the control records are stored in the data folder. In a SQL environment, the control tables are part of the main SYSPRO database.

In some instances these error messages may also be an indication that the programs cannot find the data path (in a C-ISAM environment) defined in the System Setup program. It may also indicate that for some reason the data path(s) is blank. In a SQL environment it may be an indication that some of the control tables are missing.

Control record not yet created

Cause Remedy
The following is a list of possible errors relating to missing control records:
  • General Ledger control record not yet created

  • Cash Book control record not yet created

  • Accounts Payable control record not yet created

  • Account Receivable control record not yet created

  • Inventory control record not yet created

  • Work in Progress control record not yet created

  • Sales Analysis control record not yet created

  • Lot Traceability control record not yet created

  • Sales Orders control record not yet created

  • Trade Promotions control record not yet created

  • Assets Register control record not yet created

Possible remedies include:
  • If this is a new SYSPRO company, you need to define the Financial Periods for each module in the Setup Options program to create the missing control records.

  • In a C-ISAM environment check the C-ISAM data file path definition in the Company Maintenance program. If this is incorrect, then change the file path.

  • In a SQL environment:

    • Check the Database and Folder configuration settings in the System Setup program.

    • Run the SQL Server Diagnostic program to ensure that all the standard tables are present in the database.

Screenset error messages

SYSPRO is developed as a multi-tier system - one of the tiers being the user interface. The user interface consists of the entire user experience and includes the various windows and dialog boxes that are used to interact with the user.

A screenset contains the definition of the user interface for a program. This includes the windows, dialog boxes and all the controls that reside within them (e.g. push buttons, radio buttons, check boxes, entry fields, list boxes, etc). In addition, a screenset responds to events, performs necessary validation and communicates with the main business logic tier.

Screenset errors normally indicate that there is a problem with the screenset programs either on the application server or on the client machine(s). Standard screenset names are suffixed by .RS, while customized screensets are suffixed by .GS.

These errors are normally returned as DS RUN errors and/or datablock inconsistency errors.

[Note]

Some of these error messages can occur in various programs and situations. The causes and solutions listed in this document are not absolute and merely serve as a basis for troubleshooting this error. The possible remedies listed are based on previous experience. Support consultants can use these as a basis for troubleshooting the error.

02 Cannot open screenset

Cause Remedy
This message indicates that the screenset file the program is attempting to access cannot be opened. This error message may be returned by various programs.

Determine if this error message is specific to:

  • a client machine

  • all client machines and the application server.

If this error is client machine specific, then possible remedies include:

  • Check the permissions on the \Screens and \Bin folders on the client machine(s).

  • Remove the vergui.txt file from the \Screens folder on the client machine(s) on which the error occurs. This will force screen synchronisation.

  • Re-install the SYSPRO client software on the machine(s).

If this error occurs on all client machines and the application server, then possible remedies include:

  • Check the accuracy of the pathnames defined in the System Setup program.

  • Check the permissions on the \Screens and \Bin folders on the application server and all the client machines.

  • Re-install SYSPRO on the application server.

    Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

03 Error reading file

Cause Remedy
This message indicates that the program cannot read the screenset file. This can also be an indication of a disk corruption. This error message may be returned by various programs.

Determine if this error message is specific to:

  • a client machine

  • all client machines and the application server.

If this error is client machine specific, then possible remedies include:

  • Check the permissions on the \Screens and \Bin folders on the client machine(s).

  • Remove the vergui.txt file from the \Screens folder on the client machine(s) on which the error occurs. This will force screen synchronisation.

  • You can also manually copy the Bin files and the Screens files from the application server to the client machine(s) to ensure that the same user controls and screens are on both the application server and client machine.

  • Re-install the SYSPRO client software on the machine(s).

  • Check the disk for corruption by running the diagnostic utilities of the disk on the client machine(s).

If this error occurs on all client machines and the application server, then possible remedies include:

  • Check the permissions on the \Screens and \Bin folders on the application server and all the client machines.

  • Re-install SYSPRO on the application server.

  • Check the disk for corruption by running the diagnostic utilities of the disk on the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

04 Invalid screenset

Cause Remedy
This message indicates that the program is attempting to open a screenset which is not recognized as a valid screenset.

It might be that the screenset name defined in the program is incorrect or that the screenset is from a previous version of the dialog system.

This error message may be returned by various programs.

Determine if this error message is specific to:

  • a client machine

  • all client machines and the application server.

If this error is client machine specific, then possible remedies include:

  • Remove the vergui.txt file from the \Screens folder on the client machine(s) on which the error occurs. This will force screen synchronisation.

  • You can also manually copy the Bin files and the Screens files from the application server to the client machine(s) to ensure that the same user controls and screens are on both the application server and client machine.

  • Re-install the SYSPRO client software on the machine(s).

If this error occurs on all client machines and the application server, then possible remedies include:

  • Re-install SYSPRO on the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

07 Invalid function number

Cause Remedy
This message indicates that an invalid function exists in the screenset, but the dialog system cannot identify at what stage the error occurred.

This message generally indicates a program error.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

08 Invalid procedure number

Cause Remedy
This message indicates that an invalid procedure number exists in the screenset.

This message generally indicates a program error.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

10 Invalid data block version number

Cause Remedy
This message indicates that the program is attempting to load a screenset, but the program and the screenset do not contain the same view of the screenset. The data block version in the screenset does not match the data block version in the program.

This can also occur when the screensets on the client machine(s) are not the same version as the screensets on the application server. This can happen if the self-healing process fails.

This error message may be returned by various programs.

Determine if this error message is specific to:

  • a client machine

  • all client machines and the application server.

If this error is client machine specific, then possible remedies include:

  • Remove the vergui.txt file from the \Screens folder on the client machine(s) on which the error occurs. This will force screen synchronisation.

  • You can also manually copy the Bin files and the Screens files from the application server to the client machine(s) to ensure that the same user controls and screens are on both the application server and client machine.

  • Re-install the SYSPRO client software on the machine(s).

If this error occurs on all client machines and the application server, then possible remedies include:

  • Re-install SYSPRO on the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

17 Screen manager error

Cause Remedy
This message indicates that the internal screen manager detected an error. This error message may be returned by various programs.

Determine if this error message is specific to:

  • a client machine

  • all client machines and the application server.

If this error is client machine specific, then possible remedies include:

  • Check the permissions on the \Screens and \Bin folders on the client machine(s).

  • Re-install the SYSPRO client software on the machine(s).

If this error occurs on all client machines and the application server, then possible remedies include:

  • Check the accuracy of the pathnames defined in the System Setup program.

  • Check the permissions on the \Screens and \Bin folders on the application server and all the client machines.

  • Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

  • Re-install SYSPRO on the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

18 Cannot find screenset

Cause Remedy
This message indicates that the program is attempting to open a screenset file, but the file cannot be located. This error message may be returned by various programs.

Determine if this error message is specific to:

  • a client machine

  • all client machines and the application server.

If this error is client machine specific, then possible remedies include:

  • Check the permissions on the \Screens and \Bin folders on the client machine(s).

  • Remove the vergui.txt file from the \Screens folder on the client machine(s) on which the error occurs. This will force screen synchronisation.

  • You can also manually copy the Bin files and the Screens files from the application server to the client machine(s) to ensure that the same user controls and screens are on both the application server and client machine.

  • Re-install the SYSPRO client software on the machine(s).

If this error occurs on all client machines and the application server, then possible remedies include:

  • Check the accuracy of the pathnames defined in the System Setup program.

  • Check the permissions on the \Screens and \Bin folders on the application server and all the client machines.

  • Check if the specific screenset exists in the Screens folder on the application server.

  • Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

  • Re-install SYSPRO on the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

20 Invalid parameter

Cause Remedy
This message indicates that a bad parameter exists in the screenset.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

22 Callout failed

Cause Remedy
This message indicates that the dialog system is attempting to call a program, but it failed.

This error message may be returned by various programs.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Determine if this error message is specific to:

  • a client machine

  • all client machines and the application server.

If this error is client machine specific, then possible remedies include:

  • Check the permissions on the \Screens and \Bin folders on the client machine(s).

  • Re-install the SYSPRO client software on the machine(s).

If this error occurs on all client machines and the application server, then possible remedies include:

  • Check the permissions on the \Screens and \Bin folders on the application server and all the client machines.

  • Re-install SYSPRO on the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

Transaction processing error messages

Transaction processing errors in a C-ISAM environment

Cause Remedy
These messages indicate that the program is attempting to post a transaction, but has failed.

As you are using SYSPRO in a C-ISAM environment, it cannot automatically undo any changes that may have been part-applied to your data files. You may have out-of-balance data files and data corruption is a possibility.

These errors are possibly caused by:

  • A file status error

  • A file status 9-??? error

  • An unexpected error such as hardware or network failure

Possible remedies include:
  • Determine and resolve the cause of the error message. Refer to the topics: File status error messages and File status 9-xxx error messages.

  • Re-index all data files

  • Run balance functions in all the relevant modules

  • Repost the transaction

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

Transaction processing errors in a SQL environment

Cause Remedy
This message indicates that an unexpected condition was detected during the SQL transaction before it was completed.

When a SYSPRO program posts new transactions or changes/deletes existing information, it typically performs this inside a SQL Server transaction. If you receive this error, then any additions, changes or deletions performed since the start of the transaction have been rolled back (i.e. undone). This ensures that you do not have a database containing partially-updated data.

This rollback can possibly be caused by:

  • A file status error.

  • A file status 9-??? error.

  • A timestamp error.

  • An invalid SQL command error.

  • Database non-integrity.

  • An unexpected error (e.g. a hardware or network failure).

Refer to the Transaction Processing in a SQL environment topic.

Possible remedies include:

  • Log out of SYSPRO and then log back into SYSPRO. Repost the transaction.

  • The system administrator must check the integrity of the database. Use the SQL Server Diagnostic program to confirm that:

    • the SYSPRO database is configured correctly;

    • all the standard SYSPRO tables, columns and indexes exist; and

    • the appropriate parameters are set for the columns.

  • Determine and resolve the cause of the error message. Refer to the topics:

    • File status error messages.

    • File status 9-xxx error messages.

    • SQL error messages.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

When reporting the transaction processing error, provide the following additional information in the error report:

  • Document the exact steps the operator was performing before receiving this error message.

  • Screendumps of the error messages, including the Extended SQL Information details.

SQL error messages

SQL-018 Invalid EXECUTE for Write

Cause Remedy
This message indicates that the program attempted to write information to a SQL object which is invalid or does not exist.

If you select to view the Extended SQL Information, then you can view the SQL statement that was being executed just before the error was returned. The invalid table or column name is also displayed.

The system administrator must check the integrity of the database. Use the SQL Server Diagnostic program to confirm that:
  • the SYSPRO database is configured correctly;

  • all the standard SYSPRO tables, columns and indexes exist; and

  • the appropriate parameters are set for the columns.

If the program identifies missing standard SYSPRO tables and columns, then this usually indicates that the data conversion was unsuccessful. For example: you could be attempting to connect to a SQL database which is in a format of a previous version of SYSPRO, but you are connecting to this database using a later version of SYSPRO. In this case, you need to redo the conversion for the release of SYSPRO you want to run.

If the program identifies missing primary indexes, then you need to generate and execute the relevant SQL script (e.g. ADDKEY70) against the database. This will recreate the primary indexes on all the standard SYSPRO tables.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

SQL-021 Invalid TimeStamp when attempting Update - Re-enter data

Cause Remedy
Some SYSPRO programs use a timestamp to control data contention. This message indicates that the timestamp changed between the time the operator selected the item and the time the operator attempted to change the item.

For example: when changing the Accounts Receivable terms using the AR Invoice Terms program, the maintenance program reads the timestamp against the terms code being changed and stores it. When the operator saves any changes, then the timestamp on the row is compared to the saved timestamp and if they differ then a timestamp error message is shown. The timestamp against the row only changes if another process has changed data on the same row since the original timestamp was saved.

Ensure that other operators are not updating the same item at the same time. Use the System Information program (Shift+F7) to see which operator is accessing which programs.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

SQL-022 Invalid SQL command - See Extended SQL Information

Cause Remedy
This message indicates that SYSPRO detected an unexpected condition when interacting with SQL Server.

If you select to view the Extended SQL Information then you can view the SQL statement that was being executed just before the error was returned. There is also detail regarding the condition that caused the problem.

When you receive this error:
  • The system administrator needs to check the integrity of the SQL database. Use the SQL Server Diagnostic program.

  • Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

When reporting the Invalid SQL command error message, provide the following additional information in the error report:

  • Document the exact steps the operator was performing before receiving this error message.

  • Screendumps of the error messages, including the Extended SQL Information details.

File status error messages

Status 22 Duplicate Key

Cause Remedy
This message indicates a duplicate key condition. The program is attempting to WRITE a record that would create a duplicate primary key in the indexed file or table. This error message is generally caused by a data-related problem, but can in some cases be caused by a program error.

The primary key and the file name is displayed in the error message.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Other possible remedies include:

  • Investigate the data and determine the cause of the duplicate key error.

  • Correct the data causing the duplicate key error and re-post the transaction.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

When reporting the Duplicate key file error message, provide the following additional information in the error report:

  • Document the exact steps the operator was performing before receiving this error message.

  • Supply screendumps of the error messages, including the View Details window or the Extended SQL Information window.

Status 23 Record not found

Cause Remedy
This message indicates that an attempt has been made to access a record, identified by a key, and that record does not exist in the file.

This message can be caused by one of two actions:

AccessDescription
Attempting to read a recordThis message indicates that the program was expecting to find an item read previously by the application, but this time it was not found.
Attempting to update a recordThis message indicates that the program was trying to update information on a record that has already been read but the record no longer exists.
This error message is generally caused by a data-related problem, but can in some cases be caused by a program error.

The item key and file name is displayed in the error message.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Other possible remedies include:

  • Investigate the data and check if this record still exists in the file.

  • If the key in the message displayed is CTL, then the control record for this module is not on file. Check the financial year and period in the Company Setup program

  • On a C-ISAM based system, reindex the file displayed.

  • On a SQL based system, run the ADDKEY70 script against the database. This will recreate the primary indexes on all the standard SYSPRO tables.

  • Rebuild the file name, displayed in the error message, by using the Reindex Data Files program (if this file is available for rebuild).

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

When reporting the Record not found file error message, provide the following additional information in the error report:

  • Document the exact steps the operator was performing before receiving this error message.

  • Supply screendumps of the error messages, including the View Details window or the Extended SQL Information window.

Status 24 Boundary violation caused by index WRITE

Cause Remedy
This message indicates that a physical limit imposed by the C-ISAM file system has been reached. Typically, when the file size reaches or exceeds this limit, the last record written to file is truncated.

Reindexing will complete successfully as the Reindex program only opens the files for INPUT (i.e. the file is read sequentially).

All the other SYSPRO programs (or the ISAM to SQL migration wizard program) open the files for INPUT and OUTPUT. If the runtime system detects that a file has exceeded the file size limitation, this error message is displayed.

For C-ISAM files, the runtime supports an approximate maximum file size of 4GB on Windows-based operating systems.

  • Purge data files (data will be purged according to History options in the Setup programs). You can also use the archiving utility to reduce the size of the file. Reindex the files after purging or archiving.

  • Reindex the data files regularly. The Reindex Files program will generate a warning message if the file is within 10% of the maximum file size. The warning is displayed:

    • in a message box (unless reindexing is running in background mode).

    • in the Error message column of the Reindex Data Files listview (unless reindexing is running in background mode).

    • on the Reindex Log report. The file size in bytes is also printed on this report.

    The number of bytes in the file is calculated as: (record length +1) x record count and if a file is ninety percent of the maximum file size or above, the warning will be displayed.

  • If you do receive this error message on the C-ISAM filename SALZHS.* ( Sales Analysis Zoom Index on Sales History Summary) then review if you do need to retain the Sales Analysis summary zoom index. If this is not required, deselect this option. The files SALZHS.dat and SALZHS.idx will be removed the next time you rebuild the sales analysis history.

    [Note]

    This file is simply a pointer back to the Sales Analysis sales history source transactions file, to determine which entries were written to the summary data in the Sales Analysis sales history summary file. Although there are currently no SYSPRO programs using this zoom file, the file can be used by custom reports. This was created for use by developers of 3rd party applications to drill down to the transaction level of a particular value.

  • There is no file size limitation in a SQL database.

Status 37 Incorrect open mode

Cause Remedy
This message indicates that the program is attempting to open a file for writing when it was set to read-only. This message generally indicates a permission problem either on the file name or the folder name reported in the error message.

Possible remedies include:

  • Check the permissions on the Settings folder on the application server and the client machine(s) on which the error occurs.

    [Note]

    Some programs attempt to write to the customization preference files which are stored in this folder. If the operator does not have the correct permissions, then the program may fail to update these files and return a status 37 error. This may also occur when printing documents, as the default printer setup is stored in the operator preferences file (which is saved in the Settings folder).

  • On a C-ISAM-based system, verify the attributes on the data and indexed portion of the file. The program requires read and write access.

  • On a SQL-based system, verify the permissions on the table.

If you receive this message when you run the Requirements Calculation program on a SQL-based system, check the following:

  • The temporary folder specified in the Company Maintenance program.

  • The login and password specified in the Company Maintenance program.

  • The 3-tier setup, if running in a 3-tier SQL environment. Review the topic: Running SYSPRO in a 3-tier environment.

Status 39 Indexed file key mismatch

Cause Remedy
This message indicates that the record length, primary key or alternate key definition in the program does not match the settings of the C-ISAM file. Possible remedies include:
  • Reindex the files.

  • This message can indicate that you are using the wrong version of the software for the existing data file. Contact your System Administrator to establish whether this is the problem.

Status 41 File already opened

Cause Remedy
This message indicates that the program is attempting to open a file that has already been opened.

This message generally indicates a program error.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

Status 42 File already closed

Cause Remedy
This message indicates that the program is attempting to close a file that has already been closed.

This message generally indicates a program error.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

Status 46 No current record exists

Cause Remedy
This message indicates that the program is attempting to read the next record on a file when there is no valid pointer to that file (i.e. a valid starting point has not been obtained). This is both a data-related error and a program error and only occurs on a C-ISAM file. It is usually caused by a START being performed on the file and failing. The program does not check for the failure and continues to read the next record. This message can indicate that there is a data-related problem on the file name displayed in the message. The key of the record is displayed in the message.

Use the DDSBFI program to establish what the primary key field is for this file and investigate the relevant data file. This can be an indication of a missing or corrupt record in one of the files.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

When reporting this error, provide the following additional information in the error report:

  • Document the exact steps the operator was performing before receiving this error message.

  • Send a copy of the data and work files.

    [Note]

    This error can normally only be duplicated on a specific data set.

Status 47 File not opened in INPUT mode

Cause Remedy
This message indicates that the program is attempting to perform a READ or START operation on a file not opened in INPUT mode.

This message generally indicates a program error.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

Status 48 File not opened in OUTPUT mode

Cause Remedy
This message indicates that the program is attempting to write to a file that was either not opened at all, or was opened for reading only.

This message generally indicates a program error.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

File status 9-xxx error messages

9-004 Illegal file name

Cause Remedy
This message indicates that the program attempted to open a file that contains an illegal character for the operating system.

This could be any character that is not part of the permitted character set or it could be a system-dependent delimiter, which on most systems is the space character.

An example of an illegal file name is TEST FIL.DAT where there is a space between TEST and FIL.DAT.

  • Look at the file name displayed and verify whether it contains an illegal character for the operating system. Examples include: /, \, ?, *, space.

  • If you have entered the file name (e.g. when importing or exporting information) then you should try a simpler file name.

  • If you want to include a space character in a path or file name on Windows, then try surrounding the file name in quotes (e.g. "C:\My Documents\MyFile.dat").

  • If the file name is blank, then this could indicate a program error.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-007 Disk space exhausted

Cause Remedy
This message indicates that the disk is full.

Every SYSPRO program that writes data, tests the status of the write after it has been performed. There is a common routine in SYSPRO programs to display any message returned from the operating system (including a disk full) and if job logging is enabled, then the status is saved to the log file.

Exit SYSPRO immediately and notify your System Administrator.

The System Administrator needs to look at the following possibilities to clear disk space:

9-009 The directory does not exist (No space in directory)

Cause Remedy
This message indicates that the specified folder does not exist.

This can also be an indication of incorrect permissions on the folder.

This occurs if:

  • You entered an incorrect path name (e.g. when importing/exporting a file).

  • The path name is incorrectly specified in the System Setup program.

  • The file is not located in the correct folder.

  • Incorrect file permissions exist.

  • The folder is full.

  • Check the accuracy of the pathname you entered.

  • Check the accuracy of the pathname defined in the System Setup program.

  • Move the file to the correct folder.

  • Check the file and folder permissions.

  • If the folder is full, then delete any files that you no longer need.

9-011 Process limit reached

Cause Remedy
This message indicates that the runtime cannot create another process because a limit has been reached.

One of the following has occurred:

  • The runtime system cannot create a new process as the operating system limit on the total number of processes per user or system-wide would be exceeded.

  • Insufficient memory is available to complete the operation.

  • Terminate any processes that you are no longer using, or make more memory available.

  • The operating system might enable you to increase the maximum number of processes allowed. Refer to your operating system documentation for further information.

9-013 File not found

Cause Remedy
This message indicates that the file displayed does not exist, or you do not have permissions to access it.

This can occur if:

  • You entered an incorrect file name (e.g. when importing/exporting a file).

  • A path name is incorrectly specified in the System Setup program.

  • The file is not located in the correct folder.

  • Incorrect file permissions exist.

  • Check the accuracy of the file name you entered.

  • Check the accuracy of the pathnames defined in the System Setup program.

  • Move the file to the correct folder.

  • Check the file and folder permissions.

9-014 Too many files opened simultaneously

Cause Remedy
This message generally indicates that you have exceeded an operating system limit that restricts the number of concurrently opened files. You can run a diagnostic utility (Diagnostics - Max C-iSAM Files) to verify the maximum number of files that can be opened on the operating system.

This program does not use existing files. Files are created in the Base folder, starting from TST001. We recommend that you remove any previously generated TSTxxx files before starting a new test.

9-015 Too many indexed files open

Cause Remedy
This message generally indicates that you have exceeded an operating system limit that restricts the number of concurrently opened indexed files. You can run a diagnostic utility (Diagnostics - Max C-iSAM Files) to verify the maximum number of files that can be opened on the operating system.

This program does not use existing files. Files are created in the Base folder, starting from TST001. We recommend that you remove any previously generated TSTxxx files before starting a new test.

9-018 Invalid end of file (Read part record error)

Cause Remedy
This message generally indicates that at least one record in a C-ISAM file is corrupt or truncated. This error most commonly occurs when reindexing a file and is caused by the presence of one or more corrupt records in the file being accessed.

Specifically, a part record has been found at the end of a file. As the reindexing utility does not find a complete record at the end of file, it reports this error.

This error usually occurs if a program does not terminate correctly (e.g. a power loss occurs when a file is in use by a program).

An important note is that if there is a data corruption in a data file (.DAT) then that can cause all subsequent records to be treated as corrupt.

The reason is as follows:

  • Each ISAM file has a record length of X bytes (e.g. 1000). This means that there are 1000 bytes of data followed by a line feed character indicating a valid record. If the row is deleted, then it is marked with a NULL character instead of the line feed character. This is the deleted record indicator.

  • The reindex process reads the data ( .DAT) portion, completely ignoring the index ( .IDX) portion of the file. It does this by reading X+1 bytes (e.g. 1001) at a time.

  • It checks the last character (the delimiter) and if a line feed is found, then the record (1000 bytes) is written to a new indexed file ( .DAT and .IDX), thus creating a new file that just contains the valid records from the old file.

  • Note that if the corruption (e.g. a virus or disk corruption) causes a record in the middle of the file to be 1 byte short, then all subsequent reads of 1001 bytes will be out by 1 and the line feed delimiter will not be found.

  • Reindex the file. During reindexing, an invalid end-of-file message should be displayed, at which point you can continue to reindex the file and the part record is discarded.

  • If the file cannot be repaired by the Reindex Files program, then you might need to restore it from a backup set.

9-021 Attempted open on a directory (File is a directory)

Cause Remedy
This message indicates that the program is attempting to open a C-ISAM file, but a folder with that name already exists.

Alternatively, the file attributes are not set up correctly to allow you to access a file (i.e. it is marked as read-only, or you do not have sufficient permissions to open it).

  • Verify whether there is a folder with the name of the file displayed. If there is, then rename the folder.

  • Ensure that the file has the correct permissions.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-028 No space on device

Cause Remedy
This message indicates that the device is full.

Every SYSPRO program that writes data, tests the status of the write after it has been performed. There is a common routine in SYSPRO programs to display any message returned from the operating system (including a disk full), and if job logging is enabled, then the status is saved to the log file.

Exit SYSPRO immediately and notify your System Administrator.

The System Administrator needs to look at the following possibilities to clear disk space:

9-032 Too many indexed files, or no such process

Cause Remedy
This message indicates that the program has attempted to open an indexed file, but you have exceeded an operating system limit that restricts the number of concurrently opened indexed files.

Alternatively, the program may be attempting to use a process id that does not exist, or which the operating system no longer recognizes.

You can run a diagnostic utility (Diagnostics - Max C-iSAM Files) to verify the maximum number of files that can be opened on the operating system.

This program does not use existing files. Files are created in the Base folder, starting from TST001. We recommend that you remove any previously generated TSTxxx files before starting a new test.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-035 Attempt to access a file with incorrect permission

Cause Remedy
This message indicates that the program has attempted an operation on a file, but the owner of the file has not given you the necessary permission for that operation.
  • Check the file and folder permissions. Remember to check the data and index portions of C-ISAM indexed files.

9-041 Corrupt index file

Cause Remedy
This message indicates that the indexed portion of the C-ISAM file does not match the data portion.

The runtime system does not recognize the control information for an indexed file and as the index is corrupt in some way the data in the file is no longer accessible by the system.

Report this to your System Administrator so that the file can be reindexed.

9-043 File information missing for indexed file

Cause Remedy
  • This message indicates that either the data or the indexed portion of a C-ISAM file is missing. Each C-ISAM file comprises two physical operating system files: the data portion and the index portion. In a Windows environment, the naming convention for the data portion has an extension of .DAT and the indexed portion has an extension of .IDX.

  • This message can also indicate that due to resource limitations, only the data or indexed portion of a file could be opened.

  • This can also occur where the operating system has reached the limit of the number of files that can be opened.

  • Report this problem to your system administrator to ensure that the reason for the missing file is resolved.

  • If you receive this error message (on a temporary file name) while processing payments (using the AR Payments and Adjustments program) then you can change the System Temp folder on the machine as follows:

    1. Create a new folder under the C drive.

    2. Ensure that everyone has full permissions to this folder.

    3. Right-Click on My Computer

    4. Select Properties.

    5. Select Advanced.

    6. Select Environment Variables.

    7. Edit the TMP and TEMP paths. Change them to the new folder you have created (for example C:\temp)

    8. Restart the machine.

  • If the data and indexed portions both exist, then verify the operating system limit on files open. You can run a diagnostic utility (Diagnostics - Max C-iSAM Files) to verify the maximum number of files that can be opened on the operating system. This program does not use existing files. Files are created in the Base folder, starting from TST001. We recommend that you remove any previously generated TSTxxx files before starting a new test.

  • If the indexed portion is missing, then reindex the file to rebuild the index portion.

  • If the data portion is missing, then restore the file from a recent backup.

9-048 Attempt to divide by zero

Cause Remedy
This message indicates that the program is attempting to perform a fixed-point divide by zero.

This message generally indicates a program error.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-065 File is in use

Cause Remedy
This message indicates that the program is attempting to open a file which has been locked exclusively by another user. Alternatively, the program has attempted to lock a file exclusively which is already in use by another user.

This typically occurs under one of the following conditions:

  • If you are running any of the Period End programs and you attempt to run a program which opens any of the files used by the Period End program.

  • If you attempt to run a Period End program and another user is already running a program that has opened any of the files used by the Period End program.

  • SYSPRO deliberately runs some programs where the file usage is LOCK EXCLUSIVE. This ensures that users are not able to alter the contents of data files while important data processing is taking place. The disadvantage of this is that the system is unaware that you may want to only query such data and it will still prevent you from accessing that data.

  • If you are running a program that requires exclusive use of a file, then you will be warned of any other operators accessing the file. Wait until they have finished with the file before proceeding.

  • If you are running a program that does not require exclusive use of a file, then someone else is locking the file. You should wait for them to finish.

  • Select Shift+F7 and select Current Users to see which operator is accessing which programs. Clear inactive users.

  • Restart the application server.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-066 Attempt to write a duplicate record to an indexed file

Cause Remedy
This message indicates that the program has attempted to insert a record with the same key as an existing item.

The primary key is shown for information. If the file has alternate keys, then it is possible that one of these has caused the message to appear.

  • On a C-ISAM-based system, reindex the file displayed.

  • On a SQL-based system, run the ADDKEY70 script against the database. This will recreate the primary indexes on all the standard SYSPRO tables.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-068 Record locked

Cause Remedy
This message indicates that the program has attempted to read a record that is locked by another user. Most SYSPRO programs will handle this situation without requiring additional action.

Possible remedies include:

  • Select Shift+F7 and select Current Users to see which operator is accessing which programs. Clear inactive users.

  • Use the Task Manager program in SYSPRO to kill unknown and runaway processes.

  • Run the Balance function in the module in which the error occurred.

  • Restart the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-070 Too many indexed files opened

Cause Remedy
This message generally indicates that the program has exceeded an operating system limit that restricts the number of concurrently opened indexed files. You can run a diagnostic utility (Diagnostics - Max C-iSAM Files) to verify the maximum number of files that can be opened on the operating system.

This program does not use existing files. Files are created in the Base folder, starting from TST001. We recommend that you remove any previously generated TSTxxx files before starting a new test.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-071 Bad indexed file format

Cause Remedy
The message indicates that the program is attempting to use a file which is corrupt, or there is an internal system error.
  • Report this to your System Administrator so that the file can be reindexed.

  • Check the disk for corruption by running the diagnostic utilities of the disk.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-073 No record found in indexed file

Cause Remedy
This message can be caused by one of two actions.
AccessDescription
Attempting to read a fileThis message indicates that the program was expecting to find an item read previously by the application, but this time it has not been found.
Attempting to update a recordThis message indicates that the program was trying to update information on a record that has already been read but the record no longer exists.

The item key is shown for information so that the support consultants can identify whether the item still exists in the file.

  • On a C-ISAM-based system, reindex the file displayed.

  • On a SQL-based system, run the ADDKEY70 script against the database. This will recreate the primary indexes on all the standard SYSPRO tables.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-104 Null file name used in file operation

Cause Remedy
This message indicates that the program has attempted to open a file with a null (blank) file name.
  • If you receive this message while importing or exporting data, then ensure that you have entered a valid file name. Ensure that the file name does not begin with a space character.

  • Look at the file name displayed and verify whether it contains an illegal character for the operating system (e.g. /, \, ?, * or space).

  • If you want to include a space character in a path or file name on Windows, then try surrounding the file name in quotes (e.g. "C:\My Documents\MyFile.dat").

  • If the file name is blank, then this could indicate a program error.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-105 Memory allocation error

Cause Remedy
This message indicates that the runtime system is unable to allocate sufficient memory space to successfully carry out the attempted operation, probably because of insufficient memory space on the system. You should obtain more memory in which to run the program. Refer to your operating system documentation for details of how you can obtain more memory.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-114 Attempt to access item beyond bounds of memory

Cause Remedy
This message indicates that the operating system has detected a memory access violation.

Some of the possible causes include:

  • If you receive this error message while processing documents using the Word Printing program, a memory conflict occurred between the Calendar Control and the Word Printing program.

  • A corrupt ADMLSR file ( Settings) can cause this error in certain programs.

  • Corrupt customization preference files ( *ADM* files in Settings).

    [Note]

    These files store information about how you customized the user interface. As programs load and the user interface is presented these files are read on the client and used to restore any previous customization saved. In some cases these files are corrupt and can cause the error.

  • On Windows Vista/Windows Server 2008, an incorrect application extension file (installed by Crystal Reports) can cause this error when printing SRS documents.

  • This can also be caused by errors in the program(s).

This error message may be returned by various programs.

Determine if this error message is specific to:

  • an operator code

  • an operator role (if customization is role-based)

  • a client machine

  • a program or menu.

If this error is operator code specific, then possible remedies include:

  • Reset the listviews and docking panes for the operator

    [Note]

    All listviews and docking panes revert to the default settings.

  • Move the following files from the Settings folder:

    • ?ADMDRO.* (stored on the client machine)

    • ADMLSD.* (stored on the client machine)

    • ADMLSR.* (stored on the client machine)

    • ADMPNL.* (stored on the client machine)

    [Note]

    These files store information about docking panes, listviews and toolbar settings and customized panes per operator. They are recreated with the default settings when an operator log in. If you do not receive the same error message after moving these files away, then one of the files was corrupt. If you move these files from the folder, then you will have to redefine all listviews and docking pane customization settings.

If this error is operator role specific, then possible remedies include:

  • Move the following files from the Settings folder:

    • ADMLAY.* (stored on the application server)

    • ADMPRO.* (stored on the client machine)

    [Note]

    These files store the customized role properties as well as information on the display and entry captions. They are recreated with the default settings when an operator log in. If you do not receive the same error message after moving these files away, then one of the files was corrupt. If you move these files from the folder, then you will have to redefine all role-based customization settings.

If this error is client machine specific, then possible remedies include:

  • Deselect the Calendar Control on the client machine(s) on which the error occurs. Review the following procedure: Deactivating the Calendar Control on a client machine.

  • Remove the vergui.txt file from the Screens folder on the client machine(s) on which the error occurs.

    [Note]

    This will enforce screen synchronisation.

  • Manually copy the Bin files and the Screens files from the application server to the client machine(s) to ensure that the same user controls and screens are on both the application server and client machine.

  • Re-install the SYSPRO client software on the machine(s).

If this error is program/menu specific, then possible remedies include:

  • If you are receiving this error when printing SRS documents on Windows Vista/Windows Server 2008, then locate the file C:\Program Files\Common Files\Business Objects\3.0Bin\USP10.DLL on the machine(s) on which the error occurs. If the file exists, then rename or delete it.

  • Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

  • Re-install SYSPRO on the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

When reporting this error, provide the following additional information in the error report:

  • Document the exact steps the operator was performing before receiving this error message.

  • Document if this error is specific to a client machine, operators, operator roles, a program/menu and/or the application server.

  • Send the mfdebug.log file. This file (if it exists) resides in the Base folder on the application server and/or the client machine(s) on which the error occurs.

    [Note]

    This file is created by the runtime system. It may be useful in helping to understand which components of SYSPRO were running at the time of the error.

9-116 Cannot allocate memory

Cause Remedy
This message indicates that a part of the runtime system is unable to allocate sufficient memory to the program.
  • If all client machines are receiving this error message, then shut the application server down. Restart the server and attempt the same action again. Check the available memory on the server.

  • If only certain client machines are receiving this error, then restart those machines and attempt the same action again. Check the available memory on these client machines.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-135 File must not exist (File not found)

Cause Remedy
This message indicates that the program is attempting to access a file that cannot be located, or which does not exist.

This can occur if:

  • A path name is incorrectly specified in the System Setup program.

  • The file is not located in the correct folder.

  • Incorrect file permissions exist.

  • There is a possible program error.

  • Check the accuracy of the pathnames defined in the System Setup program.

  • Move the file to the correct folder.

  • Check the file and folder permissions.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-153 Subscript out of range

Cause Remedy
This message indicates that a subscript which the program is using is out of the defined range (i.e. it is either less than one or it is greater than the number of occurrences of the item).

Some of the possible causes include:

  • Corrupt data files.

  • Data files that were updated by a non-SYSPRO program (e.g. MS Access) with data values outside the defined range in the program.

  • Corrupt customization preference files ( *ADM* files in Settings).

    [Note]

    These files store information about how you customized the user interface. As programs load and the user interface is presented these files are read on the client and used to restore any previous customization saved. In some cases these files are corrupt and can cause the error.

  • A corrupt operator preference file (operator_name.prf). You can receive a Subscript out of range error on logging into a SYSPRO company because of a corrupt operator preference file.

    [Note]

    The Operator.prf file is a text file. It includes the printer settings, your Favorites menu definition, the last x web URLs you accessed and the size and position of the parts of the main menu.

  • A corrupt operator file (ADMOPR.dat).

  • A problem with a customized docking pane/VBScript can result in this error to be returned when the program is loaded.

  • Corrupt SYSPRO programs on the application server.

  • The data file is not in the correct format for the currently installed software on the application server.

  • Program errors (e.g. in the Financial Report Maintenance program, the number of details lines allow for 80 entries. If the listview is coded by mistake to only allow 20 entries, then the operator will receive this error message when attempting to add line 21. In this case the error is caused by a program error that is data-related).

This error message may be returned by various programs.

Determine if this error message is specific to:

  • an operator code

  • an operator role (if customization is role-based)

  • a client machine

  • a program or menu.

If this error is operator code specific, then possible remedies include:

  • Reset the listviews and docking panes for the operator.

    [Note]

    All listviews and docking panes for the operator will revert to the default settings.

  • Move the operator preference file (operator_name.prf) from the folder Settings on the application server. If you do not receive the same error message, then this file was corrupt.

  • Delete and recreate the operator code. If you do not receive the same error message, then the operator record was corrupt.

  • Move the operator file (ADMOPR.dat) from the folder Work on the application server.

    [Note]

    If you move this file from the folder, then you will have to redefine all operators.

  • Move the following files from the Settings folder:

    • ?ADMDRO.* (stored on the client machine)

    • ADMLSD.* (stored on the client machine)

    • ADMLSR.* (stored on the client machine)

    • ADMPNL.* (stored on the client machine)

    [Note]

    These files store information about docking panes, listviews and toolbar settings and customized panes per operator. They are recreated with the default settings when operators log in. If you do not receive the same error message after moving these files away, then one of the files was corrupt. If you move these files from the folder, you will have to redefine all listviews and docking pane customization settings.

If this error is operator role specific, then possible remedies include:

  • Move the following files from the Settings folder:

    • ADMLAY.* (stored on the application server)

    • ADMPRO.* (stored on the client machine)

    [Note]

    These files store the customized role properties as well as information on the display and entry captions. They are recreated with the default settings when an operator log in. If you do not receive the same error message after moving these files away, then one of the files was corrupt. If you move these files from the folder, then you will have to redefine all role-based customization settings.

If this error is client machine specific, then possible remedies include:

  • Remove the vergui.txt file from the Screens folder on the client machine(s) on which the error occurs.

    [Note]

    This will enforce screen synchronisation.

  • Manually copy the Bin files and the Screens files from the application server to the client machine(s) to ensure that the same user controls and screens are on both the application server and client machine.

  • Move the file ADMPNL.* from the Settings folder on the client machine(s) on which the error occurs.

    [Note]

    The customized pane information is stored in the ADMPNL.* file in the Settings folder on the client, or in the ADMLAY.* file within the Settings folder on the application server (if using a role-based user interface).

  • If you are using VBScripts in customized panes in the specific program, you can move the file operator_VBS_vbscriptname from the Settings folder on the client machine(s) on which the error occurs.

    [Note]

    The folder and filename for a VBScript associated with a customized pane depends on the following:

    • VBScripts for customized panes are located in the Settings folder on the client machine if either you are customizing the main system menu (IMPMEN) or roles are not in use. The name of each script is operator_VBS_vbscriptname. For example, if the logged-in operator is ADMIN and you are adding customized panes to the main system menu, then the VBScript file name might be ADMIN_VBS_IMPMEN00.

    • VBScripts for customized panes for use with roles (with the exception of the main system menu) are located in VBScripts on the application server.

  • If this error is caused by a VBScript running in a customized pane, then the error may be caused by the VBScript itself. Troubleshoot the script.

  • Re-install the SYSPRO client software on the machine(s).

If this error is program/menu specific, then possible remedies include:

  • Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

  • This message can indicate that you are using the wrong version of the software for the existing data file. Contact your System Administrator to see if this is the problem.

  • Re-install SYSPRO on the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

When reporting this error, provide the following additional information in the error report:

  • Document the exact steps the operator was performing before receiving this error message.

  • Document if this error is specific to a client machine or machines, operators, operator roles, a program/menu and/or the application server.

  • If the error is caused by a VBScript running in a customized pane (and the error is displaying the program name SRSQRT.INT) send the following additional information:

    • The VBScript.

    • The SRSQRT debug file.

      1. Create an empty file (using a text editor like Notepad) called SRSQRT.DEBUG in the Base folder on the application server.

      2. Run the VBScript again to receive the error - this should have generated a SRSQRT.TXT file in the Base folder on the application server. Send this text file to SYSPRO with the rest of the information.

      3. Delete the SRSQRT.DEBUG file.

  • Send the mfdebug.log file. This file (if it exists) resides in the Base folder on the application server and/or the client machine(s) on which the error occurs.

    [Note]

    This file is created by the runtime system. It may be useful in helping to understand which components of SYSPRO were running at the time of the error.

  • Send a copy of the data and work files.

    [Note]

    This error can normally only be duplicated on a specific data set.

9-154 PERFORM nested too deeply

Cause Remedy
This message indicates that the program has used GO TO to jump out of the range of a PERFORM rather than to jump to an EXIT statement at the end of its range.

This normally indicates a program error.

If you receive this error message on the IMPSTD program, then it might indicate a problem with the SYSPRO installation on the application server.

  • If this happens when Electronic Signatures is installed, then:

    • Locate the Audit Log for transactions with the following in the Status description column: Electronic signature verification successful, but transaction not yet completed.

    • Export these results to MS Excel and send this together with the error report.

  • If this happens on the IMPSTD program, then you need to ensure that the installation on the application server is correct. Re-install SYSPRO if you are not sure.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-157 Not enough program memory: object file too large to load

Cause Remedy
This message indicates that either the program is too large for the available memory space, or the stack is full.

The developer should have specified the ON OVERFLOW/EXCEPTION in the CALL statement.

This message generally indicates a program error.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

When reporting this error, provide the following additional information in the error report:

  • Document the exact steps the operator was performing before receiving this error message.

  • Send the mfdebug.log file. This file can be located (if it exists) in the Base folder on the application server and/or the client machine(s) on which the error occurs.

    [Note]

    This file is created by the runtime system. It may be useful in helping to understand which components of SYSPRO were running at the time of the error.

9-162 Arithmetic Overflow or underflow

Cause Remedy
This message indicates that a program is attempting to perform an illegal operation on a numeric field.

Possible causes include:

  • The data values in the database are violating constraints (e.g. the result of a calculation is larger than the maximum size of the field where the program is attempting to save the result).

  • Division by zero

  • Incorrect data types are defined in the record layouts.

This message generally indicates a program error.

  • Use the Data Dictionary Viewer program to check the field sizes of the relevant files.

  • Check the values entered for the transaction. If the result of a calculation is larger than the maximum field size, then consider splitting the transaction into more than one.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-163 Illegal character in numeric field

Cause Remedy
This message indicates that the contents of a numeric or numeric edited field are inconsistent with the picture definition of that field.

This error occurs when the environmental variable COBSW -F is not set.

Check that the environment variable COBSW -F is set on the application server and all the client machines.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-166 Recursive CALL is illegal

Cause Remedy
This message indicates that the program is attempting to call a module that is already active.

This message generally indicates a program error.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-168 Stack Overflow

Cause Remedy
This message indicates that the program has a PERFORM statement or a series of CALL statements nested too deeply.

This message generally indicates a program error.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

When reporting this error, provide the following additional information in the error report:

  • Document the exact steps the operator was performing before receiving this error message.

  • Send the mfdebug.log file. This file (if it exists) resides within the Base folder on the application server and/or the client machine(s) on which the error occurs.

    [Note]

    This file is created by the runtime system. It may be useful in helping to understand which components of SYSPRO were running at the time of the error.

9-173 Called program file not found

Cause Remedy
This message indicates that the program is attempting to call another program which cannot be located on the application server.

Possible causes include:

  • Incorrect pathnames specified in the System Setup program.

  • Incorrect file permissions.

  • The program does not exist in the Programs folder.

  • This may be the result of a program error.

Possible remedies include:
  • Ensure that the properties of the shortcut are correct (if you are receiving this error when trying to launch SYSPRO).

  • Ensure that the program name displayed in the window title of the error message is a SYSPRO program name.

  • Check the accuracy of the pathnames defined in the System Setup program.

  • Check the file and folder permissions.

  • Check the Programs folder to see if the program name exists. If it is does not, re-install SYSPRO on the application server.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-177 Attempt to cancel active program

Cause Remedy
This message indicates that the program is attempting to remove a currently executing program from memory.

This message generally indicates a program error.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-180 End-of-file marker error

Cause Remedy
This message generally indicates that a file marker used to indicate that the end-of-file has been reached is missing from one of the files.

Specifically, a part record has been found at the end of a file. As the reindex utility does not find a complete record at the end of the file, it reports error 9-018 or 9-180.

  • Reindex the file. During reindexing, an invalid end-of-file message should be displayed, at which point you can continue to reindex the file and the part record is discarded.

  • If the file cannot be repaired by the Reindex program, then it might need to be restored from backup.

9-187 Runtime system not found on $COBDIR path

Cause Remedy
This message indicates that the program cannot locate the runtime.

The runtime can be located using various methods indicated below:

  • the current folder

  • via the registry

  • via the PATH variable

  • via the COBDIR variable.

SYSPRO does not set the COBDIR variable, therefore this problem should not arise, but some customers use third party applications that were written in a different version of the development language. These installations use the COBDIR variable.

[Note]

The COBDIR variable points to the third party application runtime. On launching SYSPRO the COBDIR variable is read and the unsuitable runtime failed the SYSPRO application.

In order to resolve the situation and yet have both applications run:
  • Remove the COBDIR variable from the environment.

    [Note]

    This allows SYSPRO to run, but the third party application will fail.

  • Create a .BAT file to set the COBDIR variable for the third party application.

  • Change the shortcut of the third party application to launch the .BAT file.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-198 Load failure

Cause Remedy
This message indicates that the system cannot load a program module.

A CALL statement has failed because:

  • In the case of a DLL file, the specified entry point does not exist in the file.

  • In the case of an .int or .gnt file, the file is corrupt.

  • Any call or attempt to start a thread can fail where internal structures are corrupt (e.g. by a protection violation).

  • Although rare, this error can be caused by a CALL statement failing because of insufficient available memory or because the runtime system version is too old.

Possible reasons include:

  • The Bin files and/or the Screens files on the client machine(s) are corrupt.

  • Corrupt and/or missing programs (Programs) on the application server

This error message may be returned by various programs.

Determine whether this error message is specific to:

  • a client machine

  • a program or menu.

If the error is client machine specific, then possible remedies include:

  • Remove the vergui.txt file from the Screens folder on the client machine(s) on which the error occurs.

    [Note]

    This will enforce screen synchronisation.

  • Manually copy the Bin files and the Screens files from the application server to the client machine(s) to ensure that the same user controls and screens are on both the application server and client machine.

  • Re-install the SYSPRO client software on the machine(s).

If this error is program/menu specific, then possible remedies include:

  • Re-install SYSPRO on the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-191 Terminal type not defined

Cause Remedy
This is the result of an internal system error. Contact your System Administrator or Network Administrator.

Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-199 OS error code lies outside expected range

Cause Remedy
This message indicates that a system call has returned an unexpected error number which is not documented.

It indicates that there is possibly an operating system problem (e.g. permissions, corruption or a bad sector on the hard drive).

Restart the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-225 Dynamic load error - program component missing

Cause Remedy
This message indicates that the runtime system cannot locate the root or overlay of a program that is currently loaded in memory.

Alternatively, this could indicate:

  • There is insufficient memory to load the program.

  • The runtime system could not find enough file handles to open and, therefore, load the program.

  • A program error.

Possible remedies include:
  • Check the accuracy of the pathname defined in the System Setup program.

  • Check that the program is available in the Programs folder.

  • Check the available memory on the application server. Close all applications that are currently not required to run.

  • Increase the operating system file handle limit.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

9-240 Object Reference not valid

Cause Remedy
This message indicates that the program is attempting to use an object reference that contains an incorrect or non-existent object handle.

Some of the possible causes include:

  • Corrupt customization preference files ( *ADM* files in Settings).

    [Note]

    These files store information about how you customized the user interface. As programs load and the user interface is presented these files are read on the client and used to restore any previous saved customizations. In some cases these files are corrupt and can cause the error.

  • Corrupt programs on the application server.

  • Corrupt programs and/or screens on the client machine(s) where the error occurs. This can be caused by failure of the self-healing (screen synchronisation) process.

  • Incorrect or missing environment variables.

  • Program errors.

This error message may be returned by various programs.

Determine if this error message is specific to:

  • an operator code

  • an operator role (if customization is role-based)

  • a client machine

  • a program or menu.

If this error is operator code specific, then possible remedies include:

  • Reset the listviews and docking panes for the operator

    [Note]

    All listviews and docking panes revert to the default settings.

  • Move the following files from the Settings folder:

    • ?ADMDRO.* (stored on the client machine)

    • ADMLSD.* (stored on the client machine)

    • ADMLSR.* (stored on the client machine)

    • ADMPNL.* (stored on the client machine)

    [Note]

    These files store information about docking panes, listviews and toolbar settings and customized panes per operator. They are recreated with the default settings when operators log in. If you do not receive the same error message after moving these files away, then one of the files was corrupt. If you move these files from the folder, you will have to redefine all listviews and docking pane customization settings.

If this error is operator role specific, then possible remedies include:

  • Move the following files from the Settings folder:

    • ADMLAY.* (stored on the application server).

    • ADMPRO.* (stored on the client machine).

    [Note]

    These files store the customized role properties as well as information on the display and entry captions. They are recreated with the default settings when operators log in. If you do not receive the same error message after moving these files away, then one of the files was corrupt. If you move these files from this folder, then you will have to redefine all role-based customization settings.

If this error is client machine specific, then possible remedies include:

  • Remove the vergui.txt file from the Screens folder on the client machine(s) on which the error occurs.

    [Note]

    This will enforce screen synchronisation.

  • Manually copy the Bin files and the Screens files from the application server to the client machine(s) to ensure that the same user controls and screens are on both the application server and client machine.

  • Check that the environment variable COBSW -F is set.

  • If you are using VBScripts in customized panes in the specific program, you can move the file operator_VBS_vbscriptname from the Settings folder on the client machine(s) on which the error occurs.

    [Note]

    The folder and filename for a VBScript associated with a customized pane depends on the following:

    • VBScripts for customized panes are located in the Settings folder on the client machine if either you are customizing the main system menu (IMPMEN) or roles are not in use. The name of each script is operator_VBS_vbscriptname. For example, if the logged-in operator is ADMIN and you are adding customized panes to the main system menu, then the VBScript file name might be ADMIN_VBS_IMPMEN00.

    • VBScripts for customized panes for use with roles (with the exception of the main system menu) are located in VBScripts on the application server.

  • If this error is caused by a VBScript running in a customized pane, then the error may be caused by the VBScript itself. Troubleshoot the script.

  • Re-install the SYSPRO client software on the machine(s).

If this error is program/menu specific, then possible remedies include:

  • Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

  • Re-install SYSPRO on the application server.

Report this to your distributor or local SYSPRO regional office (see Reporting program errors).

When reporting the error provide the following additional information in the error report:

  • Document the exact steps the operator was performing before receiving this error message.

  • Document if this error is specific to a client machine or machines, operators, operator roles, a program/menu and/or the application server.

  • If the error is caused by a VBScript running in a customized pane (and the error is displaying the program name SRSQRT.INT) send the following additional information:

    • The VBScript.

    • The SRSQRT debug file.

      1. Create an empty file, using Notepad, called SRSQRT.DEBUG in the Base folder on the application server.

      2. Run the VBScript again to receive the error - this should have generated a SRSQRT.TXT file in the Base folder on the application server. Send this text file to SYSPRO with the rest of the information.

      3. Delete the SRSQRT.DEBUG file.

  • Send the mfdebug.log file. This file (if it exists) resides in the Base folder on the application server and/or the client machine(s) on which the error occurs.

    [Note]

    This file is created by the runtime system. It may be useful in helping to understand which components of SYSPRO were running at the time of the error.

Related tasks and topics

Transaction Processing in a SQL environment

SYSPRO running on Microsoft SQL Server is designed for rock-solid data integrity. This is achieved using Transaction Processing - the ability of an application to define a logical business function.

For example: If the General Ledger system requires that both a debit and credit are posted, then this can be defined as a transaction. The BEGIN TRANSACTION and COMMIT/ROLLBACK logic included in SYSPRO programs ensures that both the debit and credit part transactions are applied or (in the case of any problem - including system failure) that neither is applied to the database.

System maintenance requirements are dramatically reduced by using Transaction Processing.

How does SYSPRO use Transaction Processing?

When SYSPRO programs are about to perform a logical business function, they explicitly issue a BEGIN TRANSACTION SQL statement. This informs SQL Server that a transaction is to start.

Any access to the database while the transaction is in progress will cause locks to be acquired by SQL Server. This prevents other processes from accessing the same data - especially ones also inside a transaction.

Other processes trying to access the same data from within a transaction will wait for the transaction to end. This will appear as a small delay in the running of the second and subsequent program.

SYSPRO programs generally do not keep transactions open for a 'long period of time'. For example, a transaction only starts when you select Post or OK in a SYSPRO posting program. SYSPRO programs do not have SQL transactions open while operator input is being requested.

During a transaction it is possible for several problems to occur. These are described in the table below:

Short description of problem Short explanation of problem
The SYSPRO program detects unexpected data. Some examples of error messages are:
  • Duplicate key

  • Record not found

  • File already opened.

The transaction has started, and then the SYSPRO program finds an unexpected set of data. The program issues an explicit ROLLBACK.

Any database changes made since the start of the transaction are undone. All locks are released and an appropriate error message is displayed. The job logging details are updated with the transaction status updated to Rolled back.

The client workstation or network connectivity fails. Normally a CCITCP2 connection failure error message is displayed. Common causes of communication problems include:
  • faulty or unreliable network cards or firmware

  • faulty or mis-configured hubs/routers

  • faulty PC or server components

  • conflicts between hardware/firmware/operating system configuration

  • Unsuitable or extraneous protocols being used on the network

  • conflicts between SYSPRO client software and other client software

  • end-users terminating the client process abnormally.

The transaction has started, and then a client workstation or the network connectivity fails. SQL Server detects a break in the connection to the database and issues a ROLLBACK immediately.

Any database changes made since the start of the transaction are undone. All locks are released and an appropriate error message is displayed. The job logging transaction status is left as In progress for all open transactions.

The SQL server or the Windows server fails. The transaction has started, and then the SQL server or the Windows server fails. The job logging transaction status is left as In progress for all open transactions.

The next time SQL Server is loaded (and before anyone can log in) any open transactions are rolled back.

The server has a hard disk crash. The transaction has started, and then the hard disk crashed. The job logging transaction status is left as In progress for all open transactions.

If the SYSPRO database resides on a hard disk that crashed, then once a new disk drive has been mounted, the system administrator can do the following:

  • Restore the database from the last backup.

  • Re-apply the transaction log (stored on a separate disk drive) to the database.

SQL Server will then roll back any open transactions that were open at the time of the disk crash.

Transaction Processing and job logging transaction status

SYSPRO makes use of a job logging file to assist in determining SYSPRO system health. When a SYSPRO program starts a transaction, a message is inserted into the job logging file indicating that a transaction has started and stores a short description of the transaction. A transaction status is written to the job logging file:

Status Description
Normal The transaction is completed successfully and the program issues a COMMIT statement. This indicates that the transaction is finished and the transaction status is updated to Normal.
In progress If an implied ROLLBACK statement was issued by SQL Server itself, then the transaction status is left as In progress.
Rolled back The program issued an explicit ROLLBACK statement because of unexpected data. The transaction status is marked as Rolled back and the description of the transaction remains in the job logging file.
Failed This status is relevant only in a C-ISAM environment.

Data locking

Some locking techniques in a SQL Server environment are:

  • Optimistic Concurrency Control

  • Exclusive Locking

Optimistic Concurrency Control

There is a system overhead when using Transaction Processing. This includes row locks on the data affected by the transaction together with the transaction logs that have to be maintained.

However, in many instances it is unlikely that data is being changed by multiple users at the same time. For example, it is unlikely that the A/R Terms Code Maintenance program is used regularly. The terms codes certainly don't change every day. Usually it is one operator's responsibility to ensure that the terms codes are correct, so concurrent updates are extremely unlikely.

Optimistic Concurrency Control is a technique that can be used to avoid the system overhead of Transaction Processing.

Optimistic Concurrency Control makes use of the TimeStamp field defined against each SYSPRO table. This field is incremented by the SQL Server system whenever any data is changed in the database. When a specific row is changed the current value of the TimeStamp automatically replaces the previous value for that row.

Therefore, a program can read and save the current value of the TimeStamp against the item being accessed. When/if the user attempts to save any changes, the program can compare the latest value of the TimeStamp for that row with the saved value. If they are the same then the update can take place (as no other change can have taken place since the original TimeStamp value was read) otherwise the operator is informed that the data cannot be updated due to changes having been applied by another user.

In this case no locks are acquired at all and in the event of a program failure there is no lock to be released.

Many of the SYSPRO browse and maintenance programs take advantage of this technique when an operator changes data. Note that posting programs always use Transaction Processing.

Exclusive Locking

Relatively few SYSPRO programs require exclusive use of a table. Examples include period and month-end programs.

These programs will acquire an exclusive table lock on the tables required before the processing starts. This is done inside a transaction. This prevents others from accessing the tables while the transaction is in progress.

SYSPRO programs that attempt to obtain exclusive table locks first verify whether any logged-in SYSPRO operator is using a program that may attempt to access the tables that need locking. A list of operators is displayed and what they were doing when the verification took place.

The operator can either try again later or may contact the other operators and ask them to exit SYSPRO. You can use the Refresh function to verify how many operators are still using the tables required. If all of them exit then you will be able to continue with the desired function.

Do not use the Logout Users option unless you are sure that the other operators are no longer using the table(s). Your process may fail later if you attempt to log out operators prematurely.

If a program fails that has attracted an exclusive lock, then the transaction is rolled back and the exclusive table locks are released.

Defining the financial year

You need to define the financial year and period for a module before you can continue processing in the module.

  1. Open the Setup Options program.

  2. Indicate the SYSPRO company to review.

  3. Using the Financial Periods category, indicate the required period end dates for each module.

  4. Save the changes.

Correcting the data path file definition

You typically check the data path file definition in a C-ISAM environment when you receive a Control record not yet created message while attempting to post a transaction in one or more of the modules.

  1. Open the Company Maintenance program.

  2. Select the SYSPRO company to check.

  3. Verify the data file path definition from the Database tab.

  4. Use the System Setup program to correct a blank or incorrect file path definition.

Deactivating the calendar control on a client machine

Disabling the SYSPRO Calendar Control may resolve a memory conflict that appears to occur between the Calendar Control and the Word Printing program. This conflict results in an 9-114 Attempts to access items beyond bounds of memory error when printing Word documents in SYSPRO.

  1. Open the SYSPRO Personalize program.

  2. From the Calendar tab, set the Calendar data provider option to None.

Running SYSPRO in a 3-tier environment

Central data storage and speed of access play a huge role in business today.

Data access can become a bottleneck if servers are pushed to the limit. Three important factors must be taken into consideration:

  • Available memory.

  • The number of processors (CPUs).

  • The speed of the processors.

In some instances, a single server may lack the necessary resources to run both SYSPRO and SQL on the same server - hence the need for a 3-tier configuration.

In a 3-tier environment, SYSPRO and SQL (database) reside on separate servers to provide more resources in terms of distributed memory and processor power.

To implement a 3-tier configuration you must address certain security issues. Failure to implement the correct security settings will prevent the BCP process (Bulk Copy Process) from running. The BCP process is used when converting a company from C-ISAM to SQL and when running the Requirements Calculation program.

The following security steps need to be implemented once SYSPRO has been installed:

  1. Create a Domain user account in Active Directory on the SYSPRO application server.

    This account will be used to start the SYSPROIMP7 service on the application server. This must not be a Local user account.

  2. Configure the SYSPROIMP7 service on the application server to log on and start as this Domain user account.

  3. Ensure that this Domain user account has full permissions to the SYSPRO folder and sub folders on the SYSPRO application server.

  4. Create and share a folder on the SQL server.

    This folder is used as the temporary storage area during the BCP process.

  5. Set the security and sharing on this folder to full control for the Domain user account you created on the SYSPRO application folder.

  6. Maintain each SYSPRO company, entering the SQL username and password you want to use for the BCP process. You also need to enter the full path of the shared folder on the SQL server.

    The SQL username must be a member of the Bulkadmin server role (in SQL 2005) or the Bulkinsertadministrator server role (in SQL 2000).

Reporting program errors

When reporting a problem to your distributor or local SYSPRO regional office, please adhere to the following guidelines:

Ensure that you have full details of your system, including the:

  • Licensed company name

  • Operating system and Operating system version

  • Mapped, client/server and/or terminal server environments

  • Version of software (Issue and number of ports)

  • C-ISAM or SQL (version of SQL).

If the problem is specific to a certain program:

  • Check the Release Notes section on the SYSPRO InfoZone for possible program corrections.

  • Record the program name and version (run the program and press Shift+F7).

If an error message is displayed:

  • Record the error number and other details shown (preferably with a screenshot).

  • Determine whether the error is repeatable and what sequence of steps is required to duplicate the problem.

  • Refer to specific guidelines and additional information required for specific error messages in the SYSPRO Error Messages guide.

This will help your distributor and/or local SYSPRO regional office to answer your questions as quickly as possible.

RTS error log (client/server)

If a run time system (RTS) error occurs on a client workstation, an error message is displayed and a log file is generated in the Settings folder on the client. The file is named ADMIN_RTS_ERROR.TXT, where ADMIN refers to the operator code.

The log file includes information from the error message as well as additional information about the environment (e.g. operating system, company, operator role, operator). The information is designed to assist support personnel in diagnosing the problem.

In addition, up to 10 messages are written to the log file indicating the last functions performed in the user interface before the RTS error occurred. These additional messages are output only if the program that caused the RTS error is a user-control program (running from Bin). The additional information is not included for other errors.

If a run time system (RTS) error occurs on the server, then the program that trapped the RTS error generates a log file in the Settings folder on the server. The file is named ADMIN_RTS_ERROR.TXT, where ADMIN refers to the operator code.