Forbids all the modifications on a data file (for all the programs, including the one that requested the no-modification policy). The records can be accessed in read-only.
The restriction is performed for all the sessions and other programs (developed with WEBDEV), including the session that requested the restriction.
<Result> = HNoModif(<Data file>)
If the data file is still locked after H.NbRetry attempts, HErrorLock returns True (the H.Locked variable is set to True).
- True if no problem occurred,
- False otherwise. HError returns more details about the problem.
If the data file was locked, HErrorLock returns False.
<Data file>: Character string
Name of the data file used.
Locks set by HNoModif
HNoModif can lock in write mode a file already locked by another program (with HNoModif). Therefore, several programs can forbid the modifications on the same data file at the same time. A locking read function run after HNoModif in the same program reads the record without locking it.
HNoModif cannot lock a data file already locked in read/write by another program.
Reminder: the data file cannot be locked by HNoModif only if the data file is locked in read/write by another program.
- In single-user mode (HMode), HNoModif is equivalent to HOpen (the data files are locked in read/write as soon as they are opened).
- You have the ability to lock a data file whose records are locked by another application.
- The maximum number of programs that can request the no-modification policy on a data file depends on the size of a record in the data file. It can be calculated as follows:
MaxNbSessionsOrPrograms = RecordSize - 20
- This function is not available when using a database via Remote Access.