Page 1 of 1

ISSUE IN FEEDING FROM CONSOLIDATION TO N LEVEL ELEMENT

Posted: Wed Aug 08, 2012 9:24 pm
by Jodha
i have feeders issue of the following rule
Skipcheck;
[x,y] = N:IF(Z<>0 ,1-Z,1);

Feeders
Z => DB(IF(z <>0 ,SameCube, '') ,!dim1...!dim4,X,Y)


here "Z" is consolidated element with 13 chidrens when this consolidation is non -zero rule works fine
but when Consolidation has zero values then i have feeding issue as we need to have atleast one child to have a value to feed from C level to N level
so i created a dumy N level elemnt "No Value " under Z Consolidation as used this for rule

[No value] =1; and included feedeer statement
[No value] => Z;

my final rule look like this

Skipcheck;
[No value] =1;
[x,y] = N:IF(Z<>0 ,1-Z,1);

Feeders;
[No value] => Z;
Z => DB(IF(z <>0 ,SameCube, '') ,!dim1...!dim4,X,Y)

what i need to modify in feeder statement to make this rule work for all cases.

Re: ISSUE IN FEEDING FROM CONSOLIDATION TO N LEVEL ELEMENT

Posted: Wed Aug 08, 2012 9:49 pm
by declanr
Jodha wrote:[x,y] = N:IF(Z<>0 ,1-Z,1);
With the above code [x,y] will pretty much always have a value, unless Z is quite often 1?

In the event that Z is often 1 and therefore [x,y] is often 0 then a conditional feeder could make sense BUT if it always has a value then you may as well just always feed it from something that has a value.

I bolded something above due to the fact that although [x,y] is derived from Z it doesn't need to be fed from Z so it can be fed from anything with a value.

Re: ISSUE IN FEEDING FROM CONSOLIDATION TO N LEVEL ELEMENT

Posted: Wed Aug 08, 2012 11:13 pm
by Jodha
"I bolded something above due to the fact that although [x,y] is derived from Z it doesn't need to be fed from Z so it can be fed from anything with a value. "


i made changes in feeder statement from

Z => DB(IF(z <>0 ,SameCube, '') ,!dim1...!dim4,X,Y)

to

['NO Value'] => DB(IF(z <>0 ,SameCube, '') ,!dim1...!dim4,X,Y)

because ['No Value'] element has always value 1 and still same problem i cannot values for [X,Y] under Zero Suppression correct me i am missing any thing
Thanks for the replay

Re: ISSUE IN FEEDING FROM CONSOLIDATION TO N LEVEL ELEMENT

Posted: Wed Aug 08, 2012 11:25 pm
by declanr
Jodha wrote:"I bolded something above due to the fact that although [x,y] is derived from Z it doesn't need to be fed from Z so it can be fed from anything with a value. "


i made changes in feeder statement from

Z => DB(IF(z <>0 ,SameCube, '') ,!dim1...!dim4,X,Y)

to

['NO Value'] => DB(IF(z <>0 ,SameCube, '') ,!dim1...!dim4,X,Y)

because ['No Value'] element has always value 1 and still same problem i cannot values for [X,Y] under Zero Suppression correct me i am missing any thing
Thanks for the replay

['No Value'] is also rule derived so you will need to feed those elements in order to be able to feed from them. An easier method could be to build a 2d control cube and have a 1 in there to feed from.

HTH

Re: ISSUE IN FEEDING FROM CONSOLIDATION TO N LEVEL ELEMENT

Posted: Wed Aug 08, 2012 11:33 pm
by Jodha
thanks for the fast replay
is there any other way to achieve this apart from build 2d cube

Re: ISSUE IN FEEDING FROM CONSOLIDATION TO N LEVEL ELEMENT

Posted: Thu Aug 09, 2012 1:09 am
by BigG
I am unsure if I am following this correctly, but feeder works when values in children of z (beacause of the condition in the feeder DB(IF(z <>0 >?

It is when z is zero with no values in children you have an issue feeding the other part of the rule - then false output of 1 ? [x,y] = N:IF(Z<>0 ,1-Z,1);

Two options you can try (depending on the problem):

1) hard code 'Z' element into the conditional statement for the feeder, because you are feeding from a consolidated element it needs to be for feeders I believe (as opposed to !Z dimension ref, dont think this works). You may be doing this anyway, but the example is hard to see this

2) create a conditional feeder for the false side of condition in rule? [No value] => DB(IF(z =0 ,SameCube, '') ,!dim1...!dim4,X,Y)

Re: ISSUE IN FEEDING FROM CONSOLIDATION TO N LEVEL ELEMENT

Posted: Thu Aug 09, 2012 2:55 am
by Harvey
Jodha wrote:i have feeders issue of the following rule
[x,y] = N:IF(Z<>0 ,1-Z,1);
Maybe I'm being daft here, but when Z does equal 0, then subtracting it from 1 will be 1 in both clauses of your IF statement. Hence, isn't

[x,y] = N: 1 - Z;

functionally the same rule?

However, that doesn't solve your feeling problem!

It's a little difficult to comment on that without understanding what you're trying to achieve. I'd look into feeding from another value for this, or having a dummy value that is always 1 to feed from.

Re: ISSUE IN FEEDING FROM CONSOLIDATION TO N LEVEL ELEMENT

Posted: Thu Aug 09, 2012 7:31 pm
by Jodha
Thanks Guys for the Replay's
I created an dummy element and feed that element with a value all time and used this in feeders
your suggestions really helped a lot, this forum rocks.