41%macro irmst_run_atm_overlay(in_model_tm_results =
43 , scenario_to_overlay =
44 , analysis_data_name =
45 , analysis_data_desc =
55 , out_atm_results_key_var = atm_results_key
56 , out_exceptions = work._atm_upload_exceptions
57 , out_analysis_data = work._atm_upload_analysis_data
58 , out_partition_list = work._atm_upload_partition_list
59 , out_data_definition = work._atm_upload_data_definition
60 , out_link_instance = work._atm_upload_link_instance
72 scenario_to_overlay_quoted;
77 %
if %qupcase(&debug) in (Y YES 1 TRUE) %then
85 %
do scen_i=1 %to %sysfunc(countw(%superq(scenario_to_overlay), %str(,)));
86 %let scen_nm = %upcase(%scan(%superq(scenario_to_overlay), &scen_i., %str(,)));
88 %let scenario_to_overlay_quoted = &scenario_to_overlay_quoted.
"&scen_nm.";
94 %
if %sysevalf(%superq(scenario_to_overlay_quoted) ne,
boolean) and
95 %sysevalf(%superq(in_atm_upload) eq,
boolean) %then
97 %put WARNING: ATM upload is not specified.;
100 %
if %sysevalf(%superq(scenario_to_overlay_quoted) eq,
boolean) and
101 %sysevalf(%superq(in_atm_upload) ne,
boolean) %then
103 %put WARNING: No scenario(s) are specified to perform ATM overlay.;
110 %
if %sysevalf(%superq(scenario_to_overlay_quoted) ne,
boolean) and
111 %sysevalf(%superq(in_atm_upload) ne,
boolean) %then
117 create table work.tm_results_w_overlay as
118 select tm.modeling_system_name label=
"Modeling System Name",
119 tm.modeling_system_version label=
"Modeling System Version",
120 tm.model_group_name label=
"Modeling System Group name",
121 tm.business_evolution_plan_name label=
"Business Evolution Plan Name",
122 tm.master_risk_scenario_name label=
"Master Risk Scenario Name",
123 tm.mip_scenario_name label=
"MIP Scenario Name",
126 tm.from_risk_rating label=
"From Risk Rating",
127 tm.to_risk_rating label=
"Migrated Risk Rating",
128 coalesce(atm.migrate_prob, tm.transition_probabilities) as transition_probabilities label="Transition Probabilities",
129 tm.order_num label="Order Number"
130 from &in_model_tm_results. as tm
132 &in_atm_upload as atm
133 on upcase(tm.model_group_name) eq upcase(atm.model_group_name) and
134 intnx("month", tm.scenario_date, 0, 'e') eq intnx("month", atm.scenario_date, 0, 'e') and
135 upcase(tm.from_risk_rating) eq upcase(atm.from_rating) and
136 upcase(tm.to_risk_rating) eq upcase(atm.to_rating) and
137 upcase(catx(' - ',tm.business_evolution_plan_name,tm.master_risk_scenario_name)) in (&scenario_to_overlay_quoted)
138 order by tm.order_num;
144 %let httpSuccess = 0;
145 %let responseStatus = ;
146 %let ticket_tm_upload = ;
148 %irm_rgf_store_analysis_data(ds_in = work.tm_results_w_overlay
149 , analysis_data_name = %superq(analysis_data_name)
150 , analysis_data_desc = %superq(analysis_data_desc)
151 , base_date = &base_date.
152 , cycle_id = &cycle_id.
153 , status_cd = &status_cd.
154 , visibility_cd = &visibility_cd
155 , analysis_run_id = &analysis_run_id.
156 , data_definition_name = %superq(analysis_data_name)
157 , data_definition_desc = %superq(analysis_data_desc)
159 , schema_name = &schema_name.
160 , schema_version = &schema_version.
161 , entity_id = &entity_id.
162 , out_exceptions = &out_exceptions.
163 , out_analysis_data = &out_analysis_data.
164 , out_partition_list = &out_partition_list.
165 , out_data_definition = &out_data_definition.
166 , out_link_instance = &out_link_instance.
169 , solution = &solution.
171 , tgt_ticket = %superq(rgf_tgt_ticket)
172 , outVarTicket = ticket_upload
173 , outSuccess = httpSuccess
174 , outResponseStatus = responseStatus
178 set &out_analysis_data.;
179 call symputx("&out_atm_results_key_var",key, 'g');
185 %if %qupcase(&_debug_.) eq NO %then
188 drop table work.in_model_tm_results,
189 work._atm_upload_partition_list,
190 work._atm_upload_exceptions,
191 work._atm_upload_analysis_data,
192 work._atm_upload_partition_list,
193 work._atm_upload_data_definition,
194 work._atm_upload_link_instance
199%mend irmst_run_atm_overlay;