Can't save data for a member in a data form
Implied sharing is an
old thing everyone knows the reasons and solutions of that, still
little theory about that:
With Essbase implied
sharing, some members are shared even if you do not explicitly set them as
shared. These members are implied shared members. When an implied share
relationship is created, each implied member assumes the other member’s value.
Essbase assumes (or implies) a shared member relationship in these situations:
1. A parent has
only one child
2. A parent has
only one child that consolidates to the parent
In a Planning form
that contains members with an implied sharing relationship, when a value is
added for the parent, the child assumes the same value after the form is saved.
Likewise, if a value is added for the child, the parent usually assumes the
same value after a form is saved.For example, when a calculation script or load
rule populates an implied share member, the other implied share member assumes
the value of the member populated by the calculation script or load rule. The
last value calculated or imported takes precedence. The result is the same
whether you refer to the parent or the child as a variable in a calculation
script. For more information have a look at:
Now the issue which we
are going to talk about is We loose data on save even when the parent is dynamic
calc and has a single child.
A dynamic calc parent
to a single child:
In the data form we will
find parent below the member and this is by design whenever you make a
selection using commands to select all the member below parent, always children
will appear before the parent:
Lets try to enter
data,
Save it
Now, try to change the
way we selected members
Here we go:
Now the question again
why this behavior:
1. Data from Planning
data form passes to Essbase row by row,
2. Because in data
form the child member appears before the parent,
3. First, data goes
to Essbase for child (SingleStoreChild),
4. Then when Planning
passes the data for parent there was #Missing or No data,
5. Over writes the
data to #missing.
PS: As we know that
dynamic calc members are calculated on the fly they are not allocated with any
memory in the Essbase, here the parent was dynamic calc and it was
pointing to same memory as child in the background, when Planning was passing
data to Essbase for second row it has updated the child with missing
data.(Little confusing, let me know if you need more explanation)
6. As one of the
solutions just change the order of appearance of parent and child.
Cheers..!!!
Rahul S.
Rahul S.
Awesome! I've been having this problem for a while and this fixed it. I changed my form to only show the level 0 and it worked. However, I assume there is no way to "fix" this for an IDESCENDANT row in a form...that is, if i have a large form - a balance sheet for example - and I want the form to have "IDescendants(Assets)" but also show the parent members to give subtotals.
ReplyDeletethanks again for the post - at least I know i'm not completely crazy!