Fstat

fstat is a numeric status that is returned upon execution of a database operation, a sequential file operation, or a lock instruction.

Syntax

fstat

Examples

# MYTABLE is a table with a key called KEY1, that has a unique component called KEYVAL# Create a record in the table MYTABLE with they key value 1 if it doesn't exist Local File MYTABLE [MYT]Read [MYT]KEY1=1If fstat[MYT]KEYVAL=1 : Write [MYT]If fstatMSG="The key was created in the mean time"ElseMSG="Key created"EndifElseMSG="Key already exists"Endif

Details

fstat is always set to '0' if the operation is successfully completed, and has a non-null value if there is an error:

Note that the use of literal numbers should be avoided: dedicated constants exist for this purpose.

ConstantValueExplanation
[V]CST_AOK0Operation succeeded.
[V]CST_ALOCK1Record is locked.
[V]CST_AOUTSEARCH2In <= or >= read mode, indicates that read succeeded, but the key found is not equal to the value.
[V]CST_ADUPKEY3Duplicate value on unique index.
[V]CST_AOUTKEYS4Attempt of reading a key value that is smaller or greater than all existing key values.
[V]CST_ANOREC5Record not read (no current record exists).
[V]CST_ARECTICKUPD6Update conflict: the line no longer exists with the right updtick value (concurrency error during an update operation).
[V]CST_ARECTICKDEL7Delete conflict: The line no longer exists with the right updtick value (concurrency error during a delete operation).

See also

Getseq, Rdseq, Lock, Read, Look, Readlock, For, Write, Delete,Rewrite, DeleteByKey, RewriteByKey.