Page History
Explanation
This rule analyses all expressions and determines whether they are complex by the following criteria:
- more than five logical operators, such as AND or OR logical operators
- more than two nested COLLECT depth of 3statements
We estimate that resolving this issue will on average take 30 minutes.
Parameters
This rule can be configured using the following parameters:
maxLogicalOperations | The maximum acceptable number of AND or OR logical operations for an expression to not be considered complex. |
maxNestedCollects | The maximum acceptable number of nested COLLECT statements for an expression to not be considered complex. |
Possible improvement
Try to split up some part of the expression, either as reusable expression or in , using an intermediate attribute or using a local variable. If this is not possible make sure to put comments in the expression explaining what is happening.
Example
This expression is considered too complex (and unnecessarily complex as well, because the desired result could simply be achieved by SUM( COLLECT Person.PersonalPremium FROM ALL Person )! )
...
It results in this code smell: