SYNTAX:
xpxTrace (traceFunction : INTEGER;
declarationsToLog, sourceLinesToLog, logFile : STRING;
maxLogFileSize, options : INTEGER)
status : INTEGER;
The xpxTrace function generates a log according to the filter specified by options. All 6 arguments must be present when <traceFunction> = XPXDEFINE_TRACE. For other values of <traceFunction>, only one argument is required, and if specified the additional 5 arguments will not be checked. Hence xpxTrace can be called with 6 to 1 arguments.
XPXDEFINE_TRACE cannot be performed ( error code is returned) when a "trace condition" is already defined. Terminating current "program" in EDMexpressVM or invoking xpxTrace with XPXCLOSE_TRACE will "clear current trace condition". The EDMsupervisor "log/trace" specification in Data>ConvertModels ..etc, and Aux>LogExpression>Define will define a "trace condition". Hence in such cases the actual "program" must execute a xpxTrace with XPXCLOSE_TRACE before a new "trace condition" can be specified by invoking xpxTrace with XPXDEFINE_TRACE.
XPXSTART_TRACE, XPXSTOP_TRACE "works as for edmiTrace operations"
traceFunction :One of the following values: XPXDEFINE_TRACE,XPXSTART_TRACE, XPXSTOP_TRACE, XPXCLOSE_TRACE.
declarationsToLog : Specifies the Express-X declarations that should be executed when logging should be performed Legal Express-X declarations are: Map, Compose, Statements and Rule. An Express-X declaration can be specified by the name, i.e., map name, function name, etc., or by the line number in the source schema where the actual declaration is declared. The names of the Express-X declarations are case insensitive. Any number of declarations can be specified. White space and comma can be used as delimiter between each declaration in this argument. The order of the declarations in the input field is insignificant. This argument and the <sourceLinesToLog> argument specifies that only the parts of the schema defined by these arguments should be logged, otherwise the complete schema would be logged when logging is enabled.
sourceLinesToLog : Specifies the Express-X source line intervals that should be logged during the conversion process. A source line interval is specified either as the name of a declaration of type: map, compose, statements, function and procedure, or by a single line number or by the first line number and the last line number separated by the hyphen '-' character. Any number of intervals can be specified, the intervals are separated by a comma. The order of the intervals is not significant. Example: ?10, 20-30, 2000 - 2200, 99, Man2Woman? This argument and the <declarationsToLog> argument specifies that only the parts of the Express-X schema defined by these arguments should be logged, otherwise the complete schema would be logged when logging is enabled.
logFile : Name of log file.
maxLogFileSize : Max size of log file in bytes. Relevant only when the XPXRING_FILE option is set.
options : A sum of one or more of the following symbols. (for instance XPXLOG_TO_FILE+XPXLOG_ERRORS) Options should be set to zero when no options are wanted.
XPXFULL_LOG |
XPXLOG_AGGREGATE_CONTENTS |
XPXLOG_ASSIGNMENTS |
XPXLOG_CONDITIONS |
XPXLOG_ERRORS |
XPXLOG_FUNCTIONS |
XPXLOG_EXPRESSIONS |
XPXLOG_INSTANCE_CREATION |
XPXLOG_IMPLICIT_CREATION |
XPXLOG_PREDEF_FUNCTIONS |
XPXLOG_ITERATIONS |
XPXLOG_TO_STDOUT |
XPXLOG_TO_FILE |
XPXRING_FILE |
XPXLOG_WARNINGS |
XPXUSER_OUTPUT_TO_STDOUT |
XPXUSER_OUTPUT_TO_FILE |
|