Define Expressions Logging

Define logging conditions and optionally start expressions logging. Expressions logging can be used to log (trace) all operations in the EDMexpressVM.
Running with an active expressions logging will considerably slow down the execution in EDMexpressVM.
NOTE: The expression logging will normally produce very much output. Hence the available filtering mechanisms for "what source area to log", "when the specified source area should be logged" and "what kind of information should be logged" should be used.
The arguments <Repository>, <Model>, <Extra Schema Type>, <Extra Schema Name> and <Source area to log> specifies "what source area to log". When no filter for "what source area to log" is specified, all actual source area will be logged.
The arguments <Repository>, <Model>, <Extra Schema Type>, <Extra Schema Name> and <Express declarations to log> specify "when the specified source area should be logged". When no filter for "when the specified source area should be logged" is specified, the actual source area will be logged whenever it is executed.
The options [full log], [log conditions], [log expressions], [log predef functions], [log functions], [log instance creation], [log assignments], [log aggregate contents], [log rule schema only], [log rule results], [log time used], [log errors] and [log warnings] are used to specify "what kind of information should be logged".
Arguments:

Repository:

Name of the open repository that holds the actual model. Repository names are case sensitive.
When activating the Select button, the name of all open repositories will be displayed in the related selection list.
This argument is only required when any of the arguments that defines "what source area to log" or "when the specified source area should be logged" filters are specified.

Model:

Specify the name of the model to open. Model names are case sensitive.
When activating the Select button, the name of all models located in the repository(ies) specified by the <Repository> argument will be displayed in the related selection list.
This argument is only required when any of the arguments that defines "what source area to log" and/or "when the specified source area should be logged" filters are specified.

Extra Schema Type:

Name of schema type that is to be used for the logging process.
When this argument is not specified, the actual Express schema will be logged.
When activating the Select button, the three schema types, Method_Schema, Query_Schema and Rule_Schema will be displayed in the related selection list.
This argument is only required when any of the arguments that defines "what source area to log" and/or "when the specified source area should be logged" filters are specified.

Extra Schema Name:

Name of schema that contains the methods/queries/rules to be logged.
When activating the Select button, the names of all existing applicable schemata will be displayed in the related selection list.
This argument is only required when any of the arguments that defines "what source area to log" and/or "when the specified source area should be logged" filters are specified.

Express declarations to log:

A comma separated list of "Express declaration" names (identifiers) for which a log should be obtained. An "Express declaration" name is case insensitive.
When activating the Select button, the names of all available "Express declarations" will be displayed in the related selection list. The value selected from the "selection list" will be added to the current value in the related dialog input field.
Declarations that can be specified are: RULE, QUERY_FUNCTION, WHERE, DERIVE

Source area to log:

A comma separated list of source areas for which a log should be obtained.
A source are can be specified by an "Express declaration" (identifier) name, by a single line number (23,27 etc) or an interval line numbers (31-35,43-47, etc). An "Express declaration" name is case insensitive.
When activating the Select button, the names of all available "Express declarations" will be displayed in the related selection list. The value selected from the "selection list" will be added to the current value in the related dialog input field.
Declarations that can be specified by name are: MAP, COMPOSE. STATEMENTS, RULE, WHERE, DERIVE, QUERY_FUNCTION, FUNCTION, PROCEDURE

Log file:

Specify the name of the file that will hold the log information. This file can be an existing file or the name of a file that will be created by the conversion process. Default file extension is ".log".
This argument is only valid when the [log to file] option is set

Max file size:

Specify an integer value that is the maximum number of bytes the specified <Log file> can hold before the <Log file> is closed. Specifying the value 0 (zero) means no size limit for the <Log File> is defined. This argument is only effective when the <Log file> argument is specified and the [log to file] option is set.

User output file

Specify the name of a file that will be used to receive the result of executing the xpxPrintf and xpxOutputValue function in the actual Express schema. The specified file can be an existing file or the name of a file that will be created by the EDMmodelConverter. The default file extension is ".txt".
This argument is effective valid when the [user output to file] option is set.
When activating the Select button, a window is opened to allow browsing the directory structure and select/specify the desired file.

Options:

accumulating command output:

A global option that appends the command output to the EDMsupervisor output window. Otherwise the output window is refreshed and only the last command output is displayed.

user output to file:

Specifies that the result from the Express-X functions xpxPrintf and xpxOutputValue will be written to the file specified in the <User output file> argument.
If none of the options [user output to file] or [user output to stdout] are set, then the output from these function will be written to the actual <Log file> if defined, else the output from these functions will be written to the EDMsupervisor output window.

user output to stdout:

Specifies that the result from the Express-X functions xpxPrintf and xpxOutputValue will be written to the EDMsupervisor output window.
If none of the options [user output to file] or [user output to stdout] are set, then the output from these function would be written to the actual log file <Log file> if defined, else the output from these functions would be written to the EDMsupervisor output window.

full log:

Specifies that all available logging information, except [logging aggregate contents] should be recorded. The option [logging aggregate contents] must be separately enabled due to the very high volume of information this option is normally outputting.

log conditions:

Log evaluation of all logical conditions.
This option is automatically enabled when the [full log] option is enabled.

log expressions:

Log the evaluation of all Express expressions.
This option is automatically enabled when the [full log] option is enabled.

log predef functions:

Log the execution of all built-in Express and Express-X functions.
This option is automatically enabled when the [full log] option is enabled.

log functions:

Log the execution of all FUNCTION and PROCEDURE declarations.
This option is automatically enabled when the [full log] option is enabled.

log instance creation:

Log all instance creation in the actual EDMexpressVM process.
This option is automatically enabled when the [full log] option is enabled.

log assignments:

Log all instance creation by the current EDMexpressVM process.
This option is automatically enabled when the [full log] option is enabled.

log aggregate contents:

Log contents (system defined limit of number of elements) of aggregates accessed by the current EDMexpressVM process.
This option is not automatically enabled by the [full log] option.

log rule schema only:

This option specifies that only execution of a EDMruleSchema process will be logged in the current expressions logging session.

log time used:

Log the time used for WHERE rules.
This option is automatically enabled when the [full log] option is enabled.

log rule results:

Log the result of rule invocations, i.e. either TRUE, FALSE or UNKNOWN
This option is automatically enabled when the [full log] option is enabled.

log errors:

Log all error events detected by the EDMexpressVM when executing the current process.
This option is automatically enabled when the [full log] option is enabled.

log warnings:

Log all warning events detected by the EDMexpressVM when executing the current process.
This option is automatically enabled when the [full log] option is enabled.

log to file:

The log records will be written to the file specified by the <Log file> argument.

log to stdout:

The log records will be written to the EDMsupervisor output window.

start log:

The log is started implicitly, i.e. there is no need to explicitly invoke the command Aux>LogExpressions>Start.