Natural System Error Messages 0001-0049

#### Search Results

Search

# Natural System Error Messages 0001-0049

#### NAT0001: Missing/invalid syntax; undefined variable name/keyword.

    Text
    Missing/invalid syntax; undefined variable name/keyword.
    Explanation
    The syntax checker detected an invalid statement name or
    keyword. The probable cause is a misspelling of a statement name,
    keyword or variable name, or an error in a sub-clause of the
    previous statement.
    Action
    Correct error.

#### NAT0002: No file is available with specified name or number.

    Text
    No file is available with specified name or number.
    Explanation
     - The file name was misspelt; or
     - the file is not defined in the data dictionary; or
     - you are not authorized to access the file.
    Action
    Use a correct file name; or define the file in the data dictionary;
    or contact your Natural administrator for access authorization
    to the file.

#### NAT0003: Invalid character string for file name or file number.

    Text
    Invalid character string for file name or file number.
    Explanation
    An invalid syntax has been supplied where Natural
    expected to locate a file name or number.
    Only characters that are available in the construction of
    variable names may be used for the construction of a file name,
    i.e., alphabetical characters (first character must be alphabetical),
    numeric characters, and the following special characters:
      -   hyphen-minus          ̲   underscore
      @   commercial at         /   slash
      #   number sign           $   dollar sign
      &   ampersand
    On mainframe platforms, "@" is the character with the hexadecimal
    value H"7C".
    Action
    value H"7C".
    Eliminate invalid characters from file identification.

#### NAT0004: DEFINE DATA must be the first statement if present.

    Text
    DEFINE DATA must be the first statement if present.
    Explanation
    If DEFINE DATA is used in a program, it must always be the
    first statement.
    Action
    Correct error.

#### NAT0005: Closing parenthesis missing in arithm/logical expression.

    Text
    Closing parenthesis missing in arithmetic/logical expression.
    Explanation
    Parentheses may be used to control the evaluation of arithmetic
    and logical expressions.
    If parentheses are used, they must always be paired
    (opening and closing parentheses).
    Action
    Check the use of parentheses in the arithmetic or logical expression.

#### NAT0006: ESCAPE statement used when no processing loop active.

    Text
    ESCAPE statement used when no processing loop active.
    Explanation
    The ESCAPE statement may only be used within an active
    processing loop.
    Action
    Check structure of processing loops and place ESCAPE statement
    correctly within an active loop.

#### NAT0007: Invalid THRU or TO clause in READ LOGICAL or HISTOGRAM.

    Text
    Invalid THRU or TO clause in READ LOGICAL or HISTOGRAM.
    Explanation
    In a READ LOGICAL or HISTOGRAM statement, when specifying a
    - THRU clause, an ending value must be supplied;
    - TO clause, a starting value and an ending value must be supplied.
    A starting or ending value must be either a constant or the content
    of a variable.
    Action
    Correct error in program.

#### NAT0008: Invalid search syntax.

    Text
    Invalid search syntax.
    Explanation
    1) A field used in a WITH clause must be a descriptor.
       A group notation is not permitted.
    2) When the ENDING AT clause of a READ statement uses a
       superdescriptor as the search key, the superdescriptor
       must be defined with the VIEW in the data area (if
       present).
    3) When the READ statement is related to DB2, the search
       variable must be part of the VIEW.
    Action
    1) The LIST FILE command may be used to ascertain whether a field
       is defined as a descriptor in the data dictionary.
    2) Add the superdescriptor to the VIEW.

#### NAT0009: Invalid relational operator in a relational expression.

    Text
    Invalid relational operator in a relational expression.
    Explanation
    A relational expression in a logical criterion contains an invalid
    relational operator. The following relational operators may be used
    in a relational expression:
       =  or  EQ  or  EQUAL TO
      <>  or  NE  or  NOTEQUAL
       <  or  LT  or  LESS THAN
      <=  or  LE  or  LESS EQUAL
       >  or  GT  or  GREATER THAN
      >=  or  GE  or  GREATER EQUAL
    See the Natural documentation, Logical Condition Criteria, for further
    information.
    Action
    Correct the construction of the relational expression.

