feat: 例外処理修正の横展開

This commit is contained in:
高木要 2023-06-30 16:55:31 +09:00
parent 3d7512b4df
commit 3bf951c632
2 changed files with 130 additions and 118 deletions

View File

@ -14,25 +14,31 @@ BEGIN
BEGIN BEGIN
GET DIAGNOSTICS CONDITION 1 GET DIAGNOSTICS CONDITION 1
@error_state = RETURNED_SQLSTATE, @error_msg = MESSAGE_TEXT; @error_state = RETURNED_SQLSTATE, @error_msg = MESSAGE_TEXT;
call medaca_common.put_error_log(schema_name, procedure_name, procedure_args, CALL medaca_common.put_error_log(schema_name, procedure_name, procedure_args,
'inst_merge_t_createでエラーが発生', @error_state, @error_msg); 'inst_merge_t_createでエラーが発生', @error_state, @error_msg);
SET @error_msg = (
CASE
WHEN LENGTH(@error_msg) > 128 THEN CONCAT(SUBSTRING(@error_msg, 1, 125), '...')
ELSE @error_msg
END
);
SIGNAL SQLSTATE '45000' SIGNAL SQLSTATE '45000'
SET MYSQL_ERRNO = @error_state, MESSAGE_TEXT = @error_msg; SET MYSQL_ERRNO = @error_state, MESSAGE_TEXT = @error_msg;
END; END;
SET @error_state = NULL, @error_msg = NULL; SET @error_state = NULL, @error_msg = NULL;
call medaca_common.put_info_log(schema_name, procedure_name, procedure_args, CALL medaca_common.put_info_log(schema_name, procedure_name, procedure_args,
'アルトマーク施設統合マスタ(洗替処理一時テーブル)作成① 開始' 'アルトマーク施設統合マスタ(洗替処理一時テーブル)作成① 開始'
); );
TRUNCATE TABLE internal05.inst_merge_t; TRUNCATE TABLE internal05.inst_merge_t;
call medaca_common.put_info_log(schema_name, procedure_name, procedure_args, CALL medaca_common.put_info_log(schema_name, procedure_name, procedure_args,
'アルトマーク施設統合マスタ(洗替処理一時テーブル)作成① 終了' 'アルトマーク施設統合マスタ(洗替処理一時テーブル)作成① 終了'
); );
call medaca_common.put_info_log(schema_name, procedure_name, procedure_args, CALL medaca_common.put_info_log(schema_name, procedure_name, procedure_args,
'アルトマーク施設統合マスタ(洗替処理一時テーブル)作成② 開始' 'アルトマーク施設統合マスタ(洗替処理一時テーブル)作成② 開始'
); );
@ -53,8 +59,8 @@ BEGIN
ci.inst_addr, ci.inst_addr,
ci.prefc_cd ci.prefc_cd
FROM FROM
src05.dcf_inst_merge dim src05.dcf_inst_merge AS dim
LEFT OUTER JOIN src05.com_inst ci LEFT OUTER JOIN src05.com_inst AS ci
ON dim.dcf_inst_cd_new = ci.dcf_dsf_inst_cd ON dim.dcf_inst_cd_new = ci.dcf_dsf_inst_cd
AND ci.delete_flg = '0' AND ci.delete_flg = '0'
WHERE WHERE
@ -63,7 +69,7 @@ BEGIN
AND dim.enabled_flg = 'Y' AND dim.enabled_flg = 'Y'
AND src05.to_date_yyyymm01(dim.tekiyo_month) <= src05.get_syor_date(); AND src05.to_date_yyyymm01(dim.tekiyo_month) <= src05.get_syor_date();
call medaca_common.put_info_log(schema_name, procedure_name, procedure_args, CALL medaca_common.put_info_log(schema_name, procedure_name, procedure_args,
'アルトマーク施設統合マスタ(洗替処理一時テーブル)作成② 終了' 'アルトマーク施設統合マスタ(洗替処理一時テーブル)作成② 終了'
); );

View File

