on 11-22-2014 11:31 PM
Hi Experts!
I'd like to make an allocation across the dimension D_KTGH, and have the following allocation logic:
*SELECT(%TEV%,"[VALUE]",D_PAR,"[ID]='D_TERVEV_V'")
*SELECT(%IDO1%,"[ID]",D_IDO,"[VARH_PER]='1'")
*SELECT(%IDO2%,"[ID]",D_IDO,"[VARH_PER]='2'")
*XDIM_MEMBERSET D_AKCIO AS %AKCIO_ALL%=BAS(D_AKCIO_ALL)
*FOR %AKCIO%=%AKCIO_ALL%
*XDIM_MEMBERSET D_IDO=X
*XDIM_MEMBERSET D_TERVEV=X
*XDIM_MEMBERSET D_MUTATO=OSSZEG
*XDIM_MEMBERSET D_ERTIP=X
*XDIM_MEMBERSET D_PC=T3102
*XDIM_MEMBERSET D_KTGN=9111000000
*RUNALLOCATION
*FACTOR=USING/TOTAL
*DIM D_KTGH WHAT=X; WHERE=>>>; USING=BAS(D_KTGH_ALL); TOTAL=<<<
*DIM D_IDO WHAT=2013.001; WHERE=<<<; USING=X; TOTAL=<<<
*DIM D_TERVEV WHAT=%TEV%; WHERE=<<<; USING=X; TOTAL=<<<
*DIM D_VERZIO WHAT=V01; WHERE=<<<; USING=X; TOTAL=<<<
*DIM D_AKCIO WHAT=%AKCIO%; WHERE=<<<; USING=X; TOTAL=<<<
*DIM D_ERTIP WHAT=30; WHERE=<<<; USING=X; TOTAL=<<<
*DIM D_MUTATO WHAT=OSSZEG; WHERE=<<<; USING=KH_FELOSZT; TOTAL=<<<
*ENDALLOCATION
*NEXT
I have some values on the selected D_PC and D_KTGN on the D_KTGH = "X".
I want to allocate those values on three D_KTGH key, defined in the USING part. The logic allocates as expected, works well. The values from the X D_KTGH will be deleted and according to the allocation keys they are distributed to the D_KTGH keys 100,101,102.
Now I want to change the logic, to ensure that it works if I have values not only on the D_KTGH key X, but on other D_KTGH keys.
I've modified the script and changed the line:
*DIM D_KTGH WHAT=X; WHERE=>>>; USING=BAS(D_KTGH_ALL); TOTAL=<<<
to this
*DIM D_KTGH WHAT=BAS(D_KTGH_ALL); WHERE=>>>; USING=BAS(D_KTGH_ALL); TOTAL=<<<
And it is not working anymore with the same records. D_KTGH_ALL node has the leaf X as well. It just deletes the original values but not allocation them.
What could be the problem?
Thanks!
Ferenc
Hi Ferenc,
When you have same sets of members in WHAT, WHERE and USING, RUNALLOCATION treats it as XDIM_MEMBERSET. I.e., it allocates each member of that Dimension instead of total.
One of the options to avoid that is to add some DUMMY member that doesn't have any postings on it. Then use in WHAT all members while in WHERE remove DUMMY from that set.
Regards,
Gersh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
15 | |
3 | |
2 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.