on 2021 Aug 19 6:33 PM
Hi experts,
I have a requirement for copying rates from one period to the following 11 months. The user will be selecting the 11 time periods following the current period. I have this script logic developed below on my own.
*XDIM_MEMBERSET VERSION = ACTUAL
*XDIM_MEMBERSET TIME = %TIME_SET%
*RUNALLOCATION
*FACTOR=1
*DIM TIME WHAT=%TIME_SET%; WHERE=%TIME_SET%; USING=<<<; TOTAL=<<<
*ENDALLOCATION
And the advanced script is modified like below:
PROMPT(SELECTINPUT,%SOURCETIME%,,"Select Source Time","%TIME_DIM%")
PROMPT(SELECTINPUT,%TARGETTIME%,,"Select Target Time","%TIME_DIM%")
INFO(%EQU%,=)
INFO(%TAB%,;)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,EQU,%EQU%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,TAB,%TAB%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,MEMBERSELECTION,SOURCETIME%EQU%%SOURCETIME%%TAB%TARGETTIME%EQU%%TARGETTIME%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SUSER,%USER%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SAPPSET,%APPSET%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SAPP,%APP%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SELECTION,%SELECTION%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,LOGICFILENAME,COPY_RATES.LGF)
But my package is failing with the error : Invalidate selection condition
model: Rates. Package status: ERROR
Request all of you to help me in executing the DMP successfully please.
Thanks,
Chandrakanth.K
First of all you have to remove this line:
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SELECTION,%SELECTION%)
%SELECTION% variable is not assigned
Then you can't use %TIME_SET% in your script - it's empty.
You have 2 variables to be used in script logic:
$SOURCETIME$
$TARGETTIME$
Or you can use another approach (use %SELECTION% for Source Time):
PROMPT(SELECTINPUT,%SELECTION%,,"Select Source Time","%TIME_DIM%")
PROMPT(SELECTINPUT,%TARGETTIME%,,"Select Target Time","%TIME_DIM%")
INFO(%EQU%,=)
INFO(%TAB%,;)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,EQU,%EQU%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,TAB,%TAB%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,MEMBERSELECTION,TARGETTIME%EQU%%TARGETTIME%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SUSER,%USER%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SAPPSET,%APPSET%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SAPP,%APP%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SELECTION,%SELECTION%)
TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,LOGICFILENAME,COPY_RATES.LGF)
With the script:
*XDIM_MEMBERSET VERSION = ACTUAL
*RUNALLOCATION
*FACTOR=1
// %TIME_SET% will contain Source Time from %SELECTION%
// $TARGETTIME$ will contain Target time periods from %%TARGETTIME%
*DIM TIME WHAT=%TIME_SET%; WHERE=$TARGETTIME$
*ENDALLOCATION
P.S. In future, please, use CODE button to insert code text for readability.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
9 | |
5 | |
4 | |
3 | |
3 | |
2 | |
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.