Advantage 31xx Error Codes

Advantage Error Guide

Contents

  • 3101 Incomplete record filter expression
  • 3102 Incorrect parameter count within a function call in record filter expression
  • 3103 Missing string delimiter in record filter expression
  • 3104 Literal value too long in record filter expression
  • 3105 Unsupported data type value in record filter expression
  • 3106 Unsupported operator found in record filter expression
  • 3107 Unsupported function found in the record filter expression
  • 3108 Invalid delimiter in function parameter in the record filter expression
  • 3109 Unsupported data type in function parameter in the record filter expression
  • 3110 Unknown alias name used with field name in the record filter expression
  • 3111 Unknown identifier found in the record filter expression
  • 3114 Advantage Expression Engine memory allocation failed
  • 3115 Invalid field type found in the record filter expression
  • 3116 Advantage Expression Engine operator stack overflow
  • 3117 Number of record filter expression parameters exceed the capability of the parser
  • 3118 Mismatched number of parentheses in the record filter expression
  • 3119 Parser working stack is about to overflow
  • 3121 Advantage Expression Engine is not being used
  • 3122 Advantage server thread's working stack about to overflow
  • 3124 String collation error

3101 Incomplete record filter expression

An error occurred in the Advantage Expression Engine parser. The error was in the record filter expression.

Problem 1: The expression is invalid. The expression may be invalid due to an extra right paren(s) plus possible other invalid text following that parenthesis. The expression may also be invalid to an extra, illegal comma placed within the expression plus possible other invalid text following that comma.

Solution 1: Change any filters that use an invalid expression and re-set the filter using a valid expression.

Problem 2: The parse finished but the expression was incomplete.

Solution 2: If Solution 1 above does not solve the problem and the error persists, contact Advantage Technical Support and send in a small re-creation.

3102 Incorrect parameter count within a function call in record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. A function in the record filter expression contained too few or too many parameters.

Solution: Review the function calls within the record filter expression to correct the number of parameters within the function call in error.

3103 Missing string delimiter in record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. A string in the record filter expression is missing a delimiter.

Solution: Add a string delimiter (″) to the string that is missing the delimiter within the record filter expression.

3104 Literal value too long in record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. A literal value in the record filter expression is longer than 32K.

Solution: Use literal values less than 32K in length within the record filter expression.

3105 Unsupported data type value in record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. A value in the record filter expression is not a supported data type.

Solution: Contact Advantage Technical Support if this error occurs.

3106 Unsupported operator found in record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. The record filter expression contains an unsupported operator.

Solution: Verify operators in the expression are valid client operators that are supported by the Advantage Expression Engine.

3107 Unsupported function found in the record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. The record filter expression contains an unsupported function.

Solution: Verify the function names are not misspelled and are supported by the Advantage Expression Engine. For a list of all supported, see Advantage Expression Engine.

3108 Invalid delimiter in function parameter in the record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. Parameters to a function within the record filter expression are separated by an invalid delimiter.

Solution: Verify the delimiters separating parameters within a function call in the expression are valid.

3109 Unsupported data type in function parameter in the record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. A parameter to a function or an operand within the key expression was of the wrong data type.

Solution: Verify the data types of the function parameters are of the correct data type.

3110 Unknown alias name used with field name in the record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. A field name within the record filter expression was aliased by an unknown alias name.

Solution: Advantage only supports aliases for the current work area. If an alias to another work area is referenced, this error will result. Verify the alias name is spelled properly.

3111 Unknown identifier found in the record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. An identifier within the record filter expression is unknown to the parser.

Solution: This error is usually caused by the use of memory variables within the record filter expression. Memory variables are not supported by the Advantage Expression Engine as the variables are visible only to the client. This error may also result from a misspelled field name or from a field name that does not exist in the current work area.

3114 Advantage Expression Engine memory allocation failed

Problem: An error occurred in the Advantage Expression Engine parser. A memory allocation failed.

Solution: If this error occurs, retry the command. If this error repeatedly occurs, more memory is needed on the server.

3115 Invalid field type found in the record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. The record filter expression contained an invalid field type.

Solution: This error is most likely due to the use of a memo field within the record filter expression. Memo fields are not supported by the Advantage Expression Engine parser.

3116 Advantage Expression Engine operator stack overflow

Problem: An error occurred in the Advantage Expression Engine parser. The internal stack has exceeded the maximum number of operators.

Solution: This is most likely due to the record filter expression containing an unusually high number of operators. Contact Advantage Technical Support.

3117 Number of record filter expression parameters exceed the capability of the parser

Problem: An error occurred in the Advantage Expression Engine parser. The record filter expression contained too many parameters for the parser to handle.

Solution: Contact Advantage Technical Support.

3118 Mismatched number of parentheses in the record filter expression

Problem: An error occurred in the Advantage Expression Engine parser. The record filter expression contains a mismatched number of parentheses.

Solution: Verify the parentheses are matched and are in the correct position.

3119 Parser working stack is about to overflow

Problem: An error occurred in the Advantage Expression Engine parser. The parser working stack was about to overflow.

Solution: This error is due to an extraordinarily large record filter expression. Contact Advantage Technical Support.

3121 Advantage Expression Engine is not being used

Problem: An error occurred in the Advantage Expression Engine parser. The engine is not being used to record filter records.

Solution: This error is returned to indicate the Expression Engine has been disabled by the SET EXPRESSION ENGINE command. Turn the Expression Engine ON or ignore this error.

3122 Advantage server thread's working stack about to overflow

Problem: An error occurred in the Advantage Expression Engine parser. The Advantage server thread's working stack was about to overflow. The problem is most likely due to an expression with a very large nesting of parentheses (hundreds of levels deep). This can occur when evaluating an Advantage Optimized Filter expression with a large number of OR operators on fields that are not indexed. It can also occur when evaluating the IN clause of an SQL statement on a field that is not indexed. For example, a query of the form "select * from T where F in (1, 2, 3, 4, .... 3000 )" could produce a very deep nesting if the field "F" is not indexed.

Solution: Either reduce the number of items in the filter or query, or create an index on the field so that it is fully optimized.

3124 String collation error

Problem 1: Comparison operator encountered operands of two different collations.

Solution 1: Coerce one of the operands using the collate function.

Problem 2: Result of an expression was a string with an undetermined collation.

Solution2: Coerce the result to a specific collation using the collate function.