#### NAT0010: Error in value specification in a relational expression.

    Text
    Error in value specification in a relational expression.
    Explanation
    The search criterion is correct up to the relational operator,
    but the specification of the value to be compared is either missing
    or invalid.
    If the value was specified using a variable,
    the variable must have been previously defined.
    Action
    Ensure that alpha descriptor values are enclosed in apostrophes
    and that numeric values are not.
    Reference only variables that have been defined previously.

#### NAT0011: Invalid format combination in a relational expression.

    Text
    Invalid format combination in a relational expression.
    Explanation
    In a relational expression, values being compared with
    a relational operator must have the same format, that is:
      alpha    rel-operator  alpha
      numeric  rel-operator  numeric
      binary   rel-operator  binary
    Action
    Correct error.

#### NAT0012: Length adjustment of search variable not possible.

    Text
    Length adjustment of search variable not possible.
    Explanation
    The value supplied in the relational expression is longer than the
    length defined for the search variable. The length of the search
    variable can be dynamically adjusted to the length of the value supplied
    if only one value exists. (This is not true for expressions using the
    "OR =", "THRU" or "BUT NOT" operations.)
    Action
    If more than one value exists, use appropriate length specification
    for search variable.

#### NAT0013: Descriptor name or ISN missing after "BY" in READ.

    Text
    Descriptor name or ISN missing after "BY" in READ.
    Explanation
    The word "BY" is specified to express a sequence for a READ operation.
    If BY is used, either the word "ISN" or the name of a descriptor
    must be specified to express the sequence in which the records are
    to be read.
    Action
    Either do not specify BY, or specify either ISN or the name of a
    descriptor.

#### NAT0014: Error in SORTED BY clause of FIND statement.

    Text
    Error in SORTED BY clause of FIND statement.
    Explanation
    The field specified for an Adabas sort is not a descriptor;
    or no sort descriptor was specified;
    or more than 3 sort fields were specified.
    Action
    Correct error.

#### NAT0015: Parenthesis missing in Natural system function notation.

    Text
    Parenthesis missing in Natural system function notation.
    Explanation
    The argument for a Natural system function must be enclosed
    in parentheses.
    If a variable has been given a name which is also the name of a
    Natural system function, this error message will also occur.
    Action
    Either enclose the argument for the function in parentheses;
    or change the name of the variable so that it does not conflict
    with the name of a Natural system function.

#### NAT0016: Invalid parameter in INCLUDE statement or copycode.

    Text
    Invalid parameter in INCLUDE statement or copycode.
    Explanation
    The number of a parameter in the copycode
    Action
    Correct error in INCLUDE statement or in copycode.

#### NAT0017: MASK or SCAN used incorrectly, or incorrect mask length.

    Text
    MASK or SCAN used incorrectly, or incorrect mask length.
    Explanation
    MASK and SCAN can only be specified following an EQ or NE operator.
    The length of the mask must be less than or equal to the length of the
    field. Only the following characters may be used in a mask:
    .  ignore position in variable    DD     check for valid day in month
    U  check for upper-case alpha     MM     check for valid month in year
    N  check for numeric              YY     check for valid current year
    H  check for hexadec. character   YYYY   check for valid year in century
    P  check for printable char.      JJJ    check for valid Julian day
    L  check for lower-case alpha     N1-N2  check against range of values
    C  check for alphanumeric
    S  check for special printable
    A  check for upper/lower alpha
    X  check against position in value
    Action
    Ensure that the mask is specified correctly.

#### NAT0018: Error in construction of arithmetic operand.

    Text
    Error in construction of arithmetic operand.
    Explanation
    The name of a variable has been misspelt in an arithmetic
    expression; or
    a wrong character has been used in the construction of a
    numeric constant; or
    the argument of a square root function has been constructed
    incorrectly.
    Action
    Check program and correct error.

#### NAT0019: Error in receiving field of arithmetic statement.

    Text
    Error in receiving field of arithmetic statement.
    Explanation
    The receiving field of an arithmetic operation must consist of a
    valid variable reference.
    The error may be caused by a misspelt variable name
    or by not supplying the character "=" in ASSIGN/COMPUTE.
    It can also appear if the target variable is a system function
    like INT, SIN, etc.
    Ensure that the target field of MULTIPLY/DIVIDE is not a
    constant.
    Action
    Check program and correct error.

