I found similar topic - "Named Formulas Issue: Update cached value when dependent variables change", and posted some reponces.
Initially I think it was related to the some Table/Collections functions.
But issue is more global - if formula has to return an empty value, by some reasons, in fact it will return a previous value, cached by unknown reasons.
There is a simple way to reproduce:
- Create a new app;
- Create a toggle named "ToggleSimple";
- Create a two functions:
formulaSimpleOne = If(ToggleSimple.Value, Blank(), "Non-empty");
formulaSimpleTwo = If(ToggleSimple.Value, "Non-Blank", "Non-empty");​
- And two Labels:
- "LabelSimpleLocal" with Text:
"Local: Check1 - '" & If(ToggleSimple.Value, Blank(), "Non-empty") & "', Check2 - '" & If(ToggleSimple.Value, "Non-Blank", "Non-empty") & "'"
- "LabelSimpleFormula" with Text:
"Formula: Check1 - '" & formulaSimpleOne & "', Check2 - '" & formulaSimpleTwo & "'"​
And simple run and toggle a toggle:


I.e., when both - local calculation and formulas returns any value (text strings "Non-Blank" or "Non-empty") everything is fine.
But when it has to return empty (Blank()) value - local calculation is done right way, i.e. empty, but formula returns previous value, i.e. "Non-empty".
In my production application I have a lot of formulas and calculations dependent on Blank() or non Blank() values. And now there is a real mess inside. I can't support it, due to can't edit it, as logic is broken.