ENTRY statement

Used on the left-hand side of an assignment to set the nth element to some value.

Syntax

ENTRY ( element , list [ , character ] ) = expression
element
An integer value that corresponds to the position of a character string in a list of values. If the value of element does not correspond to an entry in the list, the AVM raises the ERROR condition. If the value of element is the Unknown value (?), ENTRY returns the Unknown value (?). If element is less than or equal to 0, or is larger than the number of elements in list, ENTRY returns an error.
list
A list of character strings separated with a character delimiter. The list can be a variable of type CHARACTER or LONGCHAR. If the value of list is the Unknown value (?), ENTRY returns the Unknown value (?).
character
A delimiter you define for the list. The default is a comma. This allows functions to operate on non-comma-separated lists. The delimiter must be only a single character. If you specify a string of more than one character, only the first character is used. If you specify a null string (""), a space character is used as the delimiter. If you use an alphabetic character, this delimiter is case sensitive.
expression
A constant, field name, variable name, or expression that results in a character string whose value you want to store in the nth element in a list. ABL does not pad or truncate expression.

Example

This procedure uses three ENTRY statements:

r-ent-eq.p

DEFINE VARIABLE num-recs AS INTEGER   NO-UNDO.
DEFINE VARIABLE msg-txt  AS CHARACTER NO-UNDO INITIAL
  "There are <x> records in the table.".

/* Count the records. */
FOR EACH Customer NO-LOCK:
  num-recs = num-recs + 1.
END.

/* If there is only one record, make the message singular. */
IF num-recs = 1 THEN
  ASSIGN
    ENTRY(2,msg-txt," ") = "is"
    ENTRY(4,msg-txt," ") = "record".

/* Insert the record count into the string. */
ENTRY(3,msg-txt," ") = STRING(num-recs).

MESSAGE msg-txt.

Notes

The ENTRY statement is double-byte enabled. It can insert an entry that contains double-byte characters into a specified list and the character delimiter can be a double-byte character.

See also

ENTRY function, LOOKUP function, NUM-ENTRIES function