#### NAT0020: Word "BY" missing in MULTIPLY statement.

    Text
    Word "BY" missing in MULTIPLY statement.
    Explanation
    In a MULTIPLY statement, the word "BY" is required between the
    two operands to be multiplied, for example:
       MULTIPLY 1 BY 2 GIVING #RESULT
    Action
    Check program and correct error.

#### NAT0021: Word "INTO" missing in DIVIDE statement.

    Text
    Word "INTO" missing in DIVIDE statement.
    Explanation
    In a DIVIDE statement, the two operands must be separated by the
    word "INTO", for example:
       DIVIDE 2 INTO 7 GIVING #RESULT
    Action
    Check program and correct error.

#### NAT0022: Word "TO" missing in MOVE statement.

    Text
    Word "TO" missing in MOVE statement.
    Explanation
    The word "TO" is required in a MOVE statement to indicate the
    result field(s) into which the values are to be moved.
    Examples: MOVE 1 TO #A
              MOVE #B TO #C #D #E #F
    Action
    Check program and correct error.

#### NAT0023: Error in specification of format element.

    Text
    Error in specification of format element.
    Explanation
    Error in the specification of a format element: either in the
    FORMAT statement, or in a format specification following an
    input/output statement or an individual element.
    Format elements must be identified using the proper format element
    keywords.
    See the Natural session parameters documentation for details.
    Action
    Check program and correct error.

#### NAT0024: In VERT mode, "AS" must be followed by "text" or "CAP".

    Text
    In VERT mode, "AS" must be followed by "text" or "CAP".
    Explanation
    DISPLAY VERTICALLY AS indicates that a special option is desired for
    the vertical display of elements.
    No such option was encountered, either because of a misspelling
    or because no options were provided.
    Possible options are:
       - DISPLAY VERTICALLY AS "header text"
       - DISPLAY VERTICALLY AS CAPTIONED (or DISPLAY VERTICALLY AS CAP)
       - DISPLAY VERTICALLY AS "header text" CAPTIONED
    See the Natural statements documentation for details.
    Action
    Check program and correct error.

#### NAT0025: Closing parenthesis missing in system function argument.

    Text
    Closing parenthesis missing in system function argument.
    Explanation
    In a SORT statement, multiple argument variables can be specified
    for the same Natural system function.
    The list of argument variables must be enclosed in parentheses
    for all argument fields that are to be evaluated for the same
    system function.
    Action
    Check program and correct error.

#### NAT0026: Output element after "VERT" is missing or invalid.

    Text
    Output element after "VERT" is missing or invalid.
    Explanation
    "VERT(ICALLY)" was specified in a DISPLAY statement to indicate that
    output elements are to be displayed underneath one another; however,
    no valid output element was encountered after the "VERT".
    You have probably misspelt a variable name or forgotten an
    apostrophe at the beginning of a text string.
    Action
    Check program and correct error.

#### NAT0027: Error in value specification.

    Text
    Error in value specification.
    Explanation
    A value may be specified either as a constant or as the reference
    to an already existing variable or database field.
    Either a misspelt variable name was supplied,
    or the leading apostrophe for a constant was omitted.
    Action
    Correct error.

#### NAT0028: READ LOGICAL used without required descriptor.

    Text
    READ LOGICAL used without required descriptor.
    Explanation
    A READ LOGICAL statement requires the specification of a
    descriptor which is to be used to control the read sequence.
    If no sequence is specified in the READ LOGICAL statement,
    Natural attempts to use the default sequence as defined for the file
    in the Data Dictionary.
    If no descriptor is specified in the READ LOGICAL statement,
    and no default sequence is defined in the Data Dictionary,
    this error message will be displayed.
    Action
    Ensure that the sequence descriptor is specified by either
    of the methods described above.

