|
|
|
|
|
- Read operation according to a key item or not
- Memos
- Lock
- Miscellaneous
<Source>.Forward (Function) In french: <Source>.Avance
Not available with this kind of connection
Moves several records forward from the current position in the data file, according to a specified item. The destination record is read and loaded in memory: HFSQL variables are updated (e.g. Customer.Name, i.e. item Name of data file Customer). Several cases may occur after the call to <Source>.Forward: - no other record exists in the data file: <Source>.Out returns True. No read operation is performed.
- the function tries to lock a record that is already locked in read-only: HErrorLock returns True and <Source>.Out returns True.
Management of locks not available in PHP.
Access by JDBC: Locks cannot be managed in databases accessed by JDBC.
Management of locks not available in SQLite databases.
This function can be used with the HFSQL files, views or queries.
// Moves to the 2000th record // of the Customer file according to the CustName key Customer.ReadFirst(CustName) Customer.Forward(CustName, 1999)
Syntax
<Result> = <Source>.Forward([<Item> [, <Step> [, <Options>]]])
<Result>: Boolean - True if the move was performed in the file,
- False if an error occurred (lock, end of file, etc.): the record is not read. HError is used to identify the error.
<Source>: Type corresponding to the specified source Name of data file, view or query used. <Item>: Optional character string Name of item according to which the browse is performed. If this name is not specified, <Source>.Forward handles the last item in the data file used by the last HFSQL function (function starting with "H"). <Step>: Optional integer Number of steps forward (which means number of records to browse). By default, <Step> = 1.
<Options>: Optional Integer constant (or combination of constants) Configures:- the lock mode applied to the record read. By default, the lock performed corresponds to the current lock.
| | hLockNo | No lock: the record can be read or modified by another application during the reading. | hLockReadWrite | Lock in read/write mode: the record currently read cannot be read or modified by another application. | hLockWrite | Lock in write mode: the record currently read can be read by another application but it cannot be modified by another application. |
![OLE DB OLE DB](https://doc.windev.com/ext/images/us/OLEDB.png?-749475651) The lock options will have no effect if the locks are not supported by the OLE DB provider or by the Native Connector.
Access by JDBC: Locks cannot be managed in databases accessed by JDBC.
![Android Android](https://doc.windev.com/ext/images/us/ANDROID.png?385929803) Management of locks not available in SQLite databases. - the management of duplicates during the browse. By default, all duplicates are iterated over.
| | hDistinct | When a browse is performed on a key item, a single record is browsed if duplicates are found. |
Remarks Read operation according to a key item or not If the item used is a key item: - if the hDistinct constant is not specified, <Source>.Forward moves forward <Step> key values from the current position.
- if the hDistinct constant is specified, <Source>.Forward moves forward <Step> key values from the current position. If duplicates are found, a single duplicate is read.
If the item used is not a key item: - the hDistinct constant is not available.
- <Source>.Forward moves foward from <Step> active records from the current position.
Memos The memos associated with the record can be automatically read (or not) when reading the record. <Source>.SetMemo is used to customize this automatic read operation. If the memos are supported, the associated text memos are read when the record is read. The binary memos are read only when they are explicitly used ( <Source>.ExtractMemo). Lock By default (no lock variable specified), the lock performed corresponds to the current lock mode. If a lock is specified (hLockWrite or hLockReadWrite constant), the record will be read and locked only if it is not already locked by another application.
This page is also available for…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|