[EDIT 2010 08 05:
The problem affects any field that has both a column and a row equation.
Fix :
1- Column equations should always have priority over row equations
2- Column equations shouldn't consider a "null" result as valid and supersede row equations results (hence emptying the field...). In these cases, Row equations should have priority and supersede the "null" result of the Column equations. (i.e. : if there are children with null values under a parent, the "null" result shouldn't supercede the row equation and erase it.)
]This problem affect any item that has : a column equation AND a row equation
The main problem is that whenever a parameter directly affecting an equation is touched, the direct corresponding equation is recalculated (i.e. : I modify the DueDate of a parent-item, and it's urgency is recalculated), but the current item's AND/OR parent's transversal equation isn't (i.e. : the column equation of that same item isn't updated).
Example :
1- if I modify a parameter affecting the row equation (equivalent to "touch" a field affecting the equation) of an item-parent, the row equation is performed, but not the column equation (i.e. : even if it's a parent, the column equation Sum(parents) isn't recalculated).
2- If I modify an item-child affecting a column equation (or "touch" a field affecting the column equation), the column equation is performed so that the parent's result is modified accordingly, but the parent's row equation won't be calculated. This is usually NOT a problem, except when the column equation is conditional and the sub-items don't meet the condition. The conditional equation is still taken into account (it shouldn't) and gives a NULL result which is reported up to the parent.
All these problems are approximately fixed if I go to the cell where the calculation is erroneous and press shift-F9.
Then both equations are performed and the priority between column/row is ok. However, we shouldn't have to correct calculations manually.
(Also like I said at the beginning of this post, it seems to me that a conditional column equation shouldn't calculate anything when the subs don't meet the condition, hence a null result shouldn't appear in the parent. The parent's value, especially if entered by the user or calculated with a row equation, should remain untouched. I will create another issue for that.)
(Also like I said at the beginning of this post, it seems to me that a conditional column equation shouldn't calculate anything when the subs don't meet the condition, hence a null result shouldn't appear in the parent. The parent's value, especially if entered by the user or calculated with a row equation, should remain untouched. I will create another issue for that.)
=============
[Older bebugging]
==============
Steps :
0- Create a new number field : [
numericfield3
]in this field :
1- Insert a row equation , e.g. :
[numericfield1]+[numericfield2
] (both fields should also be number fields ; it's possible to create them or use already existing ones)2 a- Insert a simple conditional hierarchical equation (ideally a Y/N field),
e.g. mySum(adrsbook
b- The equation should be set to automatic recalc.
Now, in a grid
3- show
[numericfield
1], [numericfield
2], [numericfield3
], [adrsbook] as columns (for simplicity...) :4- create a simple hierarchy with one TLI and 2-3 subs.
5- all subs and the TLI have the [adrsbook] field checked
6- insert values in
[numericfield
1] and [numericfield
2] for all subs, but not for the TLI. (The Row equation will calculate the sum :
[numericfield1]+[numericfield2
] and show it in [numericfield
3] )7- The TLI's [
numericfield
3] should now indicate the total sum of all sub's [numericfield
3] (i.e. : The hierarchical calculation is performed)Until now, everything is working as expected...
but now :
8- uncheck the TLI's YN field [adrsbook].
The Row equation seems to be re-performed and now the TLI's [field3] = 0 (instead of the sum of all subs).
Shift F9 will correct the problem and show the right hierarchical total.
IMO, this shouldn't be since :
a- Hierarchical/column equations have priority over row equations
b- all subs still meet the conditions hence, the column (hierarchical) equation should be performed normally.
c- automatic recalc. has been set in the field options.
The [
numericfield
3] value of the TLI shouldn't change...Thanks for looking at it.
Comments
2- If I modify an item-child affecting a column equation (or "touch" a field affecting the column equation), the column equation is performed so that the parent's result is modified accordingly, but the parent's row equation won't be calculated. This is usually NOT a problem, except when the column equation is conditional and the sub-items don't meet the condition. The conditional equation is still taken into account (it shouldn't) and gives a NULL result which is reported up to the parent.
All these problems are approximately fixed if I go to the cell where the calculation is erroneous and press shift-F9.