#### NAT0029: Descriptor field missing/invalid syntax in HISTOGRAM.

    Text
    Descriptor field missing/invalid syntax in HISTOGRAM.
    Explanation
    A HISTOGRAM statement reads the values for a descriptor.
    The values are read using the database inverted list.
    Therefore, only descriptor fields may be specified.
    Action
    Supply a valid descriptor.

#### NAT0030: A relational expression is missing or invalid.

    Text
    A relational expression is missing or invalid.
    Explanation
    The following relational expressions are valid:
       =  or  EQ  or  EQUAL TO
      <>  or  NE  or  NOTEQUAL
       <  or  LT  or  LESS THAN
      <=  or  LE  or  LESS EQUAL
       >  or  GT  or  GREATER THAN
      >=  or  GE  or  GREATER EQUAL
    See the Natural documentation, Logical Condition Criteria, for further
    information.
    Action
    Correct the construction of the relational expression.

#### NAT0031: Opening/closing parenthesis missing in REDEFINE.

    Text
    Opening/closing parenthesis missing in REDEFINE.
    Explanation
    Opening and closing parentheses are required to begin/end
    the definition of a new variable using REDEFINE.
    Example: REDEFINE #A (#A(N3) #A2(A7))
    Action
    Correct error.

#### NAT0032: Invalid break control field in AT BREAK or IF BREAK.

    Text
    Invalid break control field in AT BREAK or IF BREAK.
    Explanation
    In an AT BREAK statement or IF BREAK condition, a database field or
    user-defined variable may be used to indicate the break control field.
    If a user-defined variable is used, it must have been previously
    defined. A break control variable can have any format, except format
    "C" (attribute control).
    The maximum length of a break variable is 253 bytes for
    alphanumeric and 126 bytes for binary variables.
    If you wish to use an alphanumeric variable with a larger size, you
    have to reduce the number of break positions with an explicit "/n/"
    clause. The same applies for variables defined as alpha DYNAMIC.
    Example: .. assume definitions #A300(A300)  #DYN(A) DYNAMIC
             AT BREAK OF #A300 /10/
             IF BREAK OF #DYN  /177/
    Action
    Correct error.

#### NAT0034: Numeric field for number of lines invalid or missing.

    Text
    Numeric field for number of lines invalid or missing.
    Explanation
    The number of lines to be skipped in a SKIP, EJECT or NEWPAGE
    statement must be specified with a numeric constant or variable.
    Action
    Check program and correct error.

#### NAT0035: "DATA" not in AT START OF DATA/"PAGE" in AT TOP OF PAGE.

    Text
    "DATA" not in AT START OF DATA/"PAGE" in AT TOP OF PAGE.
    Explanation
    The word "DATA" is required in the construction of an AT START OF DATA
    statement; the word "PAGE" is missing in an AT TOP OF PAGE statement.
    It has either been misspelt or forgotten.
    Action
    Check program and correct error.

#### NAT0037: Name missing or specified incorrectly.

    Text
    Name missing or specified incorrectly.
    Explanation
    This error occurs under one of the following conditions:
    - At compilation time, if the object name (e.g. subprogram, dialog)
      specified in the statement is incorrect, either by format or
      length.
    - At runtime, if a dynamic alphanumeric variable is used to specify
      the object name and the current length of the variable exceeds the
      maximum of 8 characters.
    Action
    Specify the name as a 1- to 8-character constant or variable (A1-A8)
    or do not use a dynamic variable which is longer than 8 characters.

#### NAT0038: Invalid field reference in REDEFINE base field.

    Text
    Invalid field reference in REDEFINE base field.
    Explanation
    The field to be used as the base field in a REDEFINE statement may
    be a user-defined variable or a database field.
    If it is a user-defined variable, it must have been previously defined.
    If it is a database field, it must be a field within an active loop.
    Action
    Check program and correct error.

#### NAT0039: Sum of field lengths in REDEFINE > length of base field :1:.

    Text
    Sum of field lengths in REDEFINE > length of base field ....
    Explanation
    The accumulated length of all new fields in a REDEFINE statement
    must be less than or equal to the length of the base field, counted in
    bytes.
    When a group contains a field of type HANDLE or DYNAMIC, you can only
    redefine the fields before the HANDLE or DYNAMIC variable.
    Action
    Check program and correct error.

#### NAT0040: Only one AT TOP OF PAGE statement allowed per report.

    Text
    Only one AT TOP OF PAGE statement allowed per report.
    Explanation
    The AT TOP OF PAGE statement may only be specified once for the same
    report. If multiple actions are to be executed at the top of a page
    depending on various conditions, they must be specified within the same
    AT TOP OF PAGE statement and separated by the appropriate
    logical conditions.
    Action
    Check program and correct error.

#### NAT0041: Only one AT END OF PAGE statement allowed per report.

    Text
    Only one AT END OF PAGE statement allowed per report.
    Explanation
    The AT END OF PAGE statement may be specified only once per report.
    If multiple actions are desired under the same end-of-page condition,
    they must be specified within the same AT END OF PAGE statement and
    separated by the appropriate logical conditions.
    Action
    Check program and correct error.

#### NAT0042: Invalid specification of CIPHER code.

    Text
    Invalid specification of CIPHER code.
    Explanation
    The cipher code for a database file may be specified either as a
    numeric constant (8 digits) or the content of a numeric variable.
    The numeric variable must be defined with format/length N8.
    An equal sign (=) must be specified between the word CIPHER and the
    value.
    If the value is supplied via a numeric variable,
    this numeric variable cannot be a REDEFINE variable.
    Action
    Check program and correct error.

#### NAT0043: Invalid password construction.

    Text
    Invalid password construction.
    Explanation
    The Adabas password may be provided as an alphanumeric constant
    or by using an alphanumeric variable.
    An equal sign (=) must be specified between the word PASSWORD
    and the value for the password.
    Action
    Check program and correct error.

#### NAT0044: Output element not defined, or indexes incorrect.

    Text
    Output element not defined, or indexes incorrect.
    Explanation
    This error may be caused by:
    - an error in the construction of the name of an output element;
    - a reference to a variable that has not been previously defined;
    - a misspelling of a keyword;
    - an invalid index specification.
    Action
    Check program and correct error.

#### NAT0045: Invalid reference in UPDATE or DELETE statement.

    Text
    Invalid reference in UPDATE or DELETE statement.
    Explanation
    Either the construction of the reference is wrong or the
    reference is not allowed.
    A reference can only be made to a FIND, GET or READ statement.
    An UPDATE, GET or DELETE statement must not be on the same line as a
    FIND statement.
    No reference is possible to a GET SAME statement. In this case,
    use a reference to the statement that made the first access to the
    record.
    Action
    Check for the above causes and correct any errors.

#### NAT0046: Error in parameter field list for UPDATE or STORE.

    Text
    Error in parameter field list for UPDATE or STORE.
    Explanation
    Only fields from one file may be updated with one UPDATE or STORE
    statement. Values for fields may be constants, the contents of
    user-defined variables, or the contents of a database fields.
    Action
    Check the parameter list and correct any errors.

#### NAT0047: Error in variable definition.

    Text
    Error in variable definition.
    Explanation
    One of the following errors was detected:
    - In an OBTAIN statement, the field referenced was not contained
      within a database array.
    - An error in a statement reference and/or field length notation
      was detected.
    - An error in the index notation was detected.
      OBTAIN ARRAY (1:5)          -> valid
      OBTAIN ARRAY (#I:#J)        -> INVALID
      OBTAIN ARRAY (#I:#I + 9)    -> valid
    Action
    Correct error.

#### NAT0048: Illegal format combination of field/value in UPDATE/STORE.

    Text
    Illegal format combination of field/value in UPDATE/STORE.
    Explanation
    The value assignment for field/value combinations in the parameter
    list is performed individually for each combination according
    to the general rules for value assignment.
    An attempt was made to assign a value of one format to a field of
    incompatible format.
    Action
    Check program and correct error.

#### NAT0049: Error in value entry for UPDATE or STORE.

    Text
    Error in value entry for UPDATE or STORE.
    Explanation
    The value in an UPDATE or STORE statement may be specified as a constant
    or as the content of a user-defined variable or database field.
    If a database field is used as a value, it must reference a currently
    active FIND/READ/GET loop.
    Action
    Check program and correct error.