feat: V製品マスタの対応

This commit is contained in:
shimoda.m@nds-tyo.co.jp 2023-09-16 16:30:02 +09:00
parent 7428f703e9
commit 391e433d1b
4 changed files with 53 additions and 51 deletions

View File

@ -821,21 +821,21 @@ class VjskReceiveFileMapper:
t.prd_cd
,t.sub_num
,t.prd_name
,t.prd_e_name
,t.mkr_cd
,t.mkr_inf_1
,t.mkr_inf_2
,t.phm_itm_cd
,t.itm_name
,t.itm_abb_name
,t.form_cd
,t.form_name
,t.vol_cd
,t.vol_name
,t.cont_cd
,t.cont_name
,t.pkg_cd
,t.pkg_name
,medaca_common.convert_empty_to_null(t.prd_e_name)
,medaca_common.convert_empty_to_null(t.mkr_cd)
,medaca_common.convert_empty_to_null(t.mkr_inf_1)
,medaca_common.convert_empty_to_null(t.mkr_inf_2)
,medaca_common.convert_empty_to_null(t.phm_itm_cd)
,medaca_common.convert_empty_to_null(t.itm_name)
,medaca_common.convert_empty_to_null(t.itm_abb_name)
,medaca_common.convert_empty_to_null(t.form_cd)
,medaca_common.convert_empty_to_null(t.form_name)
,medaca_common.convert_empty_to_null(t.vol_cd)
,medaca_common.convert_empty_to_null(t.vol_name)
,medaca_common.convert_empty_to_null(t.cont_cd)
,medaca_common.convert_empty_to_null(t.cont_name)
,medaca_common.convert_empty_to_null(t.pkg_cd)
,medaca_common.convert_empty_to_null(t.pkg_name)
,t.cnv_num
,nullif(t.jsk_start_dt, 0) -- 受領データがブランクだった場合にゼロ日付で取得されるので明示的にNULL値に変換する
,t.prd_sale_kbn
@ -849,34 +849,34 @@ class VjskReceiveFileMapper:
,SYSDATE()
FROM org05.phm_prd_mst_v AS t
ON DUPLICATE KEY UPDATE
prd_cd=t.prd_cd
,sub_num=t.sub_num
,prd_name=t.prd_name
,prd_e_name=t.prd_e_name
,mkr_cd=t.mkr_cd
,mkr_inf_1=t.mkr_inf_1
,mkr_inf_2=t.mkr_inf_2
,phm_itm_cd=t.phm_itm_cd
,itm_name=t.itm_name
,itm_abb_name=t.itm_abb_name
,form_cd=t.form_cd
,form_name=t.form_name
,vol_cd=t.vol_cd
,vol_name=t.vol_name
,cont_cd=t.cont_cd
,cont_name=t.cont_name
,pkg_cd=t.pkg_cd
,pkg_name=t.pkg_name
,cnv_num=t.cnv_num
,jsk_start_dt=nullif(t.jsk_start_dt, 0)
,prd_sale_kbn=t.prd_sale_kbn
,jsk_proc_kbn=t.jsk_proc_kbn
,start_date=t.start_date
,end_date=t.end_date
,dsp_odr=t.dsp_odr
,rec_sts_kbn=t.rec_sts_kbn
,ins_dt=nullif(t.ins_dt, 0)
,upd_dt=nullif(t.upd_dt, 0)
prd_cd=VALUES(prd_cd)
,sub_num=VALUES(sub_num)
,prd_name=VALUES(prd_name)
,prd_e_name=VALUES(prd_e_name)
,mkr_cd=VALUES(mkr_cd)
,mkr_inf_1=VALUES(mkr_inf_1)
,mkr_inf_2=VALUES(mkr_inf_2)
,phm_itm_cd=VALUES(phm_itm_cd)
,itm_name=VALUES(itm_name)
,itm_abb_name=VALUES(itm_abb_name)
,form_cd=VALUES(form_cd)
,form_name=VALUES(form_name)
,vol_cd=VALUES(vol_cd)
,vol_name=VALUES(vol_name)
,cont_cd=VALUES(cont_cd)
,cont_name=VALUES(cont_name)
,pkg_cd=VALUES(pkg_cd)
,pkg_name=VALUES(pkg_name)
,cnv_num=VALUES(cnv_num)
,jsk_start_dt=VALUES(jsk_start_dt)
,prd_sale_kbn=VALUES(prd_sale_kbn)
,jsk_proc_kbn=VALUES(jsk_proc_kbn)
,start_date=VALUES(start_date)
,end_date=VALUES(end_date)
,dsp_odr=VALUES(dsp_odr)
,rec_sts_kbn=VALUES(rec_sts_kbn)
,ins_dt=VALUES(ins_dt)
,upd_dt=VALUES(upd_dt)
,dwh_upd_dt=SYSDATE()
;
""")

View File

@ -749,7 +749,7 @@ class TestImportFileToDb:
self.batch_context.is_vjsk_stock_import_day = True
self.db.execute(f"truncate table {table_name_src}")
# assertion1 (insert 4row)
# assertion1 (insert 6row)
# 処理実行
target_dict = {
@ -765,7 +765,7 @@ class TestImportFileToDb:
# 突合から除外する項目
ignore_columns = ['dwh_upd_dt']
# orgテーブル結果が期待値通りかを突合
assert_table_results(result_org, assert_list, ignore_columns)
assert_table_results(result_org, assert_list, ignore_columns, is_loaddata=True)
# srcテーブル結果を取得
result_src = self.db.execute_select(f"select * from {table_name_src}")
# 突合から除外する項目
@ -789,18 +789,18 @@ class TestImportFileToDb:
# 突合から除外する項目
ignore_columns = ['dwh_upd_dt']
# orgテーブル結果が期待値通りかを突合
assert_table_results(result_org, assert_list, ignore_columns)
assert_table_results(result_org, assert_list, ignore_columns, is_loaddata=True)
# srcテーブル結果(orgテーブル結果のPK値で一致するもの)を取得
result_src = self.db.execute_select(
f"select * from {table_name_src} s inner join {table_name_org} o on (s.prd_cd = o.prd_cd and s.sub_num = o.sub_num)")
f"select s.* from {table_name_src} s inner join {table_name_org} o on (s.prd_cd = o.prd_cd and s.sub_num = o.sub_num)")
# 突合から除外する項目
ignore_columns = ['dwh_upd_dt']
# srcテーブル結果が期待値通りかを突合
assert_table_results(result_src, assert_list, ignore_columns)
# srcテーブル結果のレコード件数 (insert 4row + update 2row + insert 2row = 6row)
# srcテーブル結果のレコード件数 (insert 6row + update 2row + insert 2row = 8row)
result_src_count = self.db.execute_select(f"select count(*) from {table_name_src} ")
assert result_src_count[0]['count(*)'] == 6
assert result_src_count[0]['count(*)'] == 8
# teardown

View File

@ -3,3 +3,5 @@
"496201127" "0" "セロフェン 錠剤 50mg 30TAB" "" "F21206A0" "セロフェン 錠 50MG" "SEROPHENE TAB. 50 MG. (30)" "001" "セロフェン" "SP" "F003" "錠剤" "0000" "" "V009" "50mg" "P007" "30TAB" "30" "" "0" "0" "20070401" "20190930" "150" "0" "17-11-08 16:52:41" "19-09-19 11:42:45"
"496300110" "2" "ゴナールエフ 皮下注ペン 300IU 1PEN" "" "F1990608" "ゴナールエフ皮下注ペン 300" "GONAL-F PEN 300IU (1) - JPN" "005" "セロスティム" "ST" "F005" "皮下注ペン" "0000" "" "V017" "300IU" "P011" "1PEN" "1" "" "0" "0" "20190501" "20190930" "100" "9" "19-04-23 16:35:36" "19-04-23 16:40:38"
"496300127" "2" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "F19D0608" "ゴナールエフ皮下注ペン450" "Gonalef Pen 450 (1)" "008" "BDマイクロファインプラス" "MF" "F005" "皮下注ペン" "0000" "" "V018" "450IU" "P011" "1PEN" "1" "" "0" "0" "20190501" "20190930" "120" "9" "19-04-23 16:37:10" "19-04-23 16:40:54"
"496300128" "1" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "F19D0608" "ゴナールエフ皮下注ペン450" "Gonalef Pen 450 (1)" "008" "BDマイクロファインプラス" "MF" "F005" "皮下注ペン" "0000" "" "V018" "450IU" "P011" "1PEN" "1" "" "0" "0" "20190501" "20190930" "120" "9" "19-04-23 16:37:10" "19-04-23 16:40:54"
"496300128" "2" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "1" "" "0" "0" "20190501" "20190930" "120" "9" "19-04-23 16:37:10" "19-04-23 16:40:54"

1 prd_cd sub_no prd_nm prd_e_nm mkr_cd mkr_inf_1 mkr_inf_2 phm_itm_cd itm_nm itm_sht_nm form_cd form_nm vol_cd vol_nm cont_cd cont_nm pkg_cd pkg_nm cnv_num jsk_start_dt prd_sale_kbn jsk_proc_kbn start_dt end_dt dsp_odr rec_sts_kbn ins_dt upd_dt
3 496201127 0 セロフェン 錠剤 50mg 30TAB F21206A0 セロフェン 錠 50MG SEROPHENE TAB. 50 MG. (30) 001 セロフェン SP F003 錠剤 0000 V009 50mg P007 30TAB 30 0 0 20070401 20190930 150 0 17-11-08 16:52:41 19-09-19 11:42:45
4 496300110 2 ゴナールエフ 皮下注ペン 300IU 1PEN F1990608 ゴナールエフ皮下注ペン 300 GONAL-F PEN 300IU (1) - JPN 005 セロスティム ST F005 皮下注ペン 0000 V017 300IU P011 1PEN 1 0 0 20190501 20190930 100 9 19-04-23 16:35:36 19-04-23 16:40:38
5 496300127 2 ゴナールエフ 皮下注ペン 450IU 1PEN F19D0608 ゴナールエフ皮下注ペン450 Gonalef Pen 450 (1) 008 BDマイクロファインプラス MF F005 皮下注ペン 0000 V018 450IU P011 1PEN 1 0 0 20190501 20190930 120 9 19-04-23 16:37:10 19-04-23 16:40:54
6 496300128 1 ゴナールエフ 皮下注ペン 450IU 1PEN F19D0608 ゴナールエフ皮下注ペン450 Gonalef Pen 450 (1) 008 BDマイクロファインプラス MF F005 皮下注ペン 0000 V018 450IU P011 1PEN 1 0 0 20190501 20190930 120 9 19-04-23 16:37:10 19-04-23 16:40:54
7 496300128 2 ゴナールエフ 皮下注ペン 450IU 1PEN 1 0 0 20190501 20190930 120 9 19-04-23 16:37:10 19-04-23 16:40:54

View File

@ -1,5 +1,5 @@
"prd_cd" "sub_no" "prd_nm" "prd_e_nm" "mkr_cd" "mkr_inf_1" "mkr_inf_2" "phm_itm_cd" "itm_nm" "itm_sht_nm" "form_cd" "form_nm" "vol_cd" "vol_nm" "cont_cd" "cont_nm" "pkg_cd" "pkg_nm" "cnv_num" "jsk_start_dt" "prd_sale_kbn" "jsk_proc_kbn" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
"496300110" "2" "ゴナールエフ 皮下注ペン 300IU 1PEN" "" "F1990608" "ゴナールエフ皮下注ペン 300" "GONAL-F PEN 300IU (1) - JPN" "005" "セロスティム" "ST" "F005" "皮下注ペン" "0000" "" "V017" "300IU" "P011" "1PEN" "1" "20230601" "0" "0" "20190501" "20190930" "100" "9" "19-04-23 16:35:36" "19-04-23 16:40:38"
"496300127" "2" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "F19D0608" "ゴナールエフ皮下注ペン450" "Gonalef Pen 450 (1)" "008" "BDマイクロファインプラス" "MF" "F005" "皮下注ペン" "0000" "" "V018" "450IU" "P011" "1PEN" "1" "20230602" "0" "0" "20190501" "20190930" "120" "9" "19-04-23 16:37:10" "19-04-23 16:40:54"
"496300128" "1" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "1" "" "0" "0" "20190501" "20190930" "120" "9" "19-04-23 16:37:10" "19-04-23 16:40:54"
"496300128" "2" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "F19D0608" "ゴナールエフ皮下注ペン450" "Gonalef Pen 450 (1)" "008" "BDマイクロファインプラス" "MF" "F005" "皮下注ペン" "0000" "" "V018" "450IU" "P011" "1PEN" "1" "" "0" "0" "20190501" "20190930" "120" "9" "19-04-23 16:37:10" "19-04-23 16:40:54"
"496300134" "2" "ゴナールエフ 皮下注ペン 900IU 1PEN" "" "F19B0608" "ゴナールエフ皮下注ペン900" "Gonalef Pen 900 (1)" "008" "BDマイクロファインプラス" "MF" "F005" "皮下注ペン" "0000" "" "V019" "900IU" "P011" "1PEN" "1" "20230603" "0" "0" "20190501" "20190930" "110" "9" "19-04-23 16:38:36" "19-04-23 16:41:05"
"496301315" "0" "プロファシー 注射剤 5000IU 10VIAL" "" "F47706A0" "プロファシー 注 5000IU" "PROFASI M AMP. 5000 IU (10)" "002" "プロファシー" "PF" "F002" "注射剤" "0000" "" "V020" "5000IU" "P005" "10VIAL" "10" "20230604" "0" "0" "20070401" "20190930" "160" "0" "17-11-08 16:52:41" "19-09-19 11:42:45"

1 prd_cd sub_no prd_nm prd_e_nm mkr_cd mkr_inf_1 mkr_inf_2 phm_itm_cd itm_nm itm_sht_nm form_cd form_nm vol_cd vol_nm cont_cd cont_nm pkg_cd pkg_nm cnv_num jsk_start_dt prd_sale_kbn jsk_proc_kbn start_dt end_dt dsp_odr rec_sts_kbn ins_dt upd_dt
2 496300110 496300128 2 1 ゴナールエフ 皮下注ペン 300IU 1PEN ゴナールエフ 皮下注ペン 450IU 1PEN F1990608 ゴナールエフ皮下注ペン 300 GONAL-F PEN 300IU (1) - JPN 005 セロスティム ST F005 皮下注ペン 0000 V017 300IU P011 1PEN 1 20230601 0 0 20190501 20190930 100 120 9 19-04-23 16:35:36 19-04-23 16:37:10 19-04-23 16:40:38 19-04-23 16:40:54
3 496300127 496300128 2 ゴナールエフ 皮下注ペン 450IU 1PEN F19D0608 ゴナールエフ皮下注ペン450 Gonalef Pen 450 (1) 008 BDマイクロファインプラス MF F005 皮下注ペン 0000 V018 450IU P011 1PEN 1 20230602 0 0 20190501 20190930 120 9 19-04-23 16:37:10 19-04-23 16:40:54
4 496300134 2 ゴナールエフ 皮下注ペン 900IU 1PEN F19B0608 ゴナールエフ皮下注ペン900 Gonalef Pen 900 (1) 008 BDマイクロファインプラス MF F005 皮下注ペン 0000 V019 900IU P011 1PEN 1 20230603 0 0 20190501 20190930 110 9 19-04-23 16:38:36 19-04-23 16:41:05
5 496301315 0 プロファシー 注射剤 5000IU 10VIAL F47706A0 プロファシー 注 5000IU PROFASI M AMP. 5000 IU (10) 002 プロファシー PF F002 注射剤 0000 V020 5000IU P005 10VIAL 10 20230604 0 0 20070401 20190930 160 0 17-11-08 16:52:41 19-09-19 11:42:45