@ -14,23 +14,29 @@ BEGIN
BEGIN BEGIN
GET DIAGNOSTICS CONDITION 1 GET DIAGNOSTICS CONDITION 1
@error_state = RETURNED_SQLSTATE, @error_msg = MESSAGE_TEXT; @error_state = RETURNED_SQLSTATE, @error_msg = MESSAGE_TEXT;
call medaca_common.put_error_log(schema_name, procedure_name, procedure_args, CALL medaca_common.put_error_log(schema_name, procedure_name, procedure_args,
'v_inst_merge_t_createでエラーが発生', @error_state, @error_msg); 'v_inst_merge_t_createでエラーが発生', @error_state, @error_msg);
SET @error_msg = (
CASE
WHEN LENGTH(@error_msg) > 128 THEN CONCAT(SUBSTRING(@error_msg, 1, 125), '...')
ELSE @error_msg
END
);
SIGNAL SQLSTATE '45000' SIGNAL SQLSTATE '45000'
SET MYSQL_ERRNO = @error_state, MESSAGE_TEXT = @error_msg; SET MYSQL_ERRNO = @error_state, MESSAGE_TEXT = @error_msg;
END; END;
SET @error_state = NULL, @error_msg = NULL; SET @error_state = NULL, @error_msg = NULL;
call medaca_common.put_info_log(schema_name, procedure_name, procedure_args, CALL medaca_common.put_info_log(schema_name, procedure_name, procedure_args,
'V施設統合マスタ洗替処理一時テーブル作成① 開始'); 'V施設統合マスタ洗替処理一時テーブル作成① 開始');
TRUNCATE TABLE internal05.v_inst_merge_t; TRUNCATE TABLE internal05.v_inst_merge_t;
call medaca_common.put_info_log(schema_name, procedure_name, procedure_args, CALL medaca_common.put_info_log(schema_name, procedure_name, procedure_args,
'V施設統合マスタ洗替処理一時テーブル作成① 終了'); 'V施設統合マスタ洗替処理一時テーブル作成① 終了');
call medaca_common.put_info_log(schema_name, procedure_name, procedure_args, CALL medaca_common.put_info_log(schema_name, procedure_name, procedure_args,
'V施設統合マスタ洗替処理一時テーブル作成② 開始'); 'V施設統合マスタ洗替処理一時テーブル作成② 開始');
INSERT INTO INSERT INTO
@ -52,8 +58,8 @@ BEGIN
fmv.prft_cd, fmv.prft_cd,
fmv.fcl_type fmv.fcl_type
FROM FROM
src05.vop_hco_merge_v vhmv, src05.vop_hco_merge_v AS vhmv,
src05.fcl_mst_v fmv src05.fcl_mst_v AS fmv
INNER JOIN ( INNER JOIN (
SELECT SELECT
v_inst_cd, v_inst_cd,
@ -62,7 +68,7 @@ BEGIN
src05.fcl_mst_v src05.fcl_mst_v
GROUP BY GROUP BY
v_inst_cd v_inst_cd
) max_sno_fmv ) AS max_sno_fmv
ON fmv.v_inst_cd = max_sno_fmv.v_inst_cd ON fmv.v_inst_cd = max_sno_fmv.v_inst_cd
AND fmv.sub_num = max_sno_fmv.sno AND fmv.sub_num = max_sno_fmv.sno
WHERE WHERE
@ -70,7 +76,7 @@ BEGIN
AND STR_TO_DATE(vhmv.apply_dt, '%Y-%m-%d') <= src05.get_syor_date() AND STR_TO_DATE(vhmv.apply_dt, '%Y-%m-%d') <= src05.get_syor_date()
AND fmv.rec_sts_kbn != '9'; AND fmv.rec_sts_kbn != '9';
call medaca_common.put_info_log(schema_name, procedure_name, procedure_args, CALL medaca_common.put_info_log(schema_name, procedure_name, procedure_args,
'V施設統合マスタ洗替処理一時テーブル作成② 終了' ); 'V施設統合マスタ洗替処理一時テーブル作成② 終了' );
END END