Performance
FINDITEM without a blank check
FINDITEM still searches the list when the text is blank, so guard it with IF ISBLANK(Code) THEN BLANK ELSE FINDITEM(List, Code).
What MaxCheck detects
FINDITEM in a line item of 1,000,000 cells or more, with no IF around it that tests the searched text for blank (ISBLANK, ISNOTBLANK, = "" or a test on the same name), and no earlier ISBLANK or ISNOTBLANK of that text in an AND or OR. Text that can't be blank (a literal, CODE or NAME of ITEM) is skipped.
Why it hurts
FINDITEM on a blank value still searches the list before it returns blank. When most cells are blank, most of that work is wasted.
Example
Taken from the rule's own test cases: formulas it must flag, and formulas it must not.
HintFlags this(unguarded)
- Format: List: Products
- 2,000,000 cells
Fine (ISBLANK guard)
- Format: List: Products
- 2,000,000 cells
How to fix
Guard it: IF ISBLANK(Code) THEN BLANK ELSE FINDITEM(List, Code).
- Severity
- HintShown in the report. Hints never count toward a score.
- Area
- Performance
- Runs in
- Basic and full check
- Rule ID
- P_FINDITEMBLANK
- Version
- Rule 1.0.0, rule set 1.4.0
- Planual
- 2.02-15 Avoid using FINDITEM on blank valueson Anaplan's Formulas page
Does your model do this?
Upload the line-items blueprint. This rule runs in the basic check, in your browser, with no email.