action_="compcheck"
<do action_="compcheck">
performs a
compatibility check on a given 1010data query. (Available as of version
10.27)
Description
This action checks for differences in the expression grammar in a given 1010data query,
specifically with respect to operator precedence, between the pre-Version 10 parser and the
Version 10 parser. It does not test block code; however, issues may be caught when expanding
block code prior to using this transaction, especially if using "paranoid" mode, which
throws an error when a compatibility issue is found during execution). In addition, it
cannot "peek" inside libraries and block definitions that are not expanded. Nor can it find
issues inside <dynamic>
and <loop>
, since in the
general case queries run by these forms could be dynamically constructed. The final word on
whether an old query or application is compatible with a new version comes down to whether
it runs without error and doesn't produce discrepant results.
Syntax
<dynamic comp_issues=""> <do action_="compcheck" value_="@comp_issues"> [1010data_QUERY] </do> </dynamic>
Attributes for action_="compcheck"
value_
- The potential compatibility issues in the query are stored as a table value in the
dynamic variable associated with this attribute. The table contains one row for each
issue.The columns in the table are:
change
- The change that was made, which may be at issue.
For example,
grammar_v10
refers to the precedence changes in Version 10. version
- The first version where the change was made.
address
- A comma-separated list of indices into the nested operations pointing to the offending operation.
op
- The type of operation.
detail
- Details about the issue.
For example, the expression is provided for
grammar_v10
.
The variable must be declared in the opening
<dynamic>
tag of the QuickApp (e.g.,<dynamic var_name="">
).