# Codes 5xxx

*Advantage Error Guide*

**Note** The Advantage Client Engine code is used by the Advantage server to perform some high level operations. Therefore, it is possible to have 5xxx level errors logged and returned by the server.

## Contents

- [5001 AE_ALLOCATION_FAILED](#5001-ae-allocation-failed)
- [5002 AE_COMM_MISMATCH](#5002-ae-comm-mismatch)
- [5003 AE_DATA_TOO_LONG](#5003-ae-data-too-long)
- [5004 AE_FILE_NOT_FOUND](#5004-ae-file-not-found)
- [5005 AE_INSUFFICIENT_BUFFER](#5005-ae-insufficient-buffer)
- [5006 AE_INVALID_BOOKMARK](#5006-ae-invalid-bookmark)
- [5007 AE_INVALID_CALLBACK](#5007-ae-invalid-callback)
- [5008 AE_INVALID_CENTURY](#5008-ae-invalid-century)
- [5009 AE_INVALID_DATEFORMAT](#5009-ae-invalid-dateformat)
- [5010 AE_INVALID_DECIMALS](#5010-ae-invalid-decimals)
- [5011 AE_INVALID_EXPRESSION](#5011-ae-invalid-expression)
- [5012 AE_INVALID_FIELDDEF](#5012-ae-invalid-fielddef)
- [5013 AE_INVALID_FILTER_OPTION](#5013-ae-invalid-filter-option)
- [5014 AE_INVALID_INDEX_HANDLE](#5014-ae-invalid-index-handle)
- [5015 AE_INVALID_INDEX_NAME](#5015-ae-invalid-index-name)
- [5016 AE_INVALID_INDEX_ORDER_NAME](#5016-ae-invalid-index-order-name)
- [5017 AE_INVALID_INDEX_TYPE](#5017-ae-invalid-index-type)
- [5018 AE_INVALID_HANDLE](#5018-ae-invalid-handle)
- [5019 AE_INVALID_OPTION](#5019-ae-invalid-option)
- [5020 AE_INVALID_PATH](#5020-ae-invalid-path)
- [5021 AE_INVALID_POINTER](#5021-ae-invalid-pointer)
- [5022 AE_INVALID_RECORD_NUMBER](#5022-ae-invalid-record-number)
- [5023 AE_INVALID_TABLE_HANDLE](#5023-ae-invalid-table-handle)
- [5024 AE_INVALID_CONNECTION_HANDLE](#5024-ae-invalid-connection-handle)
- [5025 AE_INVALID_TABLETYPE](#5025-ae-invalid-tabletype)
- [5026 AE_INVALID_WORKAREA](#5026-ae-invalid-workarea)
- [5027 AE_INVALID_CHARSETTYPE](#5027-ae-invalid-charsettype)
- [5028 AE_INVALID_LOCKTYPE](#5028-ae-invalid-locktype)
- [5029 AE_INVALID_RIGHTSOPTION](#5029-ae-invalid-rightsoption)
- [5030 AE_INVALID_FIELDNUMBER](#5030-ae-invalid-fieldnumber)
- [5031 AE_INVALID_KEY_LENGTH](#5031-ae-invalid-key-length)
- [5032 AE_INVALID_FIELDNAME](#5032-ae-invalid-fieldname)
- [5033 AE_NO_DRIVE_CONNECTION](#5033-ae-no-drive-connection)
- [5034 AE_FILE_NOT_ON_SERVER](#5034-ae-file-not-on-server)
- [5035 AE_LOCK_FAILED](#5035-ae-lock-failed)
- [5036 AE_NO_CONNECTION](#5036-ae-no-connection)
- [5037 AE_NO_FILTER](#5037-ae-no-filter)
- [5038 AE_NO_SCOPE](#5038-ae-no-scope)
- [5039 AE_NO_TABLE](#5039-ae-no-table)
- [5040 AE_NO_WORKAREA](#5040-ae-no-workarea)
- [5041 AE_NOT_FOUND](#5041-ae-not-found)
- [5042 AE_NOT_IMPLEMENTED](#5042-ae-not-implemented)
- [5043 AE_MAX_THREADS_EXCEEDED](#5043-ae-max-threads-exceeded)
- [5044 AE_START_THREAD_FAIL](#5044-ae-start-thread-fail)
- [5045 AE_TOO_MANY_INDEXES](#5045-ae-too-many-indexes)
- [5046 AE_TOO_MANY_TAGS](#5046-ae-too-many-tags)
- [5047 AE_TRANS_OUT_OF_SEQUENCE](#5047-ae-trans-out-of-sequence)
- [5048 AE_UNKNOWN_ERRCODE](#5048-ae-unknown-errcode)
- [5049 AE_UNSUPPORTED_LANGUAGE](#5049-ae-unsupported-language)
- [5050 AE_NAME_TOO_LONG](#5050-ae-name-too-long)
- [5051 AE_DUPLICATE_ALIAS](#5051-ae-duplicate-alias)
- [5053 AE_TABLE_CLOSED_IN_TRANSACTION](#5053-ae-table-closed-in-transaction)
- [5054 AE_PERMISSION_DENIED](#5054-ae-permission-denied)
- [5055 AE_STRING_NOT_FOUND](#5055-ae-string-not-found)
- [5056 AE_UNKNOWN_CHAR_SET](#5056-ae-unknown-char-set)
- [5057 AE_INVALID_OEM_CHAR_FILE](#5057-ae-invalid-oem-char-file)
- [5058 AE_INVALID_MEMO_BLOCK_SIZE](#5058-ae-invalid-memo-block-size)
- [5059 AE_NO_FILE_FOUND](#5059-ae-no-file-found)
- [5060 AE_NO_INF_LOCK](#5060-ae-no-inf-lock)
- [5061 AE_INF_FILE_ERROR](#5061-ae-inf-file-error)
- [5062 AE_RECORD_NOT_LOCKED](#5062-ae-record-not-locked)
- [5063 AE_ILLEGAL_COMMAND_DURING_TRANS](#5063-ae-illegal-command-during-trans)
- [5064 AE_TABLE_NOT_SHARED](#5064-ae-table-not-shared)
- [5065 AE_INDEX_ALREADY_OPEN](#5065-ae-index-already-open)
- [5066 AE_INVALID_FIELD_TYPE](#5066-ae-invalid-field-type)
- [5067 AE_TABLE_NOT_EXCLUSIVE](#5067-ae-table-not-exclusive)
- [5068 AE_NO_CURRENT_RECORD](#5068-ae-no-current-record)
- [5069 AE_PRECISION_LOST](#5069-ae-precision-lost)
- [5070 AE_INVALID_DATA_TYPE](#5070-ae-invalid-data-type)
- [5071 AE_DATA_TRUNCATED](#5071-ae-data-truncated)
- [5072 AE_TABLE_READONLY](#5072-ae-table-readonly)
- [5073 AE_INVALID_RECORD_LENGTH](#5073-ae-invalid-record-length)
- [5074 AE_NO_ERROR_MESSAGE](#5074-ae-no-error-message)
- [5075 AE_INDEX_SHARED](#5075-ae-index-shared)
- [5076 AE_INDEX_EXISTS](#5076-ae-index-exists)
- [5077 AE_CYCLIC_RELATION](#5077-ae-cyclic-relation)
- [5078 AE_INVALID_RELATION](#5078-ae-invalid-relation)
- [5079 AE_INVALID_DAY](#5079-ae-invalid-day)
- [5080 AE_INVALID_MONTH](#5080-ae-invalid-month)
- [5081 AE_CORRUPT_TABLE](#5081-ae-corrupt-table)
- [5082 AE_INVALID_BINARY_OFFSET](#5082-ae-invalid-binary-offset)
- [5083 AE_BINARY_FILE_ERROR](#5083-ae-binary-file-error)
- [5084 AE_INVALID_DELETED_BYTE_VALUE](#5084-ae-invalid-deleted-byte-value)
- [5085 AE_NO_PENDING_UPDATE](#5085-ae-no-pending-update)
- [5086 AE_PENDING_UPDATE](#5086-ae-pending-update)
- [5087 AE_TABLE_NOT_LOCKED](#5087-ae-table-not-locked)
- [5088 AE_CORRUPT_INDEX](#5088-ae-corrupt-index)
- [5089 AE_AUTOOPEN_INDEX](#5089-ae-autoopen-index)
- [5090 AE_SAME_TABLE](#5090-ae-same-table)
- [5091 AE_INVALID_IMAGE](#5091-ae-invalid-image)
- [5092 AE_COLLATION_SEQUENCE_MISMATCH](#5092-ae-collation-sequence-mismatch)
- [5093 AE_INVALID_INDEX_ORDER](#5093-ae-invalid-index-order)
- [5094 AE_TABLE_CACHED](#5094-ae-table-cached)
- [5095 AE_INVALID_DATE](#5095-ae-invalid-date)
- [5096 AE_ENCRYPTION_NOT_ENABLED](#5096-ae-encryption-not-enabled)
- [5097 AE_INVALID_PASSWORD](#5097-ae-invalid-password)
- [5098 AE_TABLE_ENCRYPTED](#5098-ae-table-encrypted)
- [5099 AE_SERVER_MISMATCH](#5099-ae-server-mismatch)
- [5100 AE_INVALID_USERNAME](#5100-ae-invalid-username)
- [5101 AE_INVALID_VALUE](#5101-ae-invalid-value)
- [5102 AE_INVALID_CONTINUE](#5102-ae-invalid-continue)
- [5103 AE_UNRECOGNIZED_VERSION](#5103-ae-unrecognized-version)
- [5104 AE_RECORD_ENCRYPTED](#5104-ae-record-encrypted)
- [5105 AE_UNRECOGNIZED_ENCRYPTION](#5105-ae-unrecognized-encryption)
- [5106 AE_INVALID_SQLSTATEMENT_HANDLE](#5106-ae-invalid-sqlstatement-handle)
- [5107 AE_INVALID_SQLCURSOR_HANDLE](#5107-ae-invalid-sqlcursor-handle)
- [5108 AE_NOT_PREPARED](#5108-ae-not-prepared)
- [5109 AE_CURSOR_NOT_CLOSED](#5109-ae-cursor-not-closed)
- [5110 AE_INVALID_SQL_PARAM_NUMBER](#5110-ae-invalid-sql-param-number)
- [5111 AE_INVALID_SQL_PARAM_NAME](#5111-ae-invalid-sql-param-name)
- [5112 AE_INVALID_COLUMN_NUMBER](#5112-ae-invalid-column-number)
- [5113 AE_INVALID_COLUMN_NAME](#5113-ae-invalid-column-name)
- [5114 AE_INVALID_READONLY_OPTION](#5114-ae-invalid-readonly-option)
- [5115 AE_IS_CURSOR_HANDLE](#5115-ae-is-cursor-handle)
- [5116 AE_INDEX_EXPR_NOT_FOUND](#5116-ae-index-expr-not-found)
- [5117 AE_NOT_DML](#5117-ae-not-dml)
- [5118 AE_INVALID_CONSTRAIN_TYPE](#5118-ae-invalid-constrain-type)
- [5119 AE_INVALID_CURSORHANDLE](#5119-ae-invalid-cursorhandle)
- [5120 AE_OBSOLETE_FUNCTION](#5120-ae-obsolete-function)
- [5121 AE_TADSDATASET_GENERAL](#5121-ae-tadsdataset-general)
- [5122 AE_UDF_OVERWROTE_BUFFER](#5122-ae-udf-overwrote-buffer)
- [5123 AE_INDEX_UDF_NOT_SET](#5123-ae-index-udf-not-set)
- [5124 AE_CONCURRENT_PROBLEM](#5124-ae-concurrent-problem)
- [5125 AE_INVALID_DICTIONARY_HANDLE](#5125-ae-invalid-dictionary-handle)
- [5126 AE_INVALID_PROPERTY_ID](#5126-ae-invalid-property-id)
- [5127 AE_INVALID_PROPERTY](#5127-ae-invalid-property)
- [5128 AE_DICTIONARY_ALREADY_EXISTS](#5128-ae-dictionary-already-exists)
- [5129 AE_INVALID_FIND_HANDLE](#5129-ae-invalid-find-handle)
- [5130 AE_DD_REQUEST_NOT_COMPLETED](#5130-ae-dd-request-not-completed)
- [5131 AE_INVALID_OBJECT_ID](#5131-ae-invalid-object-id)
- [5132 AE_INVALID_OBJECT_NAME](#5132-ae-invalid-object-name)
- [5133 AE_INVALID_PROPERTY_LENGTH](#5133-ae-invalid-property-length)
- [5134 AE_INVALID_KEY_OPTIONS](#5134-ae-invalid-key-options)
- [5135 AE_CONSTRAINT_VALIDATION_ERROR](#5135-ae-constraint-validation-error)
- [5136 AE_INVALID_OBJECT_TYPE](#5136-ae-invalid-object-type)
- [5137 AE_NO_OBJECT_FOUND](#5137-ae-no-object-found)
- [5138 AE_PROPERTY_NOT_SET](#5138-ae-property-not-set)
- [5139 AE_NO_PRIMARY_KEY_EXISTS](#5139-ae-no-primary-key-exists)
- [5140 AE_LOCAL_CONN_DISABLED](#5140-ae-local-conn-disabled)
- [5141 AE_RI_RESTRICT](#5141-ae-ri-restrict)
- [5142 AE_RI_CASCADE](#5142-ae-ri-cascade)
- [5143 AE_RI_FAILED](#5143-ae-ri-failed)
- [5144 AE_RI_CORRUPTED](#5144-ae-ri-corrupted)
- [5145 AE_RI_UNDO_FAILED](#5145-ae-ri-undo-failed)
- [5146 AE_RI_RULE_EXISTS](#5146-ae-ri-rule-exists)
- [5147 AE_COLUMN_CANNOT_BE_NULL](#5147-ae-column-cannot-be-null)
- [5148 AE_MIN_CONSTRAINT_VIOLATION](#5148-ae-min-constraint-violation)
- [5149 AE_MAX_CONSTRAINT_VIOLATION](#5149-ae-max-constraint-violation)
- [5150 AE_RECORD_CONSTRAINT_VIOLATION](#5150-ae-record-constraint-violation)
- [5151 AE_CANNOT_DELETE_TEMP_INDEX](#5151-ae-cannot-delete-temp-index)
- [5152 AE_RESTRUCTURE_FAILED](#5152-ae-restructure-failed)
- [5153 AE_INVALID_STATEMENT](#5153-ae-invalid-statement)
- [5154 AE_STORED_PROCEDURE_FAILED](#5154-ae-stored-procedure-failed)
- [5155 AE_INVALID_DICTIONARY_FILE](#5155-ae-invalid-dictionary-file)
- [5156 AE_NOT_MEMBER_OF_GROUP](#5156-ae-not-member-of-group)
- [5157 AE_ALREADY_MEMBER_OF_GROUP](#5157-ae-already-member-of-group)
- [5158 AE_INVALID_OBJECT_RIGHT](#5158-ae-invalid-object-right)
- [5159 AE_CANNOT_OPEN_DATABASE_TABLE](#5159-ae-cannot-open-database-table)
- [5160 AE_INVALID_CONSTRAINT](#5160-ae-invalid-constraint)
- [5161 AE_NOT_ADMINISTRATOR](#5161-ae-not-administrator)
- [5162 AE_NO_TABLE_ENCRYPTION_PASSWORD](#5162-ae-no-table-encryption-password)
- [5163 AE_TABLE_NOT_ENCRYPTED](#5163-ae-table-not-encrypted)
- [5164 AE_INVALID_ENCRYPTION_VERSION](#5164-ae-invalid-encryption-version)
- [5165 AE_NO_STORED_PROC_EXEC_RIGHTS](#5165-ae-no-stored-proc-exec-rights)
- [5166 AE_DD_UNSUPPORTED_DEPLOYMENT](#5166-ae-dd-unsupported-deployment)
- [5168 AE_INFO_AUTO_CREATION_OCCURRED](#5168-ae-info-auto-creation-occurred)
- [5169 AE_INFO_COPY_MADE_BY_CLIENT](#5169-ae-info-copy-made-by-client)
- [5170 AE_DATABASE_REQUIRES_NEW_SERVER](#5170-ae-database-requires-new-server)
- [5171 AE_COLUMN_PERMISSION_DENIED](#5171-ae-column-permission-denied)
- [5172 AE_DATABASE_REQUIRES_NEW_CLIENT](#5172-ae-database-requires-new-client)
- [5173 AE_INVALID_LINK_NUMBER](#5173-ae-invalid-link-number)
- [5174 AE_LINK_ACTIVATION_FAILED](#5174-ae-link-activation-failed)
- [5175 AE_INDEX_COLLATION_MISMATCH](#5175-ae-index-collation-mismatch)
- [5176 AE_ILLEGAL_USER_OPERATION](#5176-ae-illegal-user-operation)
- [5177 AE_TRIGGER_FAILED](#5177-ae-trigger-failed)
- [5178 AE_NO_ASA_FUNCTION_FOUND](#5178-ae-no-asa-function-found)
- [5179 AE_VALUE_OVERFLOW](#5179-ae-value-overflow)
- [5180 AE_UNRECOGNIZED_FTS_VERSION](#5180-ae-unrecognized-fts-version)
- [5181 AE_TRIG_CREATION_FAILED](#5181-ae-trig-creation-failed)
- [5182 AE_MEMTABLE_SIZE_EXCEEDED](#5182-ae-memtable-size-exceeded)
- [5183 AE_OUTDATED_CLIENT_VERSION](#5183-ae-outdated-client-version)
- [5184 AE_FREE_TABLE](#5184-ae-free-table)
- [5185 AE_LOCAL_CONN_RESTRICTED](#5185-ae-local-conn-restricted)
- [5186 AE_OLD_RECORD](#5186-ae-old-record)
- [5188 AE_KEY_EXCEEDS_PAGE_SIZE](#5188-ae-key-exceeds-page-size)
- [5189 AE_TABLE_FOUND](#5189-ae-table-found)
- [5190 AE_TABLE_NOT_FOUND](#5190-ae-table-not-found)
- [5192 AE_INVALID_REPLICATION_IDENT](#5192-ae-invalid-replication-ident)
- [5194 AE_NO_MEMO_FILE](#5194-ae-no-memo-file)
- [5195 AE_SUBSCRIPTION_QUEUE_NOT_EMPTY](#5195-ae-subscription-queue-not-empty)
- [5196 AE_UNABLE_TO_DISABLE_TRIGGERS](#5196-ae-unable-to-disable-triggers)
- [5197 AE_UNABLE_TO_ENABLE_TRIGGERS](#5197-ae-unable-to-enable-triggers)
- [5200 AE_BLURRY_SNAPSHOT](#5200-ae-blurry-snapshot)
- [5201 AE_INVALID_VERTICAL_FILTER](#5201-ae-invalid-vertical-filter)
- [5202 INVALID_USE_OF_HANDLE_IN_AEP](#5202-invalid-use-of-handle-in-aep)
- [5203 AE_COLLATION_NOT_RECOGNIZED](#5203-ae-collation-not-recognized)
- [5204 AE_INVALID_COLLATION](#5204-ae-invalid-collation)
- [5205 AE_NOT_VFP_NULLABLE_FIELD](#5205-ae-not-vfp-nullable-field)
- [5206 AE_NOT_VFP_VARIABLE_FIELD](#5206-ae-not-vfp-variable-field)
- [5208 AE_KEY_CANNOT_BE_NULL](#5208-ae-key-cannot-be-null)
- [5209 AE_COLLATIONS_DO_NOT_MATCH](#5209-ae-collations-do-not-match)
- [5211 AE_UNICODE_CONVERSION](#5211-ae-unicode-conversion)
- [5212 AE_UNICODE_COLLATION](#5212-ae-unicode-collation)
- [error_5213_server_enumeration_error](#5213-server-enumeration)
- [5214 Unable to Load SSL](#5214-unable-to-load-ssl)
- [5215 Unable to Verify Signature](#5215-unable-to-verify-si)
- [5216 Unable to Load SSL Entrypoint](#5216-unable-to-load-ssl)
- [5217 SSL Library Error](#5217-ssl-library-error)
- [5218 Unrecognized Cipher](#5218-unrecognized-cipher)
- [5219 FIPS Mode Violation](#5219-fips-mode-violation)
- [5220 FIPS Required](#5220-fips-required)
- [5221 FIPS Not Allowed](#5221-fips-not-allowed)
- [5222 FIPS Mode Failed](#5222-fips-mode-failed)
- [5223 Password Required](#5223-password-required)
- [error_5226_query_logging_error](#5226-query-logging-error)
- [5400 AE_INTERNAL_ERROR](#5400-ae-internal-error)
- [5401 AE_SOCKET_EXCEPTION](#5401-ae-socket-exception)
- [5402 AE_SOCKET_TIMEOUT](#5402-ae-socket-timeout)
- [5403 AE_INCORRECT_RECV_AMOUNT](#5403-ae-incorrect-recv-amount)
- [5404 AE_INCORRECT_SEND_AMOUNT](#5404-ae-incorrect-send-amount)
- [5405 AE_UNKNOWN_RESPONSE_TYPE](#5405-ae-unknown-response-type)
- [5406 AE_PRNG_NOT_AVAIL](#5406-ae-prng-not-avail)
- [5407 AE_CONNECTION_NOT_OPEN](#5407-ae-connection-not-open)
- [5408 AE_INVALID_CHARSETTYPE](#5408-ae-invalid-charsettype)
- [5409 AE_INVALID_TABLETYPE](#5409-ae-invalid-tabletype)
- [5410 AE_INVALID_LOCKTYPE](#5410-ae-invalid-locktype)
- [5411 AE_INVALID_SERVER_NAME_OR_PORT](#5411-ae-invalid-server-name-or-port)
- [5412 AE_INVALID_CONNECTION_STRING](#5412-ae-invalid-connection-string)
- [5413 AE_ISOLATION_LEVEL_NOT_SUPPORTED](#5413-ae-isolation-level-not-supported)
- [5414 AE_CONNECTION_IS_READONLY](#5414-ae-connection-is-readonly)
- [5415 AE_CANNOT_CHANGE_CATALOG](#5415-ae-cannot-change-catalog)
- [5416 AE_INVALID_RESULT_SET_TYPE](#5416-ae-invalid-result-set-type)
- [5417 AE_INVALID_CONCUR_TYPE](#5417-ae-invalid-concur-type)
- [5418 AE_NOT_SUPPORTED](#5418-ae-not-supported)
- [5419 AE_RESULTSET_EXPECTED](#5419-ae-resultset-expected)
- [5420 AE_RESULTSET_NOTEXPECTED](#5420-ae-resultset-notexpected)
- [5421 AE_INVALID_OPTION](#5421-ae-invalid-option)
- [5422 AE_DD_CONNECTION_EXPECTED](#5422-ae-dd-connection-expected)
- [5423 AE_CONVERSION_ERROR](#5423-ae-conversion-error)
- [5424 AE_BAD_CATALOG](#5424-ae-bad-catalog)
- [5425 AE_INVALID_VALUE](#5425-ae-invalid-value)
- [5426 AE_AFTER_LAST_ROW](#5426-ae-after-last-row)
- [5427 AE_BEFORE_FIRST_ROW](#5427-ae-before-first-row)
- [5428 AE_RESULTSET_CLOSED](#5428-ae-resultset-closed)
- [5429 AE_INVALID_COLUMN_INDEX](#5429-ae-invalid-column-index)
- [5430 AE_INVALID_COLUMN_NAME](#5430-ae-invalid-column-name)
- [5431 AE_ROW_DELETED](#5431-ae-row-deleted)
- [5432 AE_INVALID_ROW_NUMBER](#5432-ae-invalid-row-number)
- [5433 AE_RESULTSET_NOT_UPDATABLE](#5433-ae-resultset-not-updatable)
- [5434 AE_NOT_ON_INSERT_ROW](#5434-ae-not-on-insert-row)
- [5435 AE_ON_INSERT_ROW](#5435-ae-on-insert-row)
- [5436 AE_NO_DELETE_PERMISSION](#5436-ae-no-delete-permission)
- [5437 AE_NO_INSERT_PERMISSION](#5437-ae-no-insert-permission)
- [5438 AE_NO_UPDATE_PERMISSION](#5438-ae-no-update-permission)
- [5439 AE_COLUMN_NOT_NULLABLE](#5439-ae-column-not-nullable)
- [5440 AE_STREAM_IO_ERROR](#5440-ae-stream-io-error)
- [5441 AE_METADATA_CLOSED](#5441-ae-metadata-closed)
- [5442 AE_INVALID_PARAMETER_INDEX](#5442-ae-invalid-parameter-index)
- [5443 AE_UNSUPPORTED_PARAMETER_TYPE](#5443-ae-unsupported-parameter-type)
- [5444 AE_ILLEGAL_OPERATION](#5444-ae-illegal-operation)
- [5445 AE_STATEMENT_CLOSED](#5445-ae-statement-closed)
- [5446 AE_PARAMETER_NOT_SET](#5446-ae-parameter-not-set)
- [5447 AE_UNSUPPORTED_STATEMENT](#5447-ae-unsupported-statement)

## 5001 AE_ALLOCATION_FAILED {#5001-ae-allocation-failed}

A memory allocation failed during the operation. The application may need more memory space.

## 5002 AE_COMM_MISMATCH {#5002-ae-comm-mismatch}

The Advantage Client Engine client version used is not compatible with the version of the Advantage server that was found. Upgrade your Advantage server to a newer version.

## 5003 AE_DATA_TOO_LONG {#5003-ae-data-too-long}

The data supplied was longer than Advantage expected.

## 5004 AE_FILE_NOT_FOUND {#5004-ae-file-not-found}

Either the Advantage Client Engine could not find the specified file, or you do not have sufficient rights to access the file. An incorrect path may cause this error. To identify an incorrect path, change the Advantage Database Server security method to "Ignore Rights" in your application. For example, for the TDataSet Descendant, set the AdsTableOptions' AdsRightsCheck property to False. When restarted, the application will generate a 7008 error, which will be logged in the Advantage error log file. Verify that the path in error log's "filename" column is correct.

**Note** If connecting to a Linux server using a UNC path, you may get this error if you have Advantage Rights Checking enabled. The Linux client cannot resolve the UNC path to check for file existence, so rights checking should be disabled. Also, if you are connecting to any server with a connection path that contains an IP address and/or port number, you will get this error. See Database Security for client-specific directions on enabling/disabling Advantage Rights Checking.

## 5005 AE_INSUFFICIENT_BUFFER {#5005-ae-insufficient-buffer}

The supplied buffer was insufficient for the information returned. The data may have been truncated.

## 5006 AE_INVALID_BOOKMARK {#5006-ae-invalid-bookmark}

The bookmark specified has not been set.

## 5007 AE_INVALID_CALLBACK {#5007-ae-invalid-callback}

The callback function pointer specified was invalid.

## 5008 AE_INVALID_CENTURY {#5008-ae-invalid-century}

The century specified is not valid in a call to set the epoch.

## 5009 AE_INVALID_DATEFORMAT {#5009-ae-invalid-dateformat}

The date format specified was not recognized by Advantage.

## 5010 AE_INVALID_DECIMALS {#5010-ae-invalid-decimals}

An invalid value was specified for the decimal precision.

## 5011 AE_INVALID_EXPRESSION {#5011-ae-invalid-expression}

The expression was invalid.

## 5012 AE_INVALID_FIELDDEF {#5012-ae-invalid-fielddef}

The field definition specified for the table was not valid.

## 5013 AE_INVALID_FILTER_OPTION {#5013-ae-invalid-filter-option}

The record filter option specified is not recognized. Valid options are ADS_RESPECTFILTERS and ADS_IGNOREFILTERS.

## 5014 AE_INVALID_INDEX_HANDLE {#5014-ae-invalid-index-handle}

Advantage does not have an index open with the specified handle.

## 5015 AE_INVALID_INDEX_NAME {#5015-ae-invalid-index-name}

Advantage could not find an index with the specified name.

## 5016 AE_INVALID_INDEX_ORDER_NAME {#5016-ae-invalid-index-order-name}

Advantage could not find an index order with the specified name.

## 5017 AE_INVALID_INDEX_TYPE {#5017-ae-invalid-index-type}

The index type is not valid for the requested operation.

## 5018 AE_INVALID_HANDLE {#5018-ae-invalid-handle}

The handle given was not recognized by Advantage. Verify the specified handle is open/active.

**Note to Advantage TDataSet Descendant users:** If you are writing a multi-threaded application (for example, a Web application) it is possible to get this error if you have not uniquely named each TAdsConnection component. For further explanation and an example see the topic, *Building Multi-Threaded Applications with TAdsQuery and TAdsTable* in the Advantage TDataSet Descendant Help documentation (ADE.HLP). (*Note that each of the Advantage products and their corresponding Help files are installed separately.)*

## 5019 AE_INVALID_OPTION {#5019-ae-invalid-option}

An invalid option was specified.

## 5020 AE_INVALID_PATH {#5020-ae-invalid-path}

***Problem 1:*** The path given was not valid.

***Solution 1:*** Specify a valid path.

***Problem 2:*** This error can occur when trying to CREATE or EXECUTE an Advantage Extended Procedure on a Windows 9x/ME client. The error occurs while attempting to load the DLL that is stored on a Novell server when the name of the DLL file is longer than the 8.3 format.

***Solution 2:*** Change the name of the DLL file to fit the 8.3 format.

***Problem 3:*** This error can occur while trying to CREATE or EXECUTE an Advantage Extended Procedure when ACE32.DLL and AXCWS32.DLL are not in the Advantage Database Server's path.

***Solution 3:*** Put ACE32.DLL and AXCWS32.DLL, and any other needed files, in Advantage Database Server's path.

***Problem 4:*** This error can occur when the connection to the Advantage Data Dictionary was made using a local-drive-letter path and the table or index being added to the dictionary is not on the same drive. Advantage stores the file path of the table relative to the data dictionary file in the data dictionary. If the file path of the table cannot be converted to a relative path, this error is returned.

***Solution 4a:*** Connect to the Advantage Data Dictionary using UNC file path and use UNC to specify the table to be added into the data dictionary.

***Solution 4b:*** Move the table or index to the same hard drive as the Advantage Data Dictionary before adding them to the Advantage Data Dictionary.

## 5021 AE_INVALID_POINTER {#5021-ae-invalid-pointer}

The pointer given was not valid.

## 5022 AE_INVALID_RECORD_NUMBER {#5022-ae-invalid-record-number}

The record number given was not valid.

## 5023 AE_INVALID_TABLE_HANDLE {#5023-ae-invalid-table-handle}

Advantage does not have a table open with the specified handle.

## 5024 AE_INVALID_CONNECTION_HANDLE {#5024-ae-invalid-connection-handle}

Advantage does not have a connection open with the specified handle.

## 5025 AE_INVALID_TABLETYPE {#5025-ae-invalid-tabletype}

An invalid table type was specified. Valid choices are ADS_CDX, ADS_NTX, ADS_VFP or ADS_ADT. The table type must support the memo file type to be opened, if applicable. The ADS_ADT table type supports ADT tables, ADI indexes, and ADM memos. The ADS_CDX and ADS_VFP table types support DBF tables, CDX and IDX indexes, and FPT memos. The ADS_NTX table type supports DBF tables, NTX indexes, and DBT memos.

The ADS_VFP table type is a superset of the ADS_CDX type. If a DBF table contains field types such as Timestamp (DateTime), Currency (Money), VarBinary, etc., you must use table type ADS_VFP to open it.

## 5026 AE_INVALID_WORKAREA {#5026-ae-invalid-workarea}

The work area specified is invalid.

## 5027 AE_INVALID_CHARSETTYPE {#5027-ae-invalid-charsettype}

An invalid character set was specified. Valid types are ADS_OEM and ADS_ANSI.

## 5028 AE_INVALID_LOCKTYPE {#5028-ae-invalid-locktype}

The lock type specified is invalid. Valid choices are ADS_PROPRIETARY_LOCKING or ADS_COMPATIBLE_LOCKING.

## 5029 AE_INVALID_RIGHTSOPTION {#5029-ae-invalid-rightsoption}

An invalid rights option was specified. Valid options are ADS_CHECKRIGHTS or ADS_IGNORERIGHTS.

## 5030 AE_INVALID_FIELDNUMBER {#5030-ae-invalid-fieldnumber}

The field number specified was invalid for the specified table.

## 5031 AE_INVALID_KEY_LENGTH {#5031-ae-invalid-key-length}

This error can occur when one of the following problems exist:

| 1. | The seek key is not the correct length. |
| --- | --- |

| 2. | The evaluated length of an index expression was too long when attempting to create an index. See Advantage Proprietary File Format Specifications or Xbase File Format Specifications for details on the maximum length of an evaluated key expression and maximum length of an evaluated conditional expression. |
| --- | --- |

## 5032 AE_INVALID_FIELDNAME {#5032-ae-invalid-fieldname}

The field name specified is invalid. It is either too long or contains bad characters.

## 5033 AE_NO_DRIVE_CONNECTION {#5033-ae-no-drive-connection}

No connected server was found for the given drive letter. This error may occur if the application's connect path to the database relies on a mapped drive letter. Verify that the workstation has the correct drive mapped to the server. For example, if the application's connect path is H:\data, verify that H:\ is mapped on the workstation. If using the Advantage Internet Server, add the appropriate drive letters to the [DRIVES] section of the ADS.INI file.

## 5034 AE_FILE_NOT_ON_SERVER {#5034-ae-file-not-on-server}

The given file was not found on the specified connection's server.

## 5035 AE_LOCK_FAILED {#5035-ae-lock-failed}

The requested lock could not be granted.

| · | The file or record may be locked by another user. |
| --- | --- |

| · | When using the Advantage proprietary table type (ADTs) and the current record has been deleted. |
| --- | --- |

| · | The record may have been modified within a transaction and the transaction has no been committed or rolled back. See Advantage Transaction Processing System Limitations. |
| --- | --- |

**Linux Note** If using a pre-2.4 kernel, it is possible to get this error because of an incorrect lock offset range. See USE_LOW_LOCK_OFFSETS for more details.

## 5036 AE_NO_CONNECTION {#5036-ae-no-connection}

No connection to Advantage was found.

## 5037 AE_NO_FILTER {#5037-ae-no-filter}

No record filter is set for the specified table.

## 5038 AE_NO_SCOPE {#5038-ae-no-scope}

No scope is set for the specified index.

## 5039 AE_NO_TABLE {#5039-ae-no-table}

The expected table was not found in an internal list.

## 5040 AE_NO_WORKAREA {#5040-ae-no-workarea}

This error is no longer applicable since the 6.1 release of Advantage clients. Prior to the 6.1 release, this error is returned when the maximum number of tables has been opened for this connection. The maximum number of tables open at any one time per connection prior to the 6.1 release is 255.

Try closing a table before opening another, or create another connection and open the tables on that connection.

## 5041 AE_NOT_FOUND {#5041-ae-not-found}

The requested object was not found.

## 5042 AE_NOT_IMPLEMENTED {#5042-ae-not-implemented}

The requested feature has not yet been implemented.

## 5043 AE_MAX_THREADS_EXCEEDED {#5043-ae-max-threads-exceeded}

There are too many threads running concurrently in Advantage.

## 5044 AE_START_THREAD_FAIL {#5044-ae-start-thread-fail}

A thread failed on startup.

## 5045 AE_TOO_MANY_INDEXES {#5045-ae-too-many-indexes}

The maximum number of indexes that Advantage can have open per work area is 15.

## 5046 AE_TOO_MANY_TAGS {#5046-ae-too-many-tags}

The maximum number of tags Advantage supports per compound index is 50.

## 5047 AE_TRANS_OUT_OF_SEQUENCE {#5047-ae-trans-out-of-sequence}

The transaction command was not in a valid sequence.

## 5048 AE_UNKNOWN_ERRCODE {#5048-ae-unknown-errcode}

An unknown Advantage error was generated. Contact Advantage Technical Support for more information.

## 5049 AE_UNSUPPORTED_LANGUAGE {#5049-ae-unsupported-language}

The collation language or locale name requested cannot be supported by Advantage.

## 5050 AE_NAME_TOO_LONG {#5050-ae-name-too-long}

The name given was too long.

## 5051 AE_DUPLICATE_ALIAS {#5051-ae-duplicate-alias}

An object with the same alias is already in use.

## 5053 AE_TABLE_CLOSED_IN_TRANSACTION {#5053-ae-table-closed-in-transaction}

Tables cannot be closed while in a transaction.

## 5054 AE_PERMISSION_DENIED {#5054-ae-permission-denied}

The command cannot be completed with the current user permissions. If using Advantage Data Dictionary, this error is returned if the current connected user was not granted the permission to performed the specific operation. For example, when creating a new user in the database, the user performing the operation must be granted the CREATE permission for the USER object type in the database. See AdsDDGrantPermission in the Advantage Client Engine Help documentation (ACE.hlp or ace.htm) for additional information.

**Note** If using the Advantage TDataSet Descendant TAdsQuery component, verify the RequestLive property is set to True.

## 5055 AE_STRING_NOT_FOUND {#5055-ae-string-not-found}

The error string for the specified error code was not found in string table.

## 5056 AE_UNKNOWN_CHAR_SET {#5056-ae-unknown-char-set}

The specified character set is not known by Advantage.

## 5057 AE_INVALID_OEM_CHAR_FILE {#5057-ae-invalid-oem-char-file}

The file EXTEND.CHR is not valid.

## 5058 AE_INVALID_MEMO_BLOCK_SIZE {#5058-ae-invalid-memo-block-size}

The specified memo block size is invalid.

## 5059 AE_NO_FILE_FOUND {#5059-ae-no-file-found}

No file was found by Advantage.

## 5060 AE_NO_INF_LOCK {#5060-ae-no-inf-lock}

Advantage was unable to lock the INF file.

## 5061 AE_INF_FILE_ERROR {#5061-ae-inf-file-error}

There is an error in the Advantage INF file.

## 5062 AE_RECORD_NOT_LOCKED {#5062-ae-record-not-locked}

An unlock was issued for a record with no current lock.

## 5063 AE_ILLEGAL_COMMAND_DURING_TRANS {#5063-ae-illegal-command-during-trans}

The command specified is illegal within a transaction.

## 5064 AE_TABLE_NOT_SHARED {#5064-ae-table-not-shared}

The table is not opened shared. Thus, the command is invalid.

## 5065 AE_INDEX_ALREADY_OPEN {#5065-ae-index-already-open}

The index is already open. It cannot be opened more than once.

## 5066 AE_INVALID_FIELD_TYPE {#5066-ae-invalid-field-type}

The requested operation is not legal for the given field type.

## 5067 AE_TABLE_NOT_EXCLUSIVE {#5067-ae-table-not-exclusive}

The table is opened shared. It must be opened exclusive for the requested operation.

## 5068 AE_NO_CURRENT_RECORD {#5068-ae-no-current-record}

There is no current record.

## 5069 AE_PRECISION_LOST {#5069-ae-precision-lost}

The operation resulted in loss of precision.

## 5070 AE_INVALID_DATA_TYPE {#5070-ae-invalid-data-type}

The given data type is not valid for the requested operation.

## 5071 AE_DATA_TRUNCATED {#5071-ae-data-truncated}

The data was too long for the destination and was truncated.

## 5072 AE_TABLE_READONLY {#5072-ae-table-readonly}

This action requires read-write access to the table. In versions prior to the 6.1 release, this error is only returned when an update is attempted on a table that is specifically opened for read-only access.

In version 6.1 or greater, if the read/write access to the table is requested at the table open time but the table cannot be opened with read/write access due to OS file access restriction or data dictionary table access restriction, the Advantage Client Engine will default to opening the table with read-only access. No error is returned during the table open in this situation but the 5072 error will be returned when attempting to update the table.

## 5073 AE_INVALID_RECORD_LENGTH {#5073-ae-invalid-record-length}

The given record length was invalid.

## 5074 AE_NO_ERROR_MESSAGE {#5074-ae-no-error-message}

There was no applicable error message for the given error number.

## 5075 AE_INDEX_SHARED {#5075-ae-index-shared}

An operation was requested that requires exclusive access to the index file.

## 5076 AE_INDEX_EXISTS {#5076-ae-index-exists}

An index with the same filename already exists.

## 5077 AE_CYCLIC_RELATION {#5077-ae-cyclic-relation}

A relation cannot result in a cycle with a child descending from itself.

## 5078 AE_INVALID_RELATION {#5078-ae-invalid-relation}

An invalid relation was being evaluated. Contact Advantage Technical Support for more information.

## 5079 AE_INVALID_DAY {#5079-ae-invalid-day}

The day specified is not valid for the given month.

## 5080 AE_INVALID_MONTH {#5080-ae-invalid-month}

The month specified was not valid. It must be between 1 and 12.

## 5081 AE_CORRUPT_TABLE {#5081-ae-corrupt-table}

The table has a corrupt header, or the wrong type of memo file was opened for the table type.

## 5082 AE_INVALID_BINARY_OFFSET {#5082-ae-invalid-binary-offset}

The offset and/or length for the binary data request is not valid.

## 5083 AE_BINARY_FILE_ERROR {#5083-ae-binary-file-error}

An error occurred while reading/writing from/to the file during the binary data transfer.

## 5084 AE_INVALID_DELETED_BYTE_VALUE {#5084-ae-invalid-deleted-byte-value}

Invalid bits are set in the deleted byte.

## 5085 AE_NO_PENDING_UPDATE {#5085-ae-no-pending-update}

There is no update in progress for this record.

## 5086 AE_PENDING_UPDATE {#5086-ae-pending-update}

There is an invalid function with record update pending.

## 5087 AE_TABLE_NOT_LOCKED {#5087-ae-table-not-locked}

There are no locks held on the table.

## 5088 AE_CORRUPT_INDEX {#5088-ae-corrupt-index}

The index is corrupt. This could result from incorrect use of an ANSI or OEM collation language. A reindex is necessary.

## 5089 AE_AUTOOPEN_INDEX {#5089-ae-autoopen-index}

The operation is not valid for the autoopen index.

## 5090 AE_SAME_TABLE {#5090-ae-same-table}

The operation is not valid for handles referring to the same table.

## 5091 AE_INVALID_IMAGE {#5091-ae-invalid-image}

The binary data is not a valid image.

## 5092 AE_COLLATION_SEQUENCE_MISMATCH {#5092-ae-collation-sequence-mismatch}

Different OEM or ANSI collation languages were being used by different connections to the Advantage Database Server and/or Advantage Local Server.

**Avoiding OEM Collation Mismatch Errors**

A single Advantage application can connect to multiple Advantage Database Servers, or one or more Advantage Database Servers and the Advantage Local Server. If such an application is using ANSI or OEM collation with non-USA collation sets, care must be taken to avoid a 5092 Collation Mismatch error. To avoid such an error, make sure the same OEM collation language is selected when installing the Advantage Database Server and the Advantage clients. The OEM collation language selected during an Advantage client install will be placed in the Advantage Local Server configuration file, ADSLOCAL.CFG. Note that when installing the U.S. version of the Advantage Database Server, USA is the only OEM collation language available, so there is no ability to select a different OEM collation language.

**Note** If one of the following conditions is present, no Collation Mismatch errors will occur:

| · | Your application is connecting to a single Advantage Database Server |
| --- | --- |

| · | Your application is connecting to just the Advantage Local Server |
| --- | --- |

| · | USA OEM collation language is always being used. |
| --- | --- |

**Note** If you change your OEM collation language from one language to another, you need to rebuild all of your index files.

**Avoiding ANSI Collation Mismatch Errors**

A single Advantage application can connect to multiple Advantage Database Servers, or one or more Advantage Database Servers and the Advantage Local Server. If such an application is using ANSI or OEM collation with non-USA collation sets, care must be taken to avoid a 5092 Collation Mismatch error. To avoid such an error, make sure the same ANSI collation language is being used with all connections. To ensure the ANSI collation languages are the same, verify one of the following is true:

1) This first option is strongly recommended and is the simpler method to make sure the ANSI collation languages are the same for all connections. Specifically select an ANSI collation language when installing the Advantage Database Server and Advantage clients. Be sure to specify the same ANSI language for all installs. The ANSI collation language selected during an Advantage client install will be placed in the Advantage Local Server configuration file, ADSLOCAL.CFG. If the ANSI language you desire is not shown in the list, the ANSICHR.EXE utility can be used to add an ANSI language to the file containing the available ANSI languages.

2) If you do not wish to use option 1 above, select <CURRENT SYSTEM LANGUAGE> for the ANSI collation language when installing the Advantage Database Server and the Advantage clients. Only select <CURRENT SYSTEM LANGUAGE> if all of the following are True. All computers used for installation of the Advantage Database Server should be running the same Windows operating system. The computer running an application that connects to the Advantage Local Server should also be running this same OS. In addition to the operating systems being the same, all computers should be using the same ANSI collation language (specified via the Regional Settings icon).

**Note** If one of the following conditions is present, no Collation Mismatch errors will occur:

| · | Your application is connecting to a single Advantage Database Server |
| --- | --- |

| · | Your application is connecting to just the Advantage Local Server |
| --- | --- |

| · | USA ANSI collation language is always being used. |
| --- | --- |

**Note** If you change your ANSI collation language from one language to another, you need to rebuild all of your index files.

## 5093 AE_INVALID_INDEX_ORDER {#5093-ae-invalid-index-order}

The index order number requested is not valid.

## 5094 AE_TABLE_CACHED {#5094-ae-table-cached}

The table is closed but is held in cache for quick open.

## 5095 AE_INVALID_DATE {#5095-ae-invalid-date}

The date specified is not valid.

## 5096 AE_ENCRYPTION_NOT_ENABLED {#5096-ae-encryption-not-enabled}

***Problem***: Encryption is not enabled. This error can occur when the requested operation requires a password to be set. Some of the operations that require a password to be set are: encrypting or decrypting records or tables, clearing the password, and appending or modifying records to an encrypted table.

***Problem***: Encryption is not enabled. Detected on Skip. This error can occur while performing a Skip on the index of a table. The table has encrypted records but no password has been set.

***Solution***: Set a password before performing the operation.

## 5097 AE_INVALID_PASSWORD {#5097-ae-invalid-password}

The password given is not valid.

## 5098 AE_TABLE_ENCRYPTED {#5098-ae-table-encrypted}

The table is already encrypted.

## 5099 AE_SERVER_MISMATCH {#5099-ae-server-mismatch}

The connected server does not support the requested operation.

## 5100 AE_INVALID_USERNAME {#5100-ae-invalid-username}

The user name specified is invalid. It is either too long or contains bad characters.

## 5101 AE_INVALID_VALUE {#5101-ae-invalid-value}

The given value was outside the expected range. Please refer to the documentation of the function you were calling for a description of the parameters.

## 5102 AE_INVALID_CONTINUE {#5102-ae-invalid-continue}

AdsLocate was not called prior to calling AdsContinue.

## 5103 AE_UNRECOGNIZED_VERSION {#5103-ae-unrecognized-version}

The table version is not recognized by this release of software. This error may be generated if the table being opened has a version number not recognized by the Advantage Client Engine. A newer version of the client may be required.

## 5104 AE_RECORD_ENCRYPTED {#5104-ae-record-encrypted}

Modifying an encrypted record is not allowed in an ADT unless encryption is enabled.

## 5105 AE_UNRECOGNIZED_ENCRYPTION {#5105-ae-unrecognized-encryption}

The table's encryption version is not supported in this release of Advantage.

## 5106 AE_INVALID_SQLSTATEMENT_HANDLE {#5106-ae-invalid-sqlstatement-handle}

Advantage does not have a statement open with the specified handle.

## 5107 AE_INVALID_SQLCURSOR_HANDLE {#5107-ae-invalid-sqlcursor-handle}

Advantage does not have a cursor open with the specified handle.

## 5108 AE_NOT_PREPARED {#5108-ae-not-prepared}

The statement must be prepared prior to being executed.

## 5109 AE_CURSOR_NOT_CLOSED {#5109-ae-cursor-not-closed}

The cursor from the previous execute must be closed prior to performing this operation.

## 5110 AE_INVALID_SQL_PARAM_NUMBER {#5110-ae-invalid-sql-param-number}

The parameter number specified was invalid for the statement.

## 5111 AE_INVALID_SQL_PARAM_NAME {#5111-ae-invalid-sql-param-name}

The parameter name specified was invalid for the statement.

## 5112 AE_INVALID_COLUMN_NUMBER {#5112-ae-invalid-column-number}

The column number specified was invalid for the cursor.

## 5113 AE_INVALID_COLUMN_NAME {#5113-ae-invalid-column-name}

The column name specified was invalid for the cursor.

## 5114 AE_INVALID_READONLY_OPTION {#5114-ae-invalid-readonly-option}

The statement read-only type specified was invalid. Valid choices are ADS_CURSOR_READONLY and ADS_CURSOR_READWRITE.

## 5115 AE_IS_CURSOR_HANDLE {#5115-ae-is-cursor-handle}

This function does not accept a cursor handle.

## 5116 AE_INDEX_EXPR_NOT_FOUND {#5116-ae-index-expr-not-found}

Advantage could not find an index order with the specified key expression.

## 5117 AE_NOT_DML {#5117-ae-not-dml}

The call to AdsGetRecordCount for an SQL Statement is invalid if the statement is not either an UPDATE, INSERT, DELETE, or MERGE statement.

## 5118 AE_INVALID_CONSTRAIN_TYPE {#5118-ae-invalid-constrain-type}

The statement constrain type specified was invalid. Valid choices are ADS_CONSTRAIN and ADS_NO_CONSTRAIN.

## 5119 AE_INVALID_CURSORHANDLE {#5119-ae-invalid-cursorhandle}

The cursor handle provided was invalid.

## 5120 AE_OBSOLETE_FUNCTION {#5120-ae-obsolete-function}

An obsolete function was called. This function is no longer available.

## 5121 AE_TADSDATASET_GENERAL {#5121-ae-tadsdataset-general}

This is an internal error used in the Advantage TDataSet Descendant client. If you receive this error, check the exception object for a more detailed error description (EException.message).

## 5122 AE_UDF_OVERWROTE_BUFFER {#5122-ae-udf-overwrote-buffer}

The user-defined function wrote outside the bounds of the supplied buffer.

## 5123 AE_INDEX_UDF_NOT_SET {#5123-ae-index-udf-not-set}

An index was opened and used that requires a user-defined function to be registered.

## 5124 AE_CONCURRENT_PROBLEM {#5124-ae-concurrent-problem}

The application deleted an Advantage handle at the same time it attempted to use the handle.

**Note to Advantage TDataSet Descendant users:** If you are writing a multi-threaded application (for example, a Web application) it is possible to get this error if you have not uniquely named each TAdsConnection component. For further explanation and an example see the topic, *Building Multi-Threaded Applications with TAdsQuery and TAdsTable* in the Advantage TDataSet Descendant Help documentation (ADE.HLP). (*Note that each of the Advantage products and their corresponding Help files are installed separately.)*

## 5125 AE_INVALID_DICTIONARY_HANDLE {#5125-ae-invalid-dictionary-handle}

Advantage does not have a data dictionary associated with the specified handle. Either the handle is not a valid connection handle, or the specified handle is not a database connection handle.

## 5126 AE_INVALID_PROPERTY_ID {#5126-ae-invalid-property-id}

The specified property ID is not valid for this function.

## 5127 AE_INVALID_PROPERTY {#5127-ae-invalid-property}

The supplied property is not valid.

## 5128 AE_DICTIONARY_ALREADY_EXISTS {#5128-ae-dictionary-already-exists}

The data dictionary cannot be created because the file already exists.

## 5129 AE_INVALID_FIND_HANDLE {#5129-ae-invalid-find-handle}

The specified find handle is not a valid data dictionary find handle.

## 5130 AE_DD_REQUEST_NOT_COMPLETED {#5130-ae-dd-request-not-completed}

The requested data dictionary operation cannot be completed. The cause for this error may be that there is an unexpected inconsistency in the data dictionary. Use AdsGetLastError for a detailed error message.

## 5131 AE_INVALID_OBJECT_ID {#5131-ae-invalid-object-id}

The specified object ID is not a valid database object ID.

## 5132 AE_INVALID_OBJECT_NAME {#5132-ae-invalid-object-name}

The specified database object name is not valid.

If you are getting this error when attempting to use the Advantage Web Administrator utility to view database and server information, it could be because the dictionary that you are connecting to is not a root dictionary. The web administrator utility uses system procedure requests to retrieve information from the server, and system procedures through the Advantage Web Platform can only be run when connected to the root dictionary. If it is not a root dictionary, the web platform attempts to treat the system procedure name as a table object in the dictionary, which results in a 5132 error.

## 5133 AE_INVALID_PROPERTY_LENGTH {#5133-ae-invalid-property-length}

The supplied buffer is not of the expected size for the specified property.

## 5134 AE_INVALID_KEY_OPTIONS {#5134-ae-invalid-key-options}

The specified index cannot be used as a primary key because the index is conditional or not unique. Note that for ADS_VFP tables, a conditional clause of "!DELETED()" is allowed for primary keys, and this error will not be generated in that case.

## 5135 AE_CONSTRAINT_VALIDATION_ERROR {#5135-ae-constraint-validation-error}

Some records in the table failed to meet the new constraint.

## 5136 AE_INVALID_OBJECT_TYPE {#5136-ae-invalid-object-type}

The requested object type is not valid.

## 5137 AE_NO_OBJECT_FOUND {#5137-ae-no-object-found}

No database object matching the search condition was found in the data dictionary.

## 5138 AE_PROPERTY_NOT_SET {#5138-ae-property-not-set}

A request was made to get a property for an object in an Advantage Data Dictionary, but that property was not set for that object.

## 5139 AE_NO_PRIMARY_KEY_EXISTS {#5139-ae-no-primary-key-exists}

A corresponding primary key value was not found for the foreign key value.

## 5140 AE_LOCAL_CONN_DISABLED {#5140-ae-local-conn-disabled}

Local server connections have been disabled.

## 5141 AE_RI_RESTRICT {#5141-ae-ri-restrict}

***Problem:*** The record update or delete failed because an existing referential integrity rule is set to RESTRICT. The row that failed to update may be a child in a different referential integrity rule that was enforced do to cascades.

***Solution:*** When this error occurs, retrieve the text error message that accompanies the error code. That text will include information about the row and RI rule that caused the failure.

## 5142 AE_RI_CASCADE {#5142-ae-ri-cascade}

***Problem:*** The record update or delete failed because an existing referential integrity rule caused cascaded updates, and subsequent updates failed. The row that failed to update is a child in a different referential integrity rule. The updates produced a foreign key from the data in this row that does not have a corresponding key in the parent table. Note that these RI rules may cause cascaded updates: ADS_DD_RI_CASCADE, ADS_DD_RI_SETNULL, and ADS_DD_RI_SET_DEFAULT.

***Solution:*** When this error occurs, retrieve the text error message that accompanies the error code. That text will include information about the row and RI rule that caused the failure.

## 5143 AE_RI_FAILED {#5143-ae-ri-failed}

***Problem:*** The new referential integrity rule could not be added to the Advantage Data Dictionary.

***Solution:*** When this error occurs, retrieve the text error message that accompanies the error code. That text will include the specific reason that the new rule failed to be added. Some causes are:

| · | The primary key name supplied is not the primary index for the table. |
| --- | --- |

| · | The primary key and foreign key are not the same length. |
| --- | --- |

| · | The primary key and foreign key do not consist of the same number of fields. |
| --- | --- |

| · | A field in the primary key has a different length than the corresponding field in the foreign key. |
| --- | --- |

| · | A field in the primary key has a different type than the corresponding field in the foreign key. |
| --- | --- |

## 5144 AE_RI_CORRUPTED {#5144-ae-ri-corrupted}

***Problem:*** The referential integrity has been corrupted due to a delete operation that failed.

***Solution:*** The current record update was affected by an RI rule. The update caused a cascade to child records. Records were deleted. A failure occurred. All changes were attempted to be undone, but a record could not be deleted. At this point, the integrity of the reference from parent to child is not guaranteed. To fix this problem, delete each RI rule and re-add it. Please report to Advantage Technical Support that this error was returned.

## 5145 AE_RI_UNDO_FAILED {#5145-ae-ri-undo-failed}

***Problem:*** The referential integrity has been corrupted due to a write operation that failed.

***Solution:*** The current record update was affected by an RI rule. The update caused a cascade to child records. Child records were modified. A failure occurred. All changes were attempted to be undone, but a second failure occurred. At this point, the integrity of the reference from parent to child is not guaranteed. To fix this problem, delete each RI rule and re-add it. Please report to Advantage Technical Support that this error was returned.

## 5146 AE_RI_RULE_EXISTS {#5146-ae-ri-rule-exists}

A referential integrity rule exists, making the attempted operation illegal. Remove the referential integrity rule, perform the desired operation, and add the referential integrity rule back to the database.

Note Operations for which this is necessary are prone to integrity problems (AdsZapTable, etc.). When re-creating the referential integrity rule in question, use the "fail table" option and verify the desired rows (if any) are removed.

## 5147 AE_COLUMN_CANNOT_BE_NULL {#5147-ae-column-cannot-be-null}

The column cannot be updated to a NULL value due to a 'not NULL' constraint.

## 5148 AE_MIN_CONSTRAINT_VIOLATION {#5148-ae-min-constraint-violation}

The column cannot be updated to a value less than the minimum constraint value.

## 5149 AE_MAX_CONSTRAINT_VIOLATION {#5149-ae-max-constraint-violation}

The column cannot be updated to a value greater than the maximum constraint value.

## 5150 AE_RECORD_CONSTRAINT_VIOLATION {#5150-ae-record-constraint-violation}

The record cannot be updated because it does not pass the record level constraint.

## 5151 AE_CANNOT_DELETE_TEMP_INDEX {#5151-ae-cannot-delete-temp-index}

Index cannot be deleted from temporary index file. Temporary index files are automatically deleted when the table is closed so there is no need to delete indexes from temporary index files.

## 5152 AE_RESTRUCTURE_FAILED {#5152-ae-restructure-failed}

***Problem:*** The table restructure failed.

***Solution:*** When this error occurs, retrieve the text error message that accompanies the error code. That text will include specifics about the error. Some causes of this problem are:

| · | The table was associated with user defined or custom indexes |
| --- | --- |

| · | A field to be deleted was in an index |
| --- | --- |

| · | The field to be deleted is used in the table validation expression |
| --- | --- |

## 5153 AE_INVALID_STATEMENT {#5153-ae-invalid-statement}

An invalid SQL statement was encountered.

## 5154 AE_STORED_PROCEDURE_FAILED {#5154-ae-stored-procedure-failed}

***Problem:*** Execution of the stored procedure failed.

***Solution:*** When this error occurs, retrieve the text error message that accompanies the error code. That text will include specifics about the error. Some causes of this problem are:

| · | The stored procedure file could not be found |
| --- | --- |

| · | The stored procedure could not be loaded |
| --- | --- |

| · | The stored procedure did not contain the function specified in the stored procedure definition. |
| --- | --- |

## 5155 AE_INVALID_DICTIONARY_FILE {#5155-ae-invalid-dictionary-file}

The data dictionary file is not valid. The specified file may be an older version of an Advantage Data Dictionary file or it may be missing the associated index file.

## 5156 AE_NOT_MEMBER_OF_GROUP {#5156-ae-not-member-of-group}

The user is not a member of the user group. The user may not be removed from a user group since he is not a member of the specified user group.

## 5157 AE_ALREADY_MEMBER_OF_GROUP {#5157-ae-already-member-of-group}

The user is already a member of the user group. The user may not be added to a user group since he is already a member of the specified user group.

## 5158 AE_INVALID_OBJECT_RIGHT {#5158-ae-invalid-object-right}

The rights to be granted are not valid for the specified object. The valid rights for database tables or views are read, write, or inherited rights. The valid rights for stored procedures are execute or inherited rights.

## 5159 AE_CANNOT_OPEN_DATABASE_TABLE {#5159-ae-cannot-open-database-table}

***Problem:*** An error was encountered when trying to open a database table. This error can occur when attempting to open a database table as a free table.

***Solution for Advantage Client Engine API:*** When opening a database table using the Advantage Client Engine API, make sure ADS_DEFAULT is specified as the table type. When opening a free table with the Advantage Client Engine API, the table type must be ADS_ADT, ADS_CDX, ADS_VFP, or ADS_NTX.

***Solution for Advantage TDataSet Descendant:*** When opening a database table using the Advantage TDataSet Descendant, make sure to specify the full path to the Advantage Data Dictionary .ADD file in the TAdsConnection.ConnectPath property (for example, "x:\data\sampledd.add").

***Solution for Advantage OLE DB Provider (for ADO):*** When opening a database table using the Advantage OLE DB Provider (for ADO), make sure to specify the full path to the Advantage Data Dictionary .ADD file for the Data Source key word in the ADO connection string (for example, "Data Source=x:\data\sampledd.add").

***Solution for Advantage ODBC Driver:*** When opening a database table using the Advantage ODBC Driver, make sure to check the "Data Dictionary" check box and to specify the full path to the Advantage Data Dictionary .ADD file for the "Database or Data Dictionary Path" edit in the Data Source Setup Screen (for example, "x:\data\sampledd.add").

## 5160 AE_INVALID_CONSTRAINT {#5160-ae-invalid-constraint}

One of the following conditions is true:

| · | The field-level or record-level constraint is invalid. It is either of the wrong data type or invalid syntax. |
| --- | --- |

| · | Cannot set a default field value to NULL when a field constraint exists that does not allow NULL values to exist in the column. |
| --- | --- |

| · | The default field value must be set to a non-NULL value before setting the field constraint that does not allow NULL values to exist in the column. |
| --- | --- |

| · | An invalid date, time, or timestamp value or syntax was specified for the field constraint. |
| --- | --- |

## 5161 AE_NOT_ADMINISTRATOR {#5161-ae-not-administrator}

***Problem:*** The requested operation requires administrative access to the data dictionary. All operations that modify the data dictionary and some operations that retrieve information from the data dictionary require the user to connect to the database as the administrator. This error is returned when a regular user tries to perform one of those operations.

***Solution:*** Obtain a connection to database as the administrator using "ADSSYS" as the user name.

## 5162 AE_NO_TABLE_ENCRYPTION_PASSWORD {#5162-ae-no-table-encryption-password}

***Problem***:** The current user is trying to encrypt a database table or set the database property to encrypt all tables created or added into the database, but the table encryption password property of the database has not been set.

***Solution***:** Set the table encryption password property (ADS_DD_ENCRYPT_TABLE_PASSWORD) of the database first.

## 5163 AE_TABLE_NOT_ENCRYPTED {#5163-ae-table-not-encrypted}

***Problem***:** The current user is trying to decrypt a database table that has not been encrypted.

***Solution***:** There is no need to decrypt a table that is not encrypted.

## 5164 AE_INVALID_ENCRYPTION_VERSION {#5164-ae-invalid-encryption-version}

***Problem***:** The database table encryption version that is stored in the table header is incorrect.

***Solution***:** The likely cause of this corruption problem is that the database table file has been overwritten by the user. The database should be maintained using the data dictionary management API or the Advantage Data Architect (arc32.exe). Using OS commands or the API to update the file will likely cause corruption.

## 5165 AE_NO_STORED_PROC_EXEC_RIGHTS {#5165-ae-no-stored-proc-exec-rights}

***Problem***:** The connected user does not have sufficient rights to execute the stored procedure.

***Solution:*** Perform the following steps:

| 1. | Connect as a user with proper rights. |
| --- | --- |

| 2. | Grant the user the right to execute the stored procedure. |
| --- | --- |

| 3. | Set the data dictionary to not verify user's rights. |
| --- | --- |

## 5166 AE_DD_UNSUPPORTED_DEPLOYMENT {#5166-ae-dd-unsupported-deployment}

***Problem***:** Advantage version 6.1 does not support dictionary to dictionary deployment. It only supports going from no dictionary to a dictionary.

***Solution:*** Dictionary to dictionary deployment will be supported in a later release.

## 5168 AE_INFO_AUTO_CREATION_OCCURRED {#5168-ae-info-auto-creation-occurred}

This error code is never returned to the client. It will only appear in error logs should a dictionary tables auto-creation property be set to True and the tables file and/or index files not exist and require re-creation.

**Note** This code serves as verification that auto-creation successfully took place. It is a sign that auto-creation is working properly and to list any files that were re-created.

**Note** This code is preceded by several "File Not Found" error codes in the error log (7041 errors). This is normal behavior.

## 5169 AE_INFO_COPY_MADE_BY_CLIENT {#5169-ae-info-copy-made-by-client}

This is an informational error code that can be retrieved by using AdsGetLastError after a call to AdsCopyTable or AdsCopyTableContents. Should this error be retrieved after a call to either of these APIs it does NOT signify that the copy failed. Instead it means that the server could not carry out the copy and the operation had to be scaled back to the client in order to complete. The error string passed to AdsGetLastError will contain specifics as to why the operation had to scale back to the client when AdsGetLastError returns.

## 5170 AE_DATABASE_REQUIRES_NEW_SERVER {#5170-ae-database-requires-new-server}

***Problem:*** The database (i.e., data dictionary) cannot be opened by this version of the Advantage Database Server or Advantage Local Server because some features in the database are not supported.

***Solution:*** Upgrade the Advantage Database Server or Advantage Local Server to the latest product version.

## 5171 AE_COLUMN_PERMISSION_DENIED {#5171-ae-column-permission-denied}

***Problem:*** The requested operation requires access to a column (field) that the user does not have the sufficient permission for.

***Solution:*** Log in to the database as a user that has the appropriate WITH GRANT permissions and grant the proper permission to the user.

## 5172 AE_DATABASE_REQUIRES_NEW_CLIENT {#5172-ae-database-requires-new-client}

***Problem:*** The requested operation cannot be completed because the database contains features that require a newer version of the Advantage client.

***Solution:*** Upgrade the Advantage Client Engine to the latest release.

## 5173 AE_INVALID_LINK_NUMBER {#5173-ae-invalid-link-number}

***Problem:*** An invalid link number is specified in the request for link information.

***Solution:*** Verify that the correct link number is supplied.

## 5174 AE_LINK_ACTIVATION_FAILED {#5174-ae-link-activation-failed}

***Problem:*** Advantage failed to activate the specified link.

***Solution:*** Check the error message for the reason of the failure and fix the problem accordingly.

## 5175 AE_INDEX_COLLATION_MISMATCH {#5175-ae-index-collation-mismatch}

***Problem:*** Beginning with version 6.2, Advantage stores a collation sequence identifier in the header of Advantage proprietary index (.ADI) files when it creates a new index file. When opening the index again, it can use that identifier to determine whether the current collation sequence matches the one used to create the index. The 5175 error code is returned when Advantage detects a mismatch between the collation sequence used to create the index file and the current collation sequence.

The TAdsTable property IndexCollationMismatch and table open options available in the AdsOpenTable API allow applications to control what action Advantage takes when it encounters a collation mismatch when opening tables directly. If the application chooses to have Advantage rebuild the indexes automatically (icmReindex or ADS_REINDEX_ON_COLLATION_MISMATCH), it is still possible that this error will be returned if Advantage is not able to acquire the necessary locks to rebuild the index. Normally this would only happen when using Advantage Local Server when different clients are using different collation sequences (an undesirable situation).

***Solution:*** Make sure no applications have the table open. Then open the table with Advantage Data Architect, which will detect the collation mismatch and provide the opportunity to rebuild the index file.

It is possible to build the automatic reindex functionality into your own application either by using the option to ignore the collation error (icmIgnore or ADS_IGNORE_COLLATION_MISMATCH) and rebuild the indexes with a call to AdsReindex or to use the rebuild option (icmReindex or ADS_REINDEX_ON_COLLATION_MISMATCH) when opening the table. It is not possible to specify these options for tables opened through SQL statements.

Advantage will always attempt to reindex the data dictionary index (.AI) file if it detects a collation mismatch. If for some reason, it is unable to rebuild the index file, it will return the 5175 error. If this happens, you can simply delete the .AI file; Advantage rebuilds the .AI file if it does not find it when opening the associated Advantage Data Dictionary (.ADD) file.

To permanently rid your applications of 5175 errors, make sure all servers running the Advantage Database Server, and any client applications accessing the database via the Advantage Local Server, are using the identical ANSI collation sequence specified in the Advantage configuration. The steps specified in the Avoiding ANSI Collation Mismatch Errors topic to avoid 5092 errors are the same steps that should be applied to avoid 5175 errors. Namely, the same ANSI language should be specifically selected from the list of available collation languages when installing the Advantage Database Server, and this same language should be specified for the ANSI_CHAR_SET keyword in the Advantage Local Server configuration file, adslocal.cfg, on all client workstations using the Advantage Local Server.

## 5176 AE_ILLEGAL_USER_OPERATION {#5176-ae-illegal-user-operation}

***Problem:*** An operation was performed that is not legal to perform with the current user's privileges. Most often this error is returned when a user attempts to change another users password, Internet access property, or logins disabled property.

***Solution:*** Log in as the administrator (ADSSYS) or as the specified user to perform the operation. This error code has the same meaning as the 5054 AE_PERMISSION_DENIED error.

## 5177 AE_TRIGGER_FAILED {#5177-ae-trigger-failed}

Trigger execution failed. Trigger execution failed either because of an Advantage error, or because the trigger code itself reported an error via the __error table. The error will be accompanied by a second error string, which will describe the exact problem encountered.

## 5178 AE_NO_ASA_FUNCTION_FOUND {#5178-ae-no-asa-function-found}

This is an internal error. If you encounter this error please contact Advantage Technical Support.

## 5179 AE_VALUE_OVERFLOW {#5179-ae-value-overflow}

***Problem***: The value cannot be stored in the designated column. For example: this error will be returned when attempting to store into an Integer column a numeric value that is outside the range -2,147,483,647 to 2,147,483,647. See ADT Field Types and Specification.

***Solution***: Ensure the numeric value to be stored in a column is within the supported range or restructure (i.e., ALTER) the table to ensure that the column can stored the expected values.

## 5180 AE_UNRECOGNIZED_FTS_VERSION {#5180-ae-unrecognized-fts-version}

***Problem:*** The full text search index version is not recognized by this release of the software.

***Solution:*** Make sure the version of Advantage you are using is the same as or greater than the version that created the full text search index.

## 5181 AE_TRIG_CREATION_FAILED {#5181-ae-trig-creation-failed}

***Problem***: The creation of a trigger failed.

The error will be accompanied by a second error string, which will describe the exact problem encountered.

## 5182 AE_MEMTABLE_SIZE_EXCEEDED {#5182-ae-memtable-size-exceeded}

The size of an in-memory table has exceeded the preset maximum value. Some in-memory tables (such as trigger __old, __new, and __error tables) are only configured to hold a single record.

## 5183 AE_OUTDATED_CLIENT_VERSION {#5183-ae-outdated-client-version}

The Advantage client version is too old to perform this task with the current ADS server.

## 5184 AE_FREE_TABLE {#5184-ae-free-table}

This operation is only allowed on tables belonging to a data dictionary.

## 5185 AE_LOCAL_CONN_RESTRICTED {#5185-ae-local-conn-restricted}

Advantage Local Server connections are restricted when used from a web server, an application server, a terminal server, or any other type of middleware or server product used to access data on behalf of remote computers.

If you receive this error, it is because your application attempted to make a local server connection from one of these restricted environments. Please review the Advantage Local Server Connections portion of the end user license agreement (license.txt, Section B) for details.

It is possible to get this error when you are not violating the license agreement. If, for example, your web application accesses local data that it uses internally, but is never transferred to a client, that usage is legal.

If you are using the Advantage Local Server to access data in this manner (or some similar manner where no data is used or seen by a client), and you receive this error code, you can add the following line to the ads.ini file under the [SETTINGS] section to disable this check:

MTIER_LOCAL_CONNECTIONS=1

**Note** Disabling this check when in violation of permitted connection scenarios set forth in the end user license agreement is a material breach of the license agreement and places you liable to provide appropriate consideration and remedy to iAnywhere.

**Note** The ads.ini file can be placed in the same directory as the application, in order to modify this behavior on an application-specific basis.

The specific text in the Advantage end user license agreement regarding use of Advantage Local Server and middleware connections (Section B) is as follows. Refer to the Advantage license agreement, license.txt, for the complete EULA.

If an application using this SOFTWARE PRODUCT is distributed to work without the Advantage Database Server (i.e., it uses the Advantage Local Server to access data), the application must act as a "client" that directly accesses and uses the data. To be specific, only computers that have the Advantage Local Server DLL loaded into memory can have access to the data that is obtained by that Advantage Local Server DLL. The application cannot act as "middleware" or as a "server" by having the data forwarded by any means to a separate computer. In other words, it is illegal to use the Advantage Local Server with a web server, an application server, a terminal server, or any other type of middleware or server product to access data on behalf of remote computers. An Advantage Database Server (a.k.a., remote server) product must be purchased and used to allow this SOFTWARE PRODUCT to access data on behalf of applications running on remote computers.

## 5186 AE_OLD_RECORD {#5186-ae-old-record}

This error is returned if using optimistic record locking and the record in question was changed by some other user between the time the record was put into edit state, and the time a post was attempted.

## 5188 AE_KEY_EXCEEDS_PAGE_SIZE {#5188-ae-key-exceeds-page-size}

The index key size is too large for the page file size. If you are creating a new index order in an existing index file, Advantage will attempt to automatically rebuild the index with a large enough page size for the new index being built. If it cannot do this, it will be necessary to reindex the file with a larger page size. If you are creating an index order in a new index file, then you should either specify a larger page size or allow Advantage to compute the default page size.

See Index Key Size and Page Size Relationships for the specific equations.

## 5189 AE_TABLE_FOUND {#5189-ae-table-found}

When creating a new table, an existing table with the same name is found. This error is returned when creating a private temporary table on a connection and there is already a temporary table with the same name on the connection.

## 5190 AE_TABLE_NOT_FOUND {#5190-ae-table-not-found}

The specified table cannot be found. This error is returned when trying to open a private temporary table on a connection and the temporary table does not exist.

## 5192 AE_INVALID_REPLICATION_IDENT {#5192-ae-invalid-replication-ident}

**Problem**: The columns given for identifying a row for a replication update are not valid.

**Solution**: Ensure that the identification column list is not empty, contains fields that are in the table, and does not consist of memo and BLOB fields.

## 5194 AE_NO_MEMO_FILE {#5194-ae-no-memo-file}

The requested operation is only valid on tables or cursors that have a memo file.

## 5195 AE_SUBSCRIPTION_QUEUE_NOT_EMPTY {#5195-ae-subscription-queue-not-empty}

**Problem**: An attempt was made to delete or rename a replication subscription definition while the replication queue was not empty.

**Solution**: The replication queue must be empty in order to delete the subscription object from the data dictionary or to rename the replication queue. You must either wait for replication to complete, or you can physically delete the table from the hard drive if it is not currently open by Advantage. If this is not desirable to wait for replication to complete, you can open the replication queue and empty the table of records (the table name is the subscription name prefixed by two underscores). Note that if you perform either of these actions, the items that were in the queue will not be replicated.

**Problem**: An attempt was made to delete a table from a publication while the table had entries in a replication queue associated with that publication. This can happen if an attempt is made to remove the table from the dictionary.

**Solution**: The error text should indicate which replication queue contained entries for the table. You must wait for replication to complete for the pending entries. Verify that the replication target is online and that the subscription is not paused.

## 5196 AE_UNABLE_TO_DISABLE_TRIGGERS {#5196-ae-unable-to-disable-triggers}

Disabling a trigger when the table containing the trigger has triggers disabled is not allowed. Likewise, disabling all triggers of a table when the entire database has triggers disabled is not allowed. Also, disabling triggers from within an Advantage Extended Procedure (AEP) or trigger is not allowed.

## 5197 AE_UNABLE_TO_ENABLE_TRIGGERS {#5197-ae-unable-to-enable-triggers}

Enabling a trigger when the table containing the trigger has triggers disabled is not allowed. Likewise, enabling all triggers of a table when the entire database has triggers disabled is not allowed. Also, Enabling triggers from within an Advantage Extended Procedure (AEP) or trigger is not allowed.

## 5200 AE_BLURRY_SNAPSHOT {#5200-ae-blurry-snapshot}

***Problem***: The server was unable to stage a backup and get a logic snapshot. The backup continued, but with the chance that other worker threads could have changed data and made this a logically inconsistent backup.

***Solution***: To resolve this issue, run the backup again.

If the error persists, contact Advantage Technical Services. Configuration values exist that can be used to extend the period of time the server will wait before continuing.

## 5201 AE_INVALID_VERTICAL_FILTER {#5201-ae-invalid-vertical-filter}

***Problem***: The columns given for the vertical filter are not valid.

***Solution***: Verify that the fields are in the table and that the names are delimited with commas or semicolons. In addition, verify there are no spaces between the names.

## 5202 INVALID_USE_OF_HANDLE_IN_AEP {#5202-invalid-use-of-handle-in-aep}

***Problem:*** The server detected that an invalid handle is being used by Advantage Extended Procedure. The stored procedure is attempting to use a table, cursor or SQL statement handle that was created on a different connection other than the connection executing the stored procedure. A sample scenario that causes this error is: Proc1() is executed on Connection1 and it opens Table1 as hTable. Proc2() is then executed on Connection2 and it tries to do a GoTop on hTable. The 5202 error will be returned because it is illegal for a procedure executing on Connection2 to use a handle created on Connection1.

***Solution:*** Modify the stored procedure to ensure that it only uses handles created on the same connection. Normally, handles created in stored procedure should be closed before return. However, if the handle must be retained and used by other stored procedures, then those stored procedures must only use the handles that are created on the same connection.

## 5203 AE_COLLATION_NOT_RECOGNIZED {#5203-ae-collation-not-recognized}

***Problem***: The application attempted to load a dynamic collation with a version that is not recognized by the client.

***Solution***: Update the client version to match the server version in order to use the specified collation.

## 5204 AE_INVALID_COLLATION {#5204-ae-invalid-collation}

***Problem***: The application attempted to load a dynamic collation that has invalid information associated with it.

***Solution***: This problem may be that the adscollate.adt table has been corrupted. Replace adscollate.adt and adscollate.adm with valid copies of the files.

## 5205 AE_NOT_VFP_NULLABLE_FIELD {#5205-ae-not-vfp-nullable-field}

***Problem***: An operation was performed that requires a nullable field. For example, this error can occur if AdsSetNull is called for a field that cannot be set to NULL. This error may also occur when executing an UPDATE or INSERT statement with a NUL parameter that results in an attempt to set a Visual FoxPro field to NULL. For example, using the Advantage Client Engine API AdsSetEmpty on an SQL parameter will cause a NULL value to be used.

***Solution***: Verify that the application is specifying the correct field. If necessary, restructure the Visual FoxPro table so that the field can be set to NULL.

## 5206 AE_NOT_VFP_VARIABLE_FIELD {#5206-ae-not-vfp-variable-field}

***Problem***: An operation was performed that requires a Visual FoxPro (VFP) variable length field type.

***Solution***: Verify that the application is specifying the correct field. The field type must be ADS_VARCHAR_FOX or ADS_VARBINARY_FOX.

## 5208 AE_KEY_CANNOT_BE_NULL {#5208-ae-key-cannot-be-null}

***Problem***: A field value was modified such that it resulted in a NULL key value, but the index does not allow NULL values. This can happen with candidate indexes created on Visual FoxPro tables.

***Solution***: Change the data so that it does not result in a NULL key value or cancel the update.

## 5209 AE_COLLATIONS_DO_NOT_MATCH {#5209-ae-collations-do-not-match}

***Problem***: A table was opened that has one or more indexes built with collations that do not match the currently specified collation.

***Solution***: The purpose of this error is to raise visibility to the potential optimization problems that can occur when dynamic collations are used. For example, if the static OEM collation is currently being used and a table has an index built using MACHINE_VFP_BIN_895, then this error will be generated when the table is opened. This can be avoided by specifying the appropriate dynamic collation for the table or SQL statement.

If an application needs to use multiple collations concurrently on a single table, this error can be turned off with the sp_AllowMultipleCollations system procedure.

## 5211 AE_UNICODE_CONVERSION {#5211-ae-unicode-conversion}

***Problem:*** There was an error when attempting to convert a Unicode character string into ANSI/OEM code page string, or vice versa.

***Solution:*** When this error occurs, retrieve the text error message that accompanies the error. Some causes of this problem are:

| · | When trying to store Unicode character data into non-Unicode column, some Unicode characters cannot be converted into the ANSI/OEM code page characters. |
| --- | --- |

| · | An invalid code page is specified when trying to convert Unicode character data into ANSI/OEM code page character. A possible cause for this situation is that an older version of the adscollate.adt is loaded by the server. |
| --- | --- |

## 5212 AE_UNICODE_COLLATION {#5212-ae-unicode-collation}

***Problem:*** There was an error with Unicode collation.

***Solution:*** When this error occurs, retrieve the text error message that accompanies the error. A cause of this problem is that the index is using an unrecognized Unicode collation.

## error_5213_server_enumeration_error {#5213-server-enumeration}

***Problem:*** An error occurred while trying to discover the available instances of Advantage Database Server on the network.

***Solution:*** The text associated with the error may have additional details. This error typically indicates that there was a basic failure at the socket layer that occurred while attempting to send multicast packets to remote servers. If the error does indicate a socket error, it may indicate that there is a networking problem on the local machine.

## 5214 Unable to Load SSL {#5214-unable-to-load-ssl}

***Problem:*** The Advantage client was not able to load the OpenSSL libraries. In order to use AES encryption or TLS communications, you must have the FIPS Encryption Security Option available.

***Solution:*** If the libraries are available, verify that they are in a path location that the client application can access.

## 5215 Unable to Verify Signature {#5215-unable-to-verify-si}

***Problem:*** The Advantage Client Engine was not able to verify the digital signature on one of the OpenSSL libraries.

***Solution:*** Verify that the libraries the application has access to are the same ones from the FIPS Encryption Security Option.

## 5216 Unable to Load SSL Entrypoint {#5216-unable-to-load-ssl}

***Problem:*** Advantage Database Server was not able to load one of the entrypoints from the OpenSSL libraries. This may mean that the wrong version of the library was loaded.

***Solution:*** In order to use AES encryption or TLS communications, you must have the FIPS Encryption Security Option available. If the libraries are available, verify that they are in a path location that the application can access.

## 5217 SSL Library Error {#5217-ssl-library-error}

***Problem:*** A general unknown error occurred in the OpenSSL library.

***Solution:*** The error text may contain more information with additional error numbers. Refer to the [OpenSSL error information](openssl-errors.md).

## 5218 Unrecognized Cipher {#5218-unrecognized-cipher}

***Problem:*** One of the given TLS ciphers was not supported. The supported values are AES128-SHA, AES256-SHA, and RC4-MD5.

***Solution:*** Verify that the TLSCiphers connection string option is correct.

## 5219 FIPS Mode Violation {#5219-fips-mode-violation}

***Problem:*** The current request could not be completed because Advantage is running in FIPS mode and the request required use of cryptography that is not approved for FIPS usage.

***Solution:*** If you are trying to open a dictionary or a table that is not using AES encryption while the server is in FIPS mode, the operation cannot be completed. The system procedure sp_SetDDEncryptionType can be used to change a dictionary to use AES encryption. Tables can be converted to AES encryption with the system procedure sp_EncryptTable. In order to perform the conversion, it is necessary to use clients and servers that are not running in FIPS mode.

## 5220 FIPS Required {#5220-fips-required}

***Problem:*** An attempt by a client not in FIPS mode was made to connect to Advantage Database Server that was in FIPS mode.

***Solution:*** The client FIPS setting must match that of the server.

## 5221 FIPS Not Allowed {#5221-fips-not-allowed}

***Problem:*** An attempt by a client in FIPS mode was made to connect to Advantage Database Server that was not in FIPS mode.

***Solution:*** The client FIPS setting must match that of the server.

## 5222 FIPS Mode Failed {#5222-fips-mode-failed}

***Problem:*** The Advantage client was not able to enable FIPS mode when starting up.

***Solution:*** If FIPS mode is not desired, verify that the FIPS connection option is not specified. If FIPS mode is desired, the error text associated with this error should contain addition information on identifying the problem. The internal FIPS mode verification performed at startup may have failed.

## 5223 Password Required {#5223-password-required}

***Problem:*** The data dictionary could not be created because a dictionary password was not provided.

***Solution:*** Verify that the dictionary password is provided. See the DDPassword connection option if using the API or via the CREATE DATABASE syntax if using SQL.

## error_5226_query_logging_error {#5226-query-logging-error}

An operation involving query logging failed. The error text associated with this error should contain additional information on identifying the problem.

***Problem:*** Query Logging is already enabled on this database.

***Solution:*** Query logging can only be enabled once per dictionary or once for all free table connections. Details regarding the running query log job can be found using the sp_ViewQueryLogging system stored procedure.

***Problem:*** Schema is not compatible with the current query logging table.

***Solution:*** If using an existing query logging table, ensure the schema of the table matches the schema required by query logging. Note, the schema may change between major versions of Advantage.

***Problem:*** Query Logging is not enabled on this database.

***Solution:*** Ensure that query logging is enabled prior to calling the sp_GetQueryLoggingResults system procedure.

## 5400 AE_INTERNAL_ERROR {#5400-ae-internal-error}

This error is an Advantage JDBC Driver internal error. Please send a small re-creation to Advantage Technical Support demonstrating the problem so that Advantage R&D can fix the issue.

## 5401 AE_SOCKET_EXCEPTION {#5401-ae-socket-exception}

General socket failure. Advantage JDBC Driver caught an exception while communicating with TCP/IP sockets. The exception's message should have more information about the failure.

## 5402 AE_SOCKET_TIMEOUT {#5402-ae-socket-timeout}

Timeout expired. Advantage JDBC Driver caught an InterruptedIOException while receiving a reply from the server. The exception's message should have more information about the failure.

## 5403 AE_INCORRECT_RECV_AMOUNT {#5403-ae-incorrect-recv-amount}

Unexpected data from server. It indicates a possible internal problem in Advantage JDBC Driver. Please send a small re-creation to Advantage Technical Support demonstrating the problem so that Advantage R&D can fix the issue.

## 5404 AE_INCORRECT_SEND_AMOUNT {#5404-ae-incorrect-send-amount}

Unexpected data sent to server. It indicates a possible internal problem in Advantage JDBC Driver. Please send a small re-creation to Advantage Technical Support demonstrating the problem so that Advantage R&D can fix the issue.

## 5405 AE_UNKNOWN_RESPONSE_TYPE {#5405-ae-unknown-response-type}

Unexpected response from server. It indicates a possible internal problem in Advantage JDBC Driver. Please send a small re-creation to Advantage Technical Support demonstrating the problem so that Advantage R&D can fix the issue.

## 5406 AE_PRNG_NOT_AVAIL {#5406-ae-prng-not-avail}

Psudo-random number generator does not exist.

## 5407 AE_CONNECTION_NOT_OPEN {#5407-ae-connection-not-open}

Connection is not open. Make sure that the methods in the Connection object is not called after the connection is closed.

## 5408 AE_INVALID_CHARSETTYPE {#5408-ae-invalid-charsettype}

Invalid character set type was specified in the connection string. The valid values for the CharType property are "ansi" or "oem".

## 5409 AE_INVALID_TABLETYPE {#5409-ae-invalid-tabletype}

Invalid table type was specified in the connection string. The valid values for the TableType property are "adt", "cdx", "vfp" or "ntx".

## 5410 AE_INVALID_LOCKTYPE {#5410-ae-invalid-locktype}

Invalid lock type was specified in the connection string. The valid values for the LockType property are "proprietary" or "compatible".

## 5411 AE_INVALID_SERVER_NAME_OR_PORT {#5411-ae-invalid-server-name-or-port}

The server name or port number specified in the connection string is not valid.

## 5412 AE_INVALID_CONNECTION_STRING {#5412-ae-invalid-connection-string}

The connection URL is not valid. It may contain properties not recognized by the Advantage JDBC Driver or it may be malformed.

## 5413 AE_ISOLATION_LEVEL_NOT_SUPPORTED {#5413-ae-isolation-level-not-supported}

Transaction isolation level not supported.

## 5414 AE_CONNECTION_IS_READONLY {#5414-ae-connection-is-readonly}

Connection is read only. executeUpdate cannot be executed on statements created on a readonly connection.

## 5415 AE_CANNOT_CHANGE_CATALOG {#5415-ae-cannot-change-catalog}

Cannot change catalog.

## 5416 AE_INVALID_RESULT_SET_TYPE {#5416-ae-invalid-result-set-type}

Invalid result set type.

## 5417 AE_INVALID_CONCUR_TYPE {#5417-ae-invalid-concur-type}

Invalid concurrency type.

## 5418 AE_NOT_SUPPORTED {#5418-ae-not-supported}

The requested feature is not supported by this release of the Advantage JDBC Driver or the Advantage Database Server.

## 5419 AE_RESULTSET_EXPECTED {#5419-ae-resultset-expected}

Query returned result set.

## 5420 AE_RESULTSET_NOTEXPECTED {#5420-ae-resultset-notexpected}

Query did not return result set.

## 5421 AE_INVALID_OPTION {#5421-ae-invalid-option}

Invalid options specified.

## 5422 AE_DD_CONNECTION_EXPECTED {#5422-ae-dd-connection-expected}

Data Dictionary connection was expected but only free connection was obtained.

## 5423 AE_CONVERSION_ERROR {#5423-ae-conversion-error}

Conversion error. Use the getMessage() method of the exception to get details.

## 5424 AE_BAD_CATALOG {#5424-ae-bad-catalog}

The catalog is not valid path.

## 5425 AE_INVALID_VALUE {#5425-ae-invalid-value}

Invalid value for the column.

## 5426 AE_AFTER_LAST_ROW {#5426-ae-after-last-row}

Result set is after last row.

## 5427 AE_BEFORE_FIRST_ROW {#5427-ae-before-first-row}

Result set is before first row.

## 5428 AE_RESULTSET_CLOSED {#5428-ae-resultset-closed}

Operation not allowed on a closed result set.

## 5429 AE_INVALID_COLUMN_INDEX {#5429-ae-invalid-column-index}

The specified column index is not valid.

## 5430 AE_INVALID_COLUMN_NAME {#5430-ae-invalid-column-name}

The specified column name is not valid.

## 5431 AE_ROW_DELETED {#5431-ae-row-deleted}

The current row is deleted.

## 5432 AE_INVALID_ROW_NUMBER {#5432-ae-invalid-row-number}

The specified row number is not valid.

## 5433 AE_RESULTSET_NOT_UPDATABLE {#5433-ae-resultset-not-updatable}

The result set is not updateable.

## 5434 AE_NOT_ON_INSERT_ROW {#5434-ae-not-on-insert-row}

The result set is not on the insert row.

## 5435 AE_ON_INSERT_ROW {#5435-ae-on-insert-row}

The result set is on the insert row.

## 5436 AE_NO_DELETE_PERMISSION {#5436-ae-no-delete-permission}

The delete permission is not granted to the user on this result set.

## 5437 AE_NO_INSERT_PERMISSION {#5437-ae-no-insert-permission}

The insert permission is not granted to the user on the result set or the column in the result set.

## 5438 AE_NO_UPDATE_PERMISSION {#5438-ae-no-update-permission}

The update permission is not granted to the user on the result set or the column in the result set.

## 5439 AE_COLUMN_NOT_NULLABLE {#5439-ae-column-not-nullable}

The column cannot be null.

## 5440 AE_STREAM_IO_ERROR {#5440-ae-stream-io-error}

Error reading or writing to the IO stream.

## 5441 AE_METADATA_CLOSED {#5441-ae-metadata-closed}

The metadata cannot be accessed because it has been closed.

## 5442 AE_INVALID_PARAMETER_INDEX {#5442-ae-invalid-parameter-index}

The index specified for the parameter is not valid.

## 5443 AE_UNSUPPORTED_PARAMETER_TYPE {#5443-ae-unsupported-parameter-type}

The data type is not supported for parameters.

## 5444 AE_ILLEGAL_OPERATION {#5444-ae-illegal-operation}

The operation is not legal in current state.

## 5445 AE_STATEMENT_CLOSED {#5445-ae-statement-closed}

The statement is closed.

## 5446 AE_PARAMETER_NOT_SET {#5446-ae-parameter-not-set}

A required parameter value is not set.

## 5447 AE_UNSUPPORTED_STATEMENT {#5447-ae-unsupported-statement}

The statement is not supported.

**Possible cause for this error are:**

| 1. | A null or empty string is specified as the SQL statement. |
| --- | --- |

| 2. | A statement given to the ADSCallableStatement object is not in the correct format. |
| --- | --- |

*[PO]: Purchase Order  
*[AZA]: local folder
*[(PO]: Purchase Order  
*[RQ]: Requisition  
*[(RQ]: Requisition  
*[RfQ]: Request for Quotation  
*[(RfQ]: Request for Quotation  
*[SO]: Service Order  
*[(SO]: Service Order  
*[SQ]: Service Requisition  
*[(SQ]: Service Requisition  
*[SRfQ]: Service Request for Quotation  
*[OoB]: Open on Board  
*[(OoB]: Open on Board 
*[ART]: Average Running Time (operation hours per day) 
*[MC]: Master Contract
*[ADS]: Advantage Database Server (database engine used in previous versions of the ZeeBORN software)
*[.replic]: file extension for replication files (aka data transfer files)
