From 65ccc61f13fb3ba46df5b430941258c909c9b904 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Thu, 1 Jun 2023 15:54:15 +0900 Subject: [PATCH 01/17] =?UTF-8?q?feat:=20=E7=94=9F=E7=89=A9=E7=94=B1?= =?UTF-8?q?=E6=9D=A5=E3=83=AD=E3=83=83=E3=83=88=E5=88=86=E8=A7=A3=E5=87=A6?= =?UTF-8?q?=E7=90=86=E3=81=AE=E9=9B=9B=E5=BD=A2=E3=82=92=E5=AE=9F=E8=A3=85?= =?UTF-8?q?=E3=80=82=E3=82=AF=E3=82=A8=E3=83=AA=E5=AE=9F=E8=A3=85=E3=81=AF?= =?UTF-8?q?=E3=81=93=E3=82=8C=E3=81=8B=E3=82=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../batch/bio_sales/create_bio_sales_lot.py | 57 ++++++++++++++++--- 1 file changed, 48 insertions(+), 9 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index 509d7300..5e7d0233 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -1,4 +1,6 @@ from src.batch.common.batch_context import BatchContext +from src.db.database import Database +from src.error.exceptions import BatchOperationException from src.logging.get_logger import get_logger batch_context = BatchContext.get_instance() @@ -7,19 +9,56 @@ logger = get_logger('生物由来卸販売ロット分解') def exec(): """生物由来卸販売ロット分解""" - logger.debug('生物由来卸販売ロット分解:起動') + logger.debug('生物由来卸販売ロット分解処理開始') + # 営業日ではない場合、処理をスキップする if batch_context.is_not_business_day: logger.info('営業日ではないため、生物由来卸販売ロット分解処理をスキップします。') return + db = Database.get_instance() + try: + db.connect() + db.begin() + # 生物由来ロット分解データの未確定データを削除する + _delete_not_confirm_data_in_bio_sales_lot(db) + # 生物由来ロット分解データを作成する + _insert_bio_sales_lot(db) + # 生物由来ロット分解データの不要レコードを削除する + _delete_empty_lot_record(db) + # 製造ロット管理番号マスタから有効期限を生物由来ロット分解データにセットする + _set_expr_dt_from_lot_num_mst(db) + # Veeva取引区分が返品(2)の場合、数量をマイナスに反転する + _reverse_qty_if_returns(db) + db.commit() + logger.debug('生物由来卸販売ロット分解処理終了') + return + except Exception as e: + db.rollback() + raise BatchOperationException(e) + finally: + db.disconnect() - # # 非同期処理のサンプル - # import time - # for _ in range(50): - # logger.info('処理中') - # time.sleep(0.5) - # TODO: ここに処理を追記していく +def _delete_not_confirm_data_in_bio_sales_lot(db: Database): + # 生物由来ロット分解データの未確定データ削除 + pass - logger.debug('生物由来卸販売ロット分解:終了') - return + +def _insert_bio_sales_lot(db: Database): + # 生物由来ロット分解データを作成 + pass + + +def _delete_empty_lot_record(db: Database): + # 生物由来ロット分解データの製造番号が空のレコードを削除 + pass + + +def _set_expr_dt_from_lot_num_mst(db: Database): + # 製造ロット管理番号マスタから有効期限をセット + pass + + +def _reverse_qty_if_returns(db: Database): + # Veeva取引区分が返品(2)の場合、数量をマイナスに反転する + pass From 0a7664ac3a9041c067bfb0e4769e1bb1303bf3e1 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Thu, 1 Jun 2023 15:55:09 +0900 Subject: [PATCH 02/17] =?UTF-8?q?fix:=20DCF=E6=96=BD=E8=A8=AD=E7=B5=B1?= =?UTF-8?q?=E5=90=88=E3=83=9E=E3=82=B9=E3=82=BF=E4=BD=9C=E6=88=90=E5=87=A6?= =?UTF-8?q?=E7=90=86=E3=81=AE=E3=82=B3=E3=83=9F=E3=83=83=E3=83=88=E3=81=AE?= =?UTF-8?q?=E3=82=BF=E3=82=A4=E3=83=9F=E3=83=B3=E3=82=B0=E3=82=92=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3=E3=80=82=EF=BC=88exec=E3=81=A7=E3=83=88=E3=83=A9?= =?UTF-8?q?=E3=83=B3=E3=82=B6=E3=82=AF=E3=82=B7=E3=83=A7=E3=83=B3=E3=81=8C?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E3=81=95=E3=82=8C=E3=81=A6=E3=81=84=E3=82=8B?= =?UTF-8?q?=E6=96=B9=E3=81=8C=E8=A6=8B=E3=82=84=E3=81=99=E3=81=84=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/dcf_inst_merge/create_dcf_inst_merge.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ecs/jskult-batch-daily/src/batch/dcf_inst_merge/create_dcf_inst_merge.py b/ecs/jskult-batch-daily/src/batch/dcf_inst_merge/create_dcf_inst_merge.py index 0dad2288..96d66ad7 100644 --- a/ecs/jskult-batch-daily/src/batch/dcf_inst_merge/create_dcf_inst_merge.py +++ b/ecs/jskult-batch-daily/src/batch/dcf_inst_merge/create_dcf_inst_merge.py @@ -24,6 +24,7 @@ def exec(): logger.debug('DCF施設統合マスタ作成処理開始') # COM施設からDCF施設統合マスタに登録 (is_add_dcf_inst_merge, duplication_inst_records) = _insert_dcf_inst_merge_from_com_inst(db) + db.commit() # DCF施設統合マスタ追加のログを出力する if is_add_dcf_inst_merge: logger.info('[NOTICE]DCF施設統合マスタが追加されました。') @@ -131,7 +132,6 @@ def _insert_dcf_inst_merge_from_com_inst(db: Database) -> tuple[bool, list[dict] elapsed_time = ElapsedTime() res = db.execute(insert_sql, params) logging_sql(logger, insert_sql) - db.commit() logger.info(f'COM施設からDCF施設統合マスタに登録成功, {res.rowcount} 行更新 ({elapsed_time.of})') except Exception as e: logger.debug('COM施設からDCF施設統合マスタの登録に失敗') From fdf90338af2f7da8d7867ddfc2c03e1b39b409ac Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Mon, 5 Jun 2023 16:29:56 +0900 Subject: [PATCH 03/17] =?UTF-8?q?feat:=20=E8=A8=AD=E8=A8=88=E3=81=AB?= =?UTF-8?q?=E5=90=88=E3=82=8F=E3=81=9B=E3=81=A6=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../batch/bio_sales/create_bio_sales_lot.py | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index 5e7d0233..55c5311b 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -25,10 +25,12 @@ def exec(): _insert_bio_sales_lot(db) # 生物由来ロット分解データの不要レコードを削除する _delete_empty_lot_record(db) + # MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセットする + _set_inst_info_from_mdb_or_mst_inst(db) + # V製品マスタから製品情報を生物由来ロット分解データにセットする + _set_prd_info_from_v_prd_mst(db) # 製造ロット管理番号マスタから有効期限を生物由来ロット分解データにセットする _set_expr_dt_from_lot_num_mst(db) - # Veeva取引区分が返品(2)の場合、数量をマイナスに反転する - _reverse_qty_if_returns(db) db.commit() logger.debug('生物由来卸販売ロット分解処理終了') return @@ -54,11 +56,16 @@ def _delete_empty_lot_record(db: Database): pass +def _set_inst_info_from_mdb_or_mst_inst(db: Database): + # MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセット + pass + + +def _set_prd_info_from_v_prd_mst(db: Database): + # V製品マスタから製品情報を生物由来ロット分解データにセットする + pass + + def _set_expr_dt_from_lot_num_mst(db: Database): # 製造ロット管理番号マスタから有効期限をセット pass - - -def _reverse_qty_if_returns(db: Database): - # Veeva取引区分が返品(2)の場合、数量をマイナスに反転する - pass From 6c51f8d0a61a8698054fb9e6616f70c13be69929 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Tue, 6 Jun 2023 09:39:53 +0900 Subject: [PATCH 04/17] =?UTF-8?q?feat:=20=E7=94=9F=E7=89=A9=E7=94=B1?= =?UTF-8?q?=E6=9D=A5=E3=83=AD=E3=83=83=E3=83=88=E5=88=86=E8=A7=A3=E5=87=A6?= =?UTF-8?q?=E7=90=86=E3=81=AESQL=E3=82=92=E5=AE=9F=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../batch/bio_sales/create_bio_sales_lot.py | 355 +++++++++++++++++- 1 file changed, 344 insertions(+), 11 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index 55c5311b..298c77c9 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -1,7 +1,9 @@ +from src.batch.batch_functions import logging_sql from src.batch.common.batch_context import BatchContext from src.db.database import Database from src.error.exceptions import BatchOperationException from src.logging.get_logger import get_logger +from src.time.elapsed_time import ElapsedTime batch_context = BatchContext.get_instance() logger = get_logger('生物由来卸販売ロット分解') @@ -42,30 +44,361 @@ def exec(): def _delete_not_confirm_data_in_bio_sales_lot(db: Database): - # 生物由来ロット分解データの未確定データ削除 - pass + logger.debug('生物由来ロット分解データの未確定データ削除開始') + try: + elapsed_time = ElapsedTime() + sql = """\ + DELETE FROM src05.bio_sales_lot AS lot + INNER JOIN src05.bio_sales AS bio + ON bio.slip_mgt_num = lot.slip_mgt_num + AND bio.dwh_upd_dt = src05.get_syor_date() + """ + res = db.execute(sql) + logging_sql(logger, sql) + logger.info(f'Query OK, {res.rowcount} rows affected ({elapsed_time.of})') + except Exception as e: + logger.debug('生物由来ロット分解データの未確定データ削除に失敗') + raise e + logger.debug('生物由来ロット分解データの未確定データ削除に成功') def _insert_bio_sales_lot(db: Database): - # 生物由来ロット分解データを作成 - pass + logger.debug('生物由来ロット分解データの作成開始') + try: + elapsed_time = ElapsedTime() + sql = """\ + INSERT INTO src05.bio_sales_lot + SELECT + bio.slip_mgt_num AS slip_mgt_num, + conv.conv_cd AS conv_cd, + bio.rec_whs_cd AS rec_whs_cd, + bio.rec_whs_sub_cd AS rec_whs_sub_cd, + bio.rec_whs_org_cd AS rec_whs_org_cd, + bio.rec_comm_cd AS rec_comm_cd, + bio.rec_tran_kbn AS rec_tran_kbn, + bio.rev_hsdnymd_srk AS rev_hsdnymd_srk, + bio.rec_urag_num AS rec_urag_num, + bio.rec_comm_name AS rec_comm_name, + bio.rec_nonyu_fcl_name AS rec_nonyu_fcl_name, + bio.rec_nonyu_fcl_addr AS rec_nonyu_fcl_addr, + -- 3レコードに分解する + CASE conv.conv_cd + WHEN 1 THEN bio.rec_lot_num1 + WHEN 2 THEN bio.rec_lot_num2 + WHEN 3 THEN bio.rec_lot_num3 + END AS rec_lot_num, + bio.rec_ymd AS rec_ymd, + bio.v_tran_cd AS v_tran_cd, + bio.tran_kbn_name AS tran_kbn_name, + bio.whs_org_cd AS whs_org_cd, + bio.v_whsorg_cd AS v_whsorg_cd, + bio.whs_org_name AS whs_org_name, + bio.v_whs_cd AS v_whs_cd, + bio.whs_name AS whs_name, + bio.nonyu_fcl_cd AS nonyu_fcl_cd, + bio.v_inst_cd AS v_inst_cd, + bio.v_inst_kn AS v_inst_kn, + bio.v_inst_name AS v_inst_name, + bio.v_inst_addr AS v_inst_addr, + bio.comm_cd AS comm_cd, + bio.product_name AS product_name, + bio.whs_rep_comm_name AS whs_rep_comm_name, + bio.whs_rep_nonyu_fcl_name AS whs_rep_nonyu_fcl_name, + bio.whs_rep_nonyu_fcl_addr AS whs_rep_nonyu_fcl_addr, + /* 製品名と製品コードは後ほどV製品マスタからセットする */ + -- 製品名 + NULL AS mkr_inf_1, + -- 製品コード + NULL AS mkr_cd, + -- 数量 + -- Veeva取引区分の先頭が「2」の場合、マイナス表示にする + CASE conv.conv_cd + WHEN 1 THEN + CASE + WHEN (LEFT(bio.v_tran_cd, 1) = 2 AND bio.qty1 >= 1) THEN -bio.qty1 + ELSE bio.qty1 + END + WHEN 2 THEN + CASE + WHEN (LEFT(bio.v_tran_cd, 1) = 2 AND bio.qty2 >= 1) THEN -bio.qty2 + ELSE bio.qty2 + END + WHEN 3 THEN + CASE + WHEN (LEFT(bio.v_tran_cd, 1) = 2 AND bio.qty3 >= 1) THEN -bio.qty3 + ELSE bio.qty3 + END + END AS qty, + bio.slip_org_kbn AS slip_org_kbn, + bio.bef_slip_mgt_num AS bef_slip_mgt_num, + CASE conv.conv_cd + WHEN 1 THEN bio.err_flg11 + WHEN 2 THEN bio.err_flg12 + WHEN 3 THEN bio.err_flg13 + END AS lot_no_err_flg, + CASE bio.err_flg20 + WHEN 'M' THEN '*' + ELSE NULL + END AS iko_flg, + CASE bio.rec_sts_kbn + WHEN '0' THEN bio.rec_sts_kbn + /* 以下、抽出条件で弾かれているので取れない + WHEN '99' THEN bio.rec_sts_kbn + */ + WHEN '1' THEN + CASE conv.conv_cd + WHEN 1 THEN bio.err_flg11 + WHEN 2 THEN bio.err_flg12 + WHEN 3 THEN bio.err_flg13 + END + END AS rec_sts_kbn, + CASE bio.bef_slip_mgt_num + WHEN NULL THEN bio.ins_dt + ELSE NULL + END AS ins_dt, + CASE bio.bef_slip_mgt_num + WHEN NULL THEN bio.ins_usr + ELSE NULL + END AS ins_usr, + bio.dwh_upd_dt AS dwh_upd_dt, + /* 施設情報は後ほどセットする */ + -- 施設コード + NULL AS inst_cd, + -- 正式施設名(漢字) + NULL AS inst_name_form, + -- 施設住所 + NULL AS address, + -- 施設電話番号 + NULL AS tel_num, + CASE conv.conv_cd + WHEN 1 THEN + CASE bio.err_flg11 + WHEN '0' THEN '正常' + WHEN '1' THEN 'ロットエラー' + WHEN '2' THEN 'ロットエラー' + WHEN '3' THEN 'エラー(解消済み)' + WHEN '4' THEN 'ロット不明' + WHEN '5' THEN 'エラー(解消済み)' + WHEN '6' THEN 'ロット不明' + WHEN '8' THEN '除外' + WHEN '9' THEN '除外' + WHEN 'Z' THEN '除外' + END + WHEN 2 THEN + CASE bio.err_flg12 + WHEN '0' THEN '正常' + WHEN '1' THEN 'ロットエラー' + WHEN '2' THEN 'ロットエラー' + WHEN '3' THEN 'エラー(解消済み)' + WHEN '4' THEN 'ロット不明' + WHEN '5' THEN 'エラー(解消済み)' + WHEN '6' THEN 'ロット不明' + WHEN '8' THEN '除外' + WHEN '9' THEN '除外' + WHEN 'Z' THEN '除外' + END + WHEN 3 THEN + CASE bio.err_flg13 + WHEN '0' THEN '正常' + WHEN '1' THEN 'ロットエラー' + WHEN '2' THEN 'ロットエラー' + WHEN '3' THEN 'エラー(解消済み)' + WHEN '4' THEN 'ロット不明' + WHEN '5' THEN 'エラー(解消済み)' + WHEN '6' THEN 'ロット不明' + WHEN '8' THEN '除外' + WHEN '9' THEN '除外' + WHEN 'Z' THEN '除外' + END + END AS data_kbn, + CASE bio.slip_org_kbn + WHEN 'J' THEN 'JD-NET' + WHEN 'N' THEN 'NHI' + WHEN 'H' THEN '手入力' + END AS data_kind, + CASE conv.conv_cd + WHEN 1 THEN + CASE bio.err_flg11 + WHEN '0' THEN '正常' + WHEN '1' THEN 'ロットエラー' + WHEN '2' THEN '日付エラー' + WHEN '3' THEN 'ロットエラー(解消済)' + WHEN '4' THEN 'ロットエラー(調査不能)' + WHEN '5' THEN '日付エラー(解消済)' + WHEN '6' THEN '日付エラー(調査不能)' + WHEN '7' THEN '除外(卸都合)' + WHEN '8' THEN '除外(再送信)' + WHEN 'Z' THEN '過去データ' + END + WHEN 2 THEN + CASE bio.err_flg12 + WHEN '0' THEN '正常' + WHEN '1' THEN 'ロットエラー' + WHEN '2' THEN '日付エラー' + WHEN '3' THEN 'ロットエラー(解消済)' + WHEN '4' THEN 'ロットエラー(調査不能)' + WHEN '5' THEN '日付エラー(解消済)' + WHEN '6' THEN '日付エラー(調査不能)' + WHEN '7' THEN '除外(卸都合)' + WHEN '8' THEN '除外(再送信)' + WHEN 'Z' THEN '過去データ' + END + WHEN 3 THEN + CASE bio.err_flg13 + WHEN '0' THEN '正常' + WHEN '1' THEN 'ロットエラー' + WHEN '2' THEN '日付エラー' + WHEN '3' THEN 'ロットエラー(解消済)' + WHEN '4' THEN 'ロットエラー(調査不能)' + WHEN '5' THEN '日付エラー(解消済)' + WHEN '6' THEN '日付エラー(調査不能)' + WHEN '7' THEN '除外(卸都合)' + WHEN '8' THEN '除外(再送信)' + WHEN 'Z' THEN '過去データ' + END + END AS err_dtl_kind, + NULL AS expr_dt + FROM + src05.bio_sales bio + -- 生物由来変換マスタ + CROSS JOIN src05.bio_conv conv + WHERE + bio.err_flg1 = '0' + AND bio.err_flg2 = '0' + AND bio.err_flg3 = '0' + AND bio.err_flg4 = '0' + AND bio.err_flg5 = '0' + AND bio.err_flg6 = '0' + AND bio.err_flg7 = '0' + AND bio.err_flg8 = '0' + AND bio.err_flg9 = '0' + AND bio.err_flg10 = '0' + AND bio.rec_sts_kbn <> '99' + AND bio.dwh_upd_dt = src05.get_syor_date() + """ + res = db.execute(sql) + logging_sql(logger, sql) + logger.info(f'Query OK, {res.rowcount} rows affected ({elapsed_time.of})') + except Exception as e: + logger.debug('生物由来ロット分解データの作成に失敗') + raise e + logger.debug('生物由来ロット分解データの作成に成功') def _delete_empty_lot_record(db: Database): - # 生物由来ロット分解データの製造番号が空のレコードを削除 - pass + logger.debug('生物由来ロット分解データの製造番号が空のレコードを削除開始') + try: + elapsed_time = ElapsedTime() + sql = """\ + DELETE FROM src05.bio_sales_lot lot + WHERE + lot.rec_lot_num = REPEAT(' ', 15) OR lot.rec_lot_num IS NULL + """ + res = db.execute(sql) + logging_sql(logger, sql) + logger.info(f'Query OK, {res.rowcount} rows affected ({elapsed_time.of})') + except Exception as e: + logger.debug('生物由来ロット分解データの製造番号が空のレコードを削除に失敗') + raise e + logger.debug('生物由来ロット分解データの製造番号が空のレコードを削除に成功') def _set_inst_info_from_mdb_or_mst_inst(db: Database): - # MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセット - pass + logger.debug('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセット開始') + try: + elapsed_time = ElapsedTime() + sql = """\ + UPDATE + src05.bio_sales_lot bio, + internal05.view_mdb_cnv_mst mdb, + src05.mst_inst inst + SET + -- 施設コード + bio.inst_cd = ( + CASE mdb.mdb_cd + WHEN NULL THEN mdb.mdb_cd + ELSE bio.v_inst_cd + END + ), + -- 正式施設名(漢字) + bio.inst_name_form = ( + CASE mdb.mdb_cd + WHEN NULL THEN mdb.inst_name_form + ELSE inst.inst_name_form + END + ) + -- 施設住所 + bio.address = ( + CASE mdb.mdb_cd + WHEN NULL THEN mdb.address + ELSE inst.address + END + ), + -- 施設電話番号 + bio.tel_num = ( + CASE mdb.mdb_cd + WHEN NULL THEN mdb.tel_num + ELSE inst.tel_num + END + ) + WHERE + bio.v_inst_cd = mdb.hco_vid_v + AND bio.v_inst_cd = inst.inst_cd + """ + res = db.execute(sql) + logging_sql(logger, sql) + logger.info(f'Query OK, {res.rowcount} rows affected ({elapsed_time.of})') + except Exception as e: + logger.debug('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセットに失敗') + raise e + logger.debug('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセットに成功') def _set_prd_info_from_v_prd_mst(db: Database): - # V製品マスタから製品情報を生物由来ロット分解データにセットする - pass + logger.debug('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセット開始') + try: + elapsed_time = ElapsedTime() + sql = """\ + UPDATE + src05.bio_sales_lot bio, + src05.phm_prd_mst_v prd + SET + bio.mkr_inf_1 = prd.mkr_inf_1, + bio.mkr_cd = prd.mkr_cd + WHERE + bio.comm_cd = prd.prd_cd + AND STR_TO_DATE(bio.rev_hsdnymd_srk,'%Y%m%d') BETWEEN prd.start_date AND prd.end_date + AND prd.rec_sts_kbn <> '9' + + """ + res = db.execute(sql) + logging_sql(logger, sql) + logger.info(f'Query OK, {res.rowcount} rows affected ({elapsed_time.of})') + except Exception as e: + logger.debug('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセットに失敗') + raise e + logger.debug('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセットに成功') def _set_expr_dt_from_lot_num_mst(db: Database): # 製造ロット管理番号マスタから有効期限をセット - pass + logger.debug('製造ロット管理番号マスタから有効期限をセット開始') + try: + elapsed_time = ElapsedTime() + sql = """\ + UPDATE + src05.bio_sales_lot bio, + src05.lot_num_mst lot + SET + bio.expr_dt = lot.expr_dt + WHERE + bio.mkr_cd = lot.ser_num + AND bio.rec_lot_num = lot.lot_num + """ + res = db.execute(sql) + logging_sql(logger, sql) + logger.info(f'Query OK, {res.rowcount} rows affected ({elapsed_time.of})') + except Exception as e: + logger.debug('製造ロット管理番号マスタから有効期限をセットに失敗') + raise e + logger.debug('製造ロット管理番号マスタから有効期限をセットに成功') From c9babbee11b73be5ff038bc13c2eb727575175b9 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Tue, 6 Jun 2023 09:41:27 +0900 Subject: [PATCH 05/17] =?UTF-8?q?feat:=20rec=5Fsts=5Fkbn=E3=81=AECASE?= =?UTF-8?q?=E6=96=87=E3=81=8B=E3=82=89=E3=80=8199=E3=81=AE=E3=82=B1?= =?UTF-8?q?=E3=83=BC=E3=82=B9=E3=82=92=E5=89=8A=E9=99=A4=E3=80=82=E6=8A=BD?= =?UTF-8?q?=E5=87=BA=E6=9D=A1=E4=BB=B6=E3=81=A7=E5=BC=BE=E3=81=8B=E3=82=8C?= =?UTF-8?q?=E3=82=8B=E3=81=9F=E3=82=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/bio_sales/create_bio_sales_lot.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index 298c77c9..4e23cc44 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -142,9 +142,6 @@ def _insert_bio_sales_lot(db: Database): END AS iko_flg, CASE bio.rec_sts_kbn WHEN '0' THEN bio.rec_sts_kbn - /* 以下、抽出条件で弾かれているので取れない - WHEN '99' THEN bio.rec_sts_kbn - */ WHEN '1' THEN CASE conv.conv_cd WHEN 1 THEN bio.err_flg11 From 9f7caa14dc95bc704dd022e5cb419e7725ab3584 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Tue, 6 Jun 2023 10:16:39 +0900 Subject: [PATCH 06/17] =?UTF-8?q?feat:=20=20=E3=83=86=E3=82=B9=E3=83=88?= =?UTF-8?q?=E4=BB=95=E6=A7=98=E6=9B=B8=E4=BD=9C=E6=88=90=E4=B8=AD=E3=81=AE?= =?UTF-8?q?=E3=83=95=E3=82=A3=E3=83=BC=E3=83=89=E3=83=90=E3=83=83=E3=82=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/bio_sales/create_bio_sales_lot.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index 4e23cc44..bbfedb64 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -51,7 +51,7 @@ def _delete_not_confirm_data_in_bio_sales_lot(db: Database): DELETE FROM src05.bio_sales_lot AS lot INNER JOIN src05.bio_sales AS bio ON bio.slip_mgt_num = lot.slip_mgt_num - AND bio.dwh_upd_dt = src05.get_syor_date() + AND DATE(bio.dwh_upd_dt) = src05.get_syor_date() """ res = db.execute(sql) logging_sql(logger, sql) @@ -271,7 +271,7 @@ def _insert_bio_sales_lot(db: Database): AND bio.err_flg9 = '0' AND bio.err_flg10 = '0' AND bio.rec_sts_kbn <> '99' - AND bio.dwh_upd_dt = src05.get_syor_date() + AND DATE(bio.dwh_upd_dt) = src05.get_syor_date() """ res = db.execute(sql) logging_sql(logger, sql) @@ -289,6 +289,7 @@ def _delete_empty_lot_record(db: Database): sql = """\ DELETE FROM src05.bio_sales_lot lot WHERE + -- 空白15桁のデータはロット情報が空とみなして削除する lot.rec_lot_num = REPEAT(' ', 15) OR lot.rec_lot_num IS NULL """ res = db.execute(sql) From 4e529493634e22f54bff1de26fe10fe6f976909f Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Mon, 12 Jun 2023 11:00:25 +0900 Subject: [PATCH 07/17] =?UTF-8?q?fix:=20=E7=94=9F=E7=89=A9=E7=94=B1?= =?UTF-8?q?=E6=9D=A5=E6=A4=9C=E7=B4=A2=E3=81=8C=E3=81=86=E3=81=BE=E3=81=8F?= =?UTF-8?q?=E5=8B=95=E3=81=84=E3=81=A6=E3=81=AA=E3=81=8B=E3=81=A3=E3=81=9F?= =?UTF-8?q?=E3=81=AE=E3=82=92=E3=81=A4=E3=81=84=E3=81=A7=E3=81=AB=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecs/jskult-webapp/src/templates/bioSearchList.html | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ecs/jskult-webapp/src/templates/bioSearchList.html b/ecs/jskult-webapp/src/templates/bioSearchList.html index 5ede3802..0e1ed683 100644 --- a/ecs/jskult-webapp/src/templates/bioSearchList.html +++ b/ecs/jskult-webapp/src/templates/bioSearchList.html @@ -290,6 +290,7 @@ showNavigator: true, formatNavigator: '件数: <%= totalNumber %>件 ページ数: <%= totalPage %>', callback: function(data, pagination) { + console.log(pagination.pageNumber) $('#result_data').html(pagination_content(data)) } }) @@ -335,7 +336,6 @@ 'v_tran_cd', 'iko_flg', ]; - const tableRow = documen.sendt.createElement('tr') return datas.map(function (data) { return ` @@ -343,7 +343,6 @@ ` }) - return tableRow } From 60e7c8924f6d5c369dfd2a33dc8f2e43cd3dd036 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Thu, 15 Jun 2023 10:32:33 +0900 Subject: [PATCH 08/17] =?UTF-8?q?fix:=20=E8=A8=AD=E8=A8=88=E3=81=AB?= =?UTF-8?q?=E5=90=88=E3=82=8F=E3=81=9B=E3=80=81=E3=82=A8=E3=83=A9=E3=83=BC?= =?UTF-8?q?=E3=83=95=E3=83=A9=E3=82=B0=E3=81=AE=E5=A4=89=E6=8F=9B=E5=80=A4?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/bio_sales/create_bio_sales_lot.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index bbfedb64..e301e04c 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -177,8 +177,8 @@ def _insert_bio_sales_lot(db: Database): WHEN '4' THEN 'ロット不明' WHEN '5' THEN 'エラー(解消済み)' WHEN '6' THEN 'ロット不明' + WHEN '7' THEN '除外' WHEN '8' THEN '除外' - WHEN '9' THEN '除外' WHEN 'Z' THEN '除外' END WHEN 2 THEN @@ -190,8 +190,8 @@ def _insert_bio_sales_lot(db: Database): WHEN '4' THEN 'ロット不明' WHEN '5' THEN 'エラー(解消済み)' WHEN '6' THEN 'ロット不明' + WHEN '7' THEN '除外' WHEN '8' THEN '除外' - WHEN '9' THEN '除外' WHEN 'Z' THEN '除外' END WHEN 3 THEN @@ -203,8 +203,8 @@ def _insert_bio_sales_lot(db: Database): WHEN '4' THEN 'ロット不明' WHEN '5' THEN 'エラー(解消済み)' WHEN '6' THEN 'ロット不明' + WHEN '7' THEN '除外' WHEN '8' THEN '除外' - WHEN '9' THEN '除外' WHEN 'Z' THEN '除外' END END AS data_kbn, From 7038e759722cdccdcfbc867b1b82f04b2fe4d44f Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Thu, 15 Jun 2023 10:34:52 +0900 Subject: [PATCH 09/17] =?UTF-8?q?feat:=20=E3=83=AC=E3=83=93=E3=83=A5?= =?UTF-8?q?=E3=83=BC=E6=8C=87=E6=91=98=E9=81=A9=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/bio_sales/create_bio_sales_lot.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index e301e04c..1712699e 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -353,7 +353,7 @@ def _set_inst_info_from_mdb_or_mst_inst(db: Database): def _set_prd_info_from_v_prd_mst(db: Database): - logger.debug('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセット開始') + logger.debug('V製品マスタから製品情報を生物由来ロット分解データにセット開始') try: elapsed_time = ElapsedTime() sql = """\ @@ -373,9 +373,9 @@ def _set_prd_info_from_v_prd_mst(db: Database): logging_sql(logger, sql) logger.info(f'Query OK, {res.rowcount} rows affected ({elapsed_time.of})') except Exception as e: - logger.debug('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセットに失敗') + logger.debug('V製品マスタから製品情報を生物由来ロット分解データにセットに失敗') raise e - logger.debug('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセットに成功') + logger.debug('V製品マスタから製品情報を生物由来ロット分解データにセットに成功') def _set_expr_dt_from_lot_num_mst(db: Database): From 2ac07cc440bceaac915b1b6421c0004368304f1c Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Mon, 19 Jun 2023 15:56:20 +0900 Subject: [PATCH 10/17] =?UTF-8?q?fix:=20=E5=89=8A=E9=99=A4=E3=82=AF?= =?UTF-8?q?=E3=82=A8=E3=83=AA=E3=81=8C=E3=82=A8=E3=83=A9=E3=83=BC=E3=81=AB?= =?UTF-8?q?=E3=81=AA=E3=81=A3=E3=81=A6=E3=81=84=E3=81=9F=E3=81=AE=E3=82=92?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/bio_sales/create_bio_sales_lot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index 1712699e..001b754f 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -48,7 +48,7 @@ def _delete_not_confirm_data_in_bio_sales_lot(db: Database): try: elapsed_time = ElapsedTime() sql = """\ - DELETE FROM src05.bio_sales_lot AS lot + DELETE lot FROM src05.bio_sales_lot AS lot INNER JOIN src05.bio_sales AS bio ON bio.slip_mgt_num = lot.slip_mgt_num AND DATE(bio.dwh_upd_dt) = src05.get_syor_date() From 5dfa794d74ff2acdd1f4b286526d19e118f5f5dc Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Tue, 20 Jun 2023 09:15:58 +0900 Subject: [PATCH 11/17] =?UTF-8?q?fix:=20SQL=E6=A7=8B=E6=96=87=E3=82=A8?= =?UTF-8?q?=E3=83=A9=E3=83=BC=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/bio_sales/create_bio_sales_lot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index 001b754f..b442188a 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -324,7 +324,7 @@ def _set_inst_info_from_mdb_or_mst_inst(db: Database): WHEN NULL THEN mdb.inst_name_form ELSE inst.inst_name_form END - ) + ), -- 施設住所 bio.address = ( CASE mdb.mdb_cd From 34cbf8e814caf1e71582fbdb9bc9649b5f74b712 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Tue, 20 Jun 2023 09:50:25 +0900 Subject: [PATCH 12/17] =?UTF-8?q?fix:=20=E3=83=AD=E3=82=B0=E3=82=92?= =?UTF-8?q?=E5=87=BA=E3=81=99=E3=81=A8=E3=81=8D=E3=81=ABSQL=E3=81=AE?= =?UTF-8?q?=E5=85=88=E9=A0=AD=E3=81=AE=E6=96=87=E5=AD=97=E3=81=8C=E6=B6=88?= =?UTF-8?q?=E3=81=88=E3=81=A6=E3=81=97=E3=81=BE=E3=81=86=E3=81=AE=E3=82=92?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/bio_sales/create_bio_sales_lot.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index b442188a..91c64928 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -66,7 +66,7 @@ def _insert_bio_sales_lot(db: Database): logger.debug('生物由来ロット分解データの作成開始') try: elapsed_time = ElapsedTime() - sql = """\ + sql = """ INSERT INTO src05.bio_sales_lot SELECT bio.slip_mgt_num AS slip_mgt_num, @@ -286,7 +286,7 @@ def _delete_empty_lot_record(db: Database): logger.debug('生物由来ロット分解データの製造番号が空のレコードを削除開始') try: elapsed_time = ElapsedTime() - sql = """\ + sql = """ DELETE FROM src05.bio_sales_lot lot WHERE -- 空白15桁のデータはロット情報が空とみなして削除する @@ -305,7 +305,7 @@ def _set_inst_info_from_mdb_or_mst_inst(db: Database): logger.debug('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセット開始') try: elapsed_time = ElapsedTime() - sql = """\ + sql = """ UPDATE src05.bio_sales_lot bio, internal05.view_mdb_cnv_mst mdb, @@ -356,7 +356,7 @@ def _set_prd_info_from_v_prd_mst(db: Database): logger.debug('V製品マスタから製品情報を生物由来ロット分解データにセット開始') try: elapsed_time = ElapsedTime() - sql = """\ + sql = """ UPDATE src05.bio_sales_lot bio, src05.phm_prd_mst_v prd @@ -383,7 +383,7 @@ def _set_expr_dt_from_lot_num_mst(db: Database): logger.debug('製造ロット管理番号マスタから有効期限をセット開始') try: elapsed_time = ElapsedTime() - sql = """\ + sql = """ UPDATE src05.bio_sales_lot bio, src05.lot_num_mst lot From 756268b0b860f247105fc9d9dc39e475fa3ef98f Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Tue, 20 Jun 2023 10:51:03 +0900 Subject: [PATCH 13/17] =?UTF-8?q?fix:=20=E3=83=AD=E3=82=B0=E5=87=BA?= =?UTF-8?q?=E5=8A=9B=E6=99=82=E3=81=AE=E5=87=BA=E5=8A=9B=E5=86=85=E5=AE=B9?= =?UTF-8?q?=E6=BC=8F=E3=82=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/bio_sales/create_bio_sales_lot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index 91c64928..f5a15649 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -47,7 +47,7 @@ def _delete_not_confirm_data_in_bio_sales_lot(db: Database): logger.debug('生物由来ロット分解データの未確定データ削除開始') try: elapsed_time = ElapsedTime() - sql = """\ + sql = """ DELETE lot FROM src05.bio_sales_lot AS lot INNER JOIN src05.bio_sales AS bio ON bio.slip_mgt_num = lot.slip_mgt_num From 46788aaca8e6a5d6c62b78d56ee0c4ac9a1a091a Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Tue, 20 Jun 2023 12:34:50 +0900 Subject: [PATCH 14/17] =?UTF-8?q?fix:=20=E8=A8=82=E6=AD=A3=E5=89=8D?= =?UTF-8?q?=E4=BC=9D=E7=A5=A8=E7=AE=A1=E7=90=86=E7=95=AA=E5=8F=B7=E3=81=AB?= =?UTF-8?q?=E3=82=88=E3=82=8B=E7=99=BB=E9=8C=B2=E6=97=A5=E3=83=BB=E7=99=BB?= =?UTF-8?q?=E9=8C=B2=E8=80=85=E3=81=AE=E5=88=A4=E5=AE=9A=E3=82=92=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/bio_sales/create_bio_sales_lot.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index f5a15649..99504905 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -149,12 +149,12 @@ def _insert_bio_sales_lot(db: Database): WHEN 3 THEN bio.err_flg13 END END AS rec_sts_kbn, - CASE bio.bef_slip_mgt_num - WHEN NULL THEN bio.ins_dt + CASE + WHEN bio.bef_slip_mgt_num IS NOT NULL THEN bio.ins_dt ELSE NULL END AS ins_dt, - CASE bio.bef_slip_mgt_num - WHEN NULL THEN bio.ins_usr + CASE + WHEN bio.bef_slip_mgt_num IS NOT NULL THEN bio.ins_usr ELSE NULL END AS ins_usr, bio.dwh_upd_dt AS dwh_upd_dt, From 1b8e77b426e7754028ebeeae3bd67df8963822f4 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Tue, 20 Jun 2023 13:59:51 +0900 Subject: [PATCH 15/17] =?UTF-8?q?fix:=20=E6=96=BD=E8=A8=AD=E6=83=85?= =?UTF-8?q?=E5=A0=B1=E3=81=AE=E6=9B=B4=E6=96=B0=E5=87=A6=E7=90=86=E3=81=AE?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../batch/bio_sales/create_bio_sales_lot.py | 27 +++++++++---------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index 99504905..db8b5c6c 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -307,41 +307,40 @@ def _set_inst_info_from_mdb_or_mst_inst(db: Database): elapsed_time = ElapsedTime() sql = """ UPDATE - src05.bio_sales_lot bio, - internal05.view_mdb_cnv_mst mdb, - src05.mst_inst inst + src05.bio_sales_lot bio + LEFT OUTER JOIN internal05.view_mdb_cnv_mst mdb + ON bio.v_inst_cd = mdb.hco_vid_v + LEFT OUTER JOIN src05.mst_inst inst + ON bio.v_inst_cd = inst.inst_cd SET -- 施設コード bio.inst_cd = ( - CASE mdb.mdb_cd - WHEN NULL THEN mdb.mdb_cd + CASE + WHEN mdb.mdb_cd IS NOT NULL THEN mdb.mdb_cd ELSE bio.v_inst_cd END ), -- 正式施設名(漢字) bio.inst_name_form = ( - CASE mdb.mdb_cd - WHEN NULL THEN mdb.inst_name_form + CASE + WHEN mdb.mdb_cd IS NOT NULL THEN mdb.inst_name_form ELSE inst.inst_name_form END ), -- 施設住所 bio.address = ( - CASE mdb.mdb_cd - WHEN NULL THEN mdb.address + CASE + WHEN mdb.mdb_cd IS NOT NULL THEN mdb.address ELSE inst.address END ), -- 施設電話番号 bio.tel_num = ( - CASE mdb.mdb_cd - WHEN NULL THEN mdb.tel_num + CASE + WHEN mdb.mdb_cd IS NOT NULL THEN mdb.tel_num ELSE inst.tel_num END ) - WHERE - bio.v_inst_cd = mdb.hco_vid_v - AND bio.v_inst_cd = inst.inst_cd """ res = db.execute(sql) logging_sql(logger, sql) From 648b7101327ce7b750255722747f8146123134e4 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Tue, 20 Jun 2023 14:07:35 +0900 Subject: [PATCH 16/17] =?UTF-8?q?fix:=20=E6=96=87=E8=A8=80=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3=E3=80=82=E8=A7=A3=E6=B6=88=E6=B8=88=E3=81=BF=E2=86=92?= =?UTF-8?q?=E8=A7=A3=E6=B6=88=E6=B8=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/bio_sales/create_bio_sales_lot.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index db8b5c6c..ede7939b 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -173,9 +173,9 @@ def _insert_bio_sales_lot(db: Database): WHEN '0' THEN '正常' WHEN '1' THEN 'ロットエラー' WHEN '2' THEN 'ロットエラー' - WHEN '3' THEN 'エラー(解消済み)' + WHEN '3' THEN 'エラー(解消済)' WHEN '4' THEN 'ロット不明' - WHEN '5' THEN 'エラー(解消済み)' + WHEN '5' THEN 'エラー(解消済)' WHEN '6' THEN 'ロット不明' WHEN '7' THEN '除外' WHEN '8' THEN '除外' @@ -186,9 +186,9 @@ def _insert_bio_sales_lot(db: Database): WHEN '0' THEN '正常' WHEN '1' THEN 'ロットエラー' WHEN '2' THEN 'ロットエラー' - WHEN '3' THEN 'エラー(解消済み)' + WHEN '3' THEN 'エラー(解消済)' WHEN '4' THEN 'ロット不明' - WHEN '5' THEN 'エラー(解消済み)' + WHEN '5' THEN 'エラー(解消済)' WHEN '6' THEN 'ロット不明' WHEN '7' THEN '除外' WHEN '8' THEN '除外' @@ -199,9 +199,9 @@ def _insert_bio_sales_lot(db: Database): WHEN '0' THEN '正常' WHEN '1' THEN 'ロットエラー' WHEN '2' THEN 'ロットエラー' - WHEN '3' THEN 'エラー(解消済み)' + WHEN '3' THEN 'エラー(解消済)' WHEN '4' THEN 'ロット不明' - WHEN '5' THEN 'エラー(解消済み)' + WHEN '5' THEN 'エラー(解消済)' WHEN '6' THEN 'ロット不明' WHEN '7' THEN '除外' WHEN '8' THEN '除外' From 9cea113944fc455af73d87e3a019a4c131154e0a Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Fri, 23 Jun 2023 17:03:43 +0900 Subject: [PATCH 17/17] =?UTF-8?q?fix:=20=E5=8D=98=E4=BD=93=E3=83=86?= =?UTF-8?q?=E3=82=B9=E3=83=88=E3=81=AE=E4=B8=8D=E5=85=B7=E5=90=88=E5=AE=9F?= =?UTF-8?q?=E8=A3=85=E3=80=82=E6=97=A2=E5=AD=98=E3=81=AE=E3=83=AC=E3=82=B3?= =?UTF-8?q?=E3=83=BC=E3=83=89=E3=82=82=E3=80=81=E8=A3=BD=E5=93=81=E6=83=85?= =?UTF-8?q?=E5=A0=B1=E3=80=81=E3=83=AD=E3=83=83=E3=83=88=E6=9C=89=E5=8A=B9?= =?UTF-8?q?=E6=9C=9F=E9=99=90=E3=82=92=E6=9B=B4=E6=96=B0=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../batch/bio_sales/create_bio_sales_lot.py | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py index ede7939b..032a6a02 100644 --- a/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py +++ b/ecs/jskult-batch-daily/src/batch/bio_sales/create_bio_sales_lot.py @@ -357,16 +357,14 @@ def _set_prd_info_from_v_prd_mst(db: Database): elapsed_time = ElapsedTime() sql = """ UPDATE - src05.bio_sales_lot bio, - src05.phm_prd_mst_v prd + src05.bio_sales_lot bio + LEFT OUTER JOIN src05.phm_prd_mst_v prd + ON bio.comm_cd = prd.prd_cd + AND STR_TO_DATE(bio.rev_hsdnymd_srk,'%Y%m%d') BETWEEN prd.start_date AND prd.end_date + AND prd.rec_sts_kbn <> '9' SET bio.mkr_inf_1 = prd.mkr_inf_1, bio.mkr_cd = prd.mkr_cd - WHERE - bio.comm_cd = prd.prd_cd - AND STR_TO_DATE(bio.rev_hsdnymd_srk,'%Y%m%d') BETWEEN prd.start_date AND prd.end_date - AND prd.rec_sts_kbn <> '9' - """ res = db.execute(sql) logging_sql(logger, sql) @@ -384,13 +382,12 @@ def _set_expr_dt_from_lot_num_mst(db: Database): elapsed_time = ElapsedTime() sql = """ UPDATE - src05.bio_sales_lot bio, - src05.lot_num_mst lot + src05.bio_sales_lot bio + LEFT OUTER JOIN src05.lot_num_mst lot + ON bio.mkr_cd = lot.ser_num + AND bio.rec_lot_num = lot.lot_num SET bio.expr_dt = lot.expr_dt - WHERE - bio.mkr_cd = lot.ser_num - AND bio.rec_lot_num = lot.lot_num """ res = db.execute(sql) logging_sql(logger, sql)