21%macro irmst_enrich_mip_results(
24 in_mip_portfolio_ds = ,
25 reverse_rename_stmt = ,
36 %let result_var_list = %rsk_getvarlist(&in_mip_result_ds);
37 %
do i = 1 %to %irm_wordcount(&join_vars);
38 %let result_var_list = %sysfunc(prxchange(s/\b%scan(&join_vars,&i)\b
40 %let result_var_list_csv = %sysfunc(prxchange(s/\s+/%str(, )/i, -1, &result_var_list.));
44 set &in_mip_portfolio_ds.
45 %
if(%sysevalf(%superq(reverse_rename_stmt) ne,
boolean)) %then %
do;
46 (rename = (&reverse_rename_stmt.))
51 length MOVEMENT_ID 8. MOVEMENT_DESC $100.;
54 MOVEMENT_DESC
"01. Model Output"
58 activationScenario = activation_scenario
59 activationHorizon = activation_horizon
63 set &in_mip_result_ds.;
66 declare hash hResult(dataset:
"&in_mip_result_ds.", multidata:
"yes");
67 hResult.defineKey(
"instid");
68 hResult.defineData(all:
"yes");
73 call missing(&result_var_list_csv.);
74 __rc__ = hResult.find();
76 if (__rc__ = 0) then
do;
80 %
if &dma_expansion_flg eq Y %then %
do;
81 synthetic_instrument_flg =
'N';
85 if(synthetic_instrument_flg =
"N" or activationScenario = scenario_id) then
89 call missing(&result_var_list_csv.);
90 __rc__ = hResult.find_next();
98%mend irmst_enrich_mip_results;