30%irm_session_prepare();
34 create table bep_x_mrs_x_rsm as
37 , t1.mrs_key as mrsKey
44 , t3.scenarioId as rsmScenarioId
45 , t3.scenarioName as rsmScenarioName
48 &ds_in_bep_x_mrs_config. as t1
50 &ds_in_bep_summary. as t2 on
53 &ds_in_mrs_scenarios as t3 on
64data &ds_out_scenario_info.;
78 forecastTime = sum(forecastTime, 0);
80 scenarioId = catx(
"_", bepShortName, mrsShortName, cats(
"FT", forecastTime));
82 if first.forecastTime and last.forecastTime then
84 scenarioName = catx(
" - ", bepName, mrsName, rsmScenarioName);
87 scenarioName = catx(
" - ", bepName, mrsName, cats(
"FT", forecastTime));
90data tmp_scenario_data;
95 set &ds_in_rsm_scenario_data(rename = (master_risk_scenario_key = mrsKey
96 master_risk_scenario_name = mrsName
97 scenario_id = rsmScenarioId
98 scenario_name = rsmScenarioName
102 declare hash hScenInfo(dataset:
"&ds_out_scenario_info.", multidata:
"yes");
103 hScenInfo.defineKey(
"analysis_run_id",
"mrsKey",
"rsmScenarioId");
104 hScenInfo.defineData(
"scenarioId",
"scenarioName");
105 hScenInfo.defineDone();
109 call missing(scenarioId, scenarioName);
110 do while(hScenInfo.do_over() eq 0);
112 if(date <= base_dt) then
113 call missing(scenarioId, scenarioName);
119proc sort data = tmp_scenario_data
120 out = tmp_scenario_data_srt nodupkey;
132proc transpose data = tmp_scenario_data_srt
133 out = &ds_out_scenario_data. (drop = _name_);
147proc sort data = &ds_out_scenario_info. (drop = rsmScenarioId rsmScenarioName) nodupkey;
154proc sort data = &ds_out_scenario_data. nodupkey;