on 06-19-2012 5:49 AM
When creating rule to Resource Driver to calculate RD using REASSACTMENTLINEITEMVALUE table (grid). We tried to use POSTREASSIGNLINEITEMVALUE, REASSIGNACTIVITYLINEITEMVALUE function’s in "Detailed Resource Driver Split Rule". When we running this function’s our system begin work very slowly.
We tried to use RESTRICTDIMENSION, RESTRICTDIMENSIONPARENT function’s to limit scope. When we using it, calculation result is null.
Rule code:
Function CellValue
RestrictDimensionParent("LINE ITEM","GR106")
CellValue = ReassignActivityLineItemValue(,,"CO7200")
End Function
Table REASSACTMENTLINEITEMVALUE content:
Periods | Responsobility Center | Line Item | Target Responsobility Center | Target Activity | ReassignActivity LineItemValue |
201201 | CO7200 | 4301_98_0000 | CO7200 | UX13 | -56545018 |
201201 | CO7200 | 7101_98_0000 | CO7200 | UX13 | -83379000 |
201201 | CO7200 | 7102_98_0000 | CO7200 | UX13 | -133716000 |
201201 | CO7200 | 4301_98_0000 | CO7201 | UI01 | 514902,79 |
201201 | CO7200 | 7101_98_0000 | CO7201 | UI01 | 759254,87 |
201201 | CO7200 | 7102_98_0000 | CO7201 | UI01 | 1217627 |
201201 | CO7200 | 4301_98_0000 | CO7205 | UI01 | 14980562 |
201201 | CO7200 | 7101_98_0000 | CO7205 | UI01 | 22089732 |
201201 | CO7200 | 7102_98_0000 | CO7205 | UI01 | 35425594 |
201201 | CO7200 | 4301_98_0000 | CO7207 | UI01 | 10556919 |
201201 | CO7200 | 7101_98_0000 | CO7207 | UI01 | 15566806 |
201201 | CO7200 | 7102_98_0000 | CO7207 | UI01 | 24964693 |
201201 | CO7200 | 4301_98_0000 | CO7211 | UI01 | 2579500,8 |
201201 | CO7200 | 7101_98_0000 | CO7211 | UI01 | 3803627,7 |
201201 | CO7200 | 7102_98_0000 | CO7211 | UI01 | 6099927,9 |
201201 | CO7200 | 4301_98_0000 | CO7212 | UI01 | 264085,05 |
201201 | CO7200 | 7101_98_0000 | CO7212 | UI01 | 389409,15 |
201201 | CO7200 | 7102_98_0000 | CO7212 | UI01 | 624500,58 |
201201 | CO7200 | 4301_98_0000 | CO7214 | UI01 | 5616786,1 |
201201 | CO7200 | 7101_98_0000 | CO7214 | UI01 | 8282285,9 |
201201 | CO7200 | 7102_98_0000 | CO7214 | UI01 | 13282411 |
201201 | CO7200 | 4301_98_0000 | CO7215 | UI01 | 169344,79 |
201201 | CO7200 | 7101_98_0000 | CO7215 | UI01 | 249708,99 |
201201 | CO7200 | 7102_98_0000 | CO7215 | UI01 | 400461,59 |
201201 | CO7200 | 4301_98_0000 | CO7217 | UI01 | 3472550,7 ... |
Maybe we using wrong function’s, or wrong using this function’s? Help please.
Hi Ivan,
The only way to calculate Resource Drivers Splits to be equal to a post-reassignment activity value in PCM, is to use several versions or to use an export-import console script. You might also need 1 driver for each lineitem depending on what you are trying to achieve.
If you go for the versions, the first version will calculate the reassigned values. The rule restricted on the second version will then be able to 'read' these values from the first version, populate the ressourcedriversplits and perform the full calculation.
Another issue with the rule that you are trying to setup is that the restriction is on the line item dimension, which is not part of the grid value you are calculating (resourcedriversplits are by version, period, RC and activity).
Allocating costs to the prorata of already allocated costs means that the business rule is not mature enough and you migth want to find a better suited driver. But this is another debate.
Hope this helps
Best regards
Thomas
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
ok . Thank you for answer.
we calculated RD on the different version than version on what our data stored.
How can i use the calculated RD in Resource Driver Assignment ? (when RD is stored on the other version that data)
PS when i tried to copy RD data from one RD member to another, changing version to version on what data is stored, the server goes down .
Hi Thomas,
I need help in applying rule to Resource Driver splits. This rule is in the same model and not cross models.
The Resource driver is calculated using rule = per unit driver multiplied by product mix using Detailed Resource Driver rule.
I need to apply Resource driver split to various activities. When i use Detailed resource driver split rule, If there are 5 activities , the rule against a RD gets applied to all activities instead of the desired activity.
Please let me ho to apply rules to Resource driver split rules for specific activities only and not all activities.
Thanks,
Sweta
Hi Sweta
By default vbscript rules apply to every combination of the grid value dimension. The simplest way to restrict the application of the rules is by using the key words restrictdimension and restrictdimensionparent.
In your case you could either use restrictdimension as many times as needed (once for each activity), or group these activities with a dimnsion attribute then use restrictdimensionparent with this attribute.
Best regards,
Thomas
Thanks for the quick response.
I used RestrictDimension and was able to apply a rule to a specific activity.
But lets assume Resource driver value for labor = 40000
Act 1 = 10000
Act 2 = 20000
Act 3 = 7000
I wrote the below script
Function CellValue
RestrictDimension("Activities","Act1")
CellValue = 10000
End Function
with the above script , I am able to assign 10000 to Act 1, but how do I assign 20000 to Act 2 and 3000 to Act3.
Would really appreciate your help on this.
Thanks,
Sweta
Sweta
Please do not forget that populating resource driver values or splits (or activity driver values) instead of using vbscript rules is much faster when it is time to calculate the model.
The key words supported by VBScript are supported by PCM as it is using by default the windows library. You can use variables and a select...case statement. The rule would then look like this:
Function cellvalue()
RestrictDimension("Activities","Act1")
RestrictDimension("Activities","Act2")
RestrictDimension("Activities","Act3")
Dim RDS
select case itemname(currentactivity) 'I am guessing that "Actn" is the default alias
case "Act1"
RDS=10000
case "Act2"
RDS=20000
case "Act3"
RDS=70000
end select
CellValue=RDS
End function
regards,
Thomas
Sorry for double posting
Sweta
Please do not forget that populating resource driver values or splits (or activity driver values) instead of using vbscript rules is much faster when it is time to calculate the model.
The key words supported by VBScript are supported by PCM as it is using by default the windows library. You can use variables and a select...case statement. The rule would then look like this:
Function cellvalue()
RestrictDimension("Activities","Act1")
RestrictDimension("Activities","Act2")
RestrictDimension("Activities","Act3")
Dim RDS
select case itemname(currentactivity) 'I am guessing that "Actn" is the default alias
case "Act1"
RDS=10000
case "Act2"
RDS=20000
case "Act3"
RDS=70000
end select
CellValue=RDS
End function
regards,
Thomas
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.