Cursors
- Last Updated: March 30, 2020
- 1 minute read
- OpenEdge
- Version 12.2
- Documentation
ABL uses cursors to keep track of where it is in a file.
A cursor is like a pointer that points to consecutive
records in a file. For example, ABL uses cursors when it processes FOR EACH types
of statements. ABL maintains cursor positioning across queries.
The DataServer supports this behavior for Oracle tables that
have a mandatory unique index on an INTEGER column
or that contain the PROGRESS_RECID column. (The OpenEdge DB-to-Oracle
migration utility creates an indexed NUMBER column
named PROGRESS_RECID with unique values for the
rows in each Oracle table.)
Suppose that you are reading records from the customer file using
the custnum index, and your "current" record is customer number
50. This means that ABL has a cursor positioned at custnum 50.