Modifies the location of log files corresponding to a HFSQL data file (*JNL files as well as JournalOperation and JournalIdentification files if they exist).
Reminder: The JournalOperation and JournalIdentification files are created:
- if the management of replication is requested for the data file.
- if the management of the selected log corresponds to "Write-to-file log and history of accesses".
The *JNL file is not created if only the log of access history is requested.
By default, the physical files corresponding to the logs are created:
- in the directory specified in the analysis ("Analysis description", "Log process" tab).
- in the specified directory when describing the data file ("Description of data file" from the popup menu, "Various" tab). This option is available only if the analysis directory corresponds to "<Default directory of files>".
The location of log files cannot be modified. This function is ignoredRemark: From version 19, HFSQL is the new name of HyperFileSQL.
. The location of the log is configured in the HFCONF.INI file
// The "Customer" file has a log
HChangeLogDir(Customer, "\\MyServer\Log\JNL", "\\MyServer\Log\Operation")
// -> the "CustomerJNL" file is opened
// in the "\\MyServer\Log\JNL" directory
//-> the "JournalOperation" and "JournalIdentification" files
// are opened in the "\\MyServer\Log|Operation" directory
<Result> = HChangeLogDir(<Data file> , <JNL file location> [, <LogOperation file location> [, <Backup location>]])
- True if the operation was performed,
- False if a problem occurred. HErrorInfo is used to identify the error.
<Data file>: Character string (with quotes)
Name of the data file whose log must be moved. This is the logical name of the file (defined in the data model editor).
If this parameter is equal to "*", all the data files found in the current analysis will have their log file moved.
<JNL file location>: Character string (with quotes)
New access path to JNL file associated with the file with logs (full or relative path).
If this parameter corresponds to an empty string (""), the current file location is not modified.
<LogOperation file location>: Optional character string (with quotes)
New access path to JournalOperation file and JournalIdentification file associated with the file with logs (full or relative path). The JournalOperation file contains all the operations performed on the file with logs.
If this parameter is not specified or if it corresponds to an empty string (""), the current file location is not modified.
<Backup location>: Optional character string (with quotes)
Path of backups of log files. By default, this path corresponds to: <directory of JNL files>\__JNLBackup
This path is used during the automatic modification of data files to archive the logs. HHistoryModification
will also find the history of the modifications in these files.
If this parameter corresponds to an empty string (""), the current location is not modified.
If this parameter corresponds to a relative path (and starts with a dot), the path will be relative to data files.
Priority for defining the location of log files
The location of log files is defined according to the following priority order:
- Location specified when creating the file with logs was created (HCreation).
- Location specified by HChangeLogDir.
- Location specified in the analysis.
- Location of file with logs.
The log file exists when HChangeLogDir is used
If the log file already exists during the call to HChangeLogDir, this log file is not used anymore: a log file is created at the specified location and it is associated with the HFSQL file.
Using HDeclareExternal with a file with logs
: if an application uses HDeclareExternal
on a file with a log, the modifications performed by this application are saved in the log files specified in the header of the HFSQL file.
Replication and log process
Reminder: The replication is based on the logs and on the operation tables of the data files. The replication fails if the location of the logs and operation tables is invalid.