The SQL statement below will retrieve the last ID in the Fields table:
select gen_id(gen_fields_id, 0) from rdb$database
JD
This is wrong.
In heavy used system, it's matter of time when this query return same result for different inserts.
Generators and gen_id work out of transaction
1. User A insert record ID=1
2. User B insert record ID=2
3. User A read gen_id(xxx,0) result=2 :-(
4. User B read gen_id(xxx,0) result=2
In my systems I use OnBeforePost event with
select gen_id(xxx,1) from rdb$database
and set my ID