cancel
Showing results for 
Search instead for 
Did you mean: 

Passing variables from Data manager Package to script logic issue

former_member488614
Participant
0 Kudos

I am trying to pass variable selections from Data manager package to script logic using /CPMB/DEFAULT_FORMULAS DM package, but it doesn't work.It says package status as Success but records are not writing into model.

I tested the script logic using UJKT and it is working fine, am I missing anything here?

DM package code-
PROMPT(SELECTINPUT,,,,"%CATEGORY_DIM%,%TIME_DIM%")
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,LTD_MEASURE.LGF)

Script logic-

*SELECT(%YEAR%,YEAR,TIME,[ID]=%TIME_SET%)
*SELECT(%LTD_TOTAL%,ID,TIME,[ID]>=%YEAR%.01 AND [ID]<=%YEAR%.12)

*XDIM_MEMBERSET TIME=%TIME_SET%
*XDIM_MEMBERSET CATEGORY=%CATEGORY_SET%

*WHEN TIME
*IS %LTD_TOTAL%
*WHEN CATEGORY
*IS $CATEGORY_SET$
*REC(EXPRESSION=%VALUE%,CATEGORY=%CATEGORY_SET%,TIME=%TIME_SET%)
*ENDWHEN
*ENDWHEN

DM Package selections
dm-package-selections.jpg

Package LOG-
/CPMB/MODIFY completed in 0 seconds
/CPMB/DEFAULT_FORMULAS_LOGIC completed in 0 seconds
/CPMB/CLEAR completed in 0 seconds
[Selection]
--------------------------------------------------------------
SELECTION = /ENABLE/PROJECTINPUT/PRIVATEPUBLICATIONS/90001200/TempFiles/FROM.TMP@@@SAVE@@@@@@EXPAND@@@|DIMENSION:CATEGORY|ACTUAL|DIMENSION:TIME|2016.LTD
[Message]
--------------------------------------------------------------
model: PROJECTINPUT. Package status: SUCCESS

Formula LOG-
LOG BEGIN TIME:2017-09-06 09:13:30
FILE:\ROOT\WEBFOLDERS\ENABLE\ADMINAPP\PROJECTINPUT\LTD_MEASURE.LGF
USER:90001200
APPSET:ENABLE
APPLICATION:PROJECTINPUT
[INFO] GET_DIM_LIST(): I_APPL_ID="PROJECTINPUT", #dimensions=7
CATEGORY,COSTELEMENT,DATASRC,MEASURES,PO,PROJECT,TIME

#dim_memberset=2
TIME:2016.LTD,1 in total.
CATEGORY:ACTUAL,1 in total.

SCRIPT RUNNING TIME IN TOTAL:0.00 s.
LOG END TIME:2017-09-06 09:13:30
File path: \ROOT\WEBFOLDERS\ENABLE\PROJECTINPUT\PRIVATEPUBLICATIONS\90001200\tempfiles\20170906091330\LTD_MEASURE.LOG

UJKT Test log-
ujkt-validation.jpg

View Entire Topic
former_member186338
Active Contributor
0 Kudos

If you want to copy all months of the year to special month LTD then the correct code will be:

*SELECT(%YEAR%,YEAR,TIME,[ID]=%TIME_SET%)//%TIME_SET%=2016.LTD,%YEAR%=2016
*SELECT(%LTD_TOTAL%,ID,TIME,[ID]>=%YEAR%.01 AND [ID]<=%YEAR%.12) //%LTD_TOTAL%=2016.01,...,2016.12
*XDIM_MEMBERSET TIME=%LTD_TOTAL% //2016.01,...,2016.12
*XDIM_MEMBERSET CATEGORY=%CATEGORY_SET%
*WHEN TIME
*IS * // scoped to 2016.01,...,2016.12
*REC(EXPRESSION=%VALUE%,TIME=%TIME_SET%) //TIME=2016.LTD
*ENDWHEN

This script will work correctly ONLY if the user will select SINGLE LTD month! For multiple LTD months (2015.LTD,2016.LTD) selection FOR/NEXT loop is required.

former_member186338
Active Contributor
0 Kudos

Then please accept the correct answer and close the question!