Step Previous (35)
The Step Previous operation (B_STEP_PREVIOUS) retrieves the record to which the previous physical position points. The transactional interface does not use an index path to retrieve a record for a Step Previous operation.
A Step Previous operation performed immediately after any Get or Step operation returns the record physically preceding the record that the previous operation retrieves.
Parameters
Op Code
Pos Block
Data Buf
Data Buf Len
Key Buffer
Key Number
Sent
Returned
Prerequisites
•
The file must be open.
•
You must have an established previous physical position. (For example, a Step Previous cannot follow a Delete operation.)
Procedure
1
Set the Operation Code to 35. Optionally, you can include a lock bias:
•
+100—Single wait record lock.
•
+200—Single no-wait record lock.
•
+300—Multiple wait record lock.
•
+400—Multiple no-wait record lock.
For more information about locking, refer to the
Pervasive PSQL Programmer's Guide
.
2
Pass the Position Block for the file.
3
Set the Data Buffer Length to a value greater than or equal to the length of the record to retrieve.
Result
If the operation is successful, the transactional interface returns the previous physical record in the Data Buffer and sets the Data Buffer Length parameter to the number of bytes returned.
If the operation is unsuccessful, the transactional interface returns one of the following status codes:
3
The file is not open.
9
The operation encountered the end-of-file. (at the beginning of the file)
22
The data buffer parameter is too short.
Positioning
The Step Previous operation does not establish logical currency. Step Previous sets the physical currency using the retrieved record as the physical current record.