---
url: >-
  /statelake/scripting-reference/classes/client-dataset-class-tfloclientdataset/tfloclientdataset.eof.md
---

# TFloClientDataset.EOF

**EOF** stands for End-Of-File, and this indicates whether the data set is at the end of its records.

If **EOF** returns **True** then there are no more records in this data set.

If **EOF** returns **False** then more records exist.

Typically this is used to determine whether there are any records at all within the data set - if you have just started working with the data set and it returns **True** then there are no records.

This is also good for looping through a data set. While the data set is not **EOF** you can do something with its data, and then move to the next record.

**Declaration**: property EOF: Boolean

Remember, that \<DatasetName> in these examples is a placeholder for the actual name of your data set as per your **Map**.

```pascal
procedure OnMapEvent(var Value:Variant);
begin
 //Check EOF to see if any more records exist
 if <DatasetName>.EOF then
    LogInfo('There are no more records in this dataset')
end;
```

```pascal
procedure OnMapEvent(var Value:Variant);
begin
 //loop data set until end of its records
 while not <DatasetName>.EOF do
 begin
 do something...
 //move to the next record
    <DatasetName>.Next;
 end;
end;
```
