feat: 卸在庫の対応

This commit is contained in:
shimoda.m@nds-tyo.co.jp 2023-09-16 14:46:41 +09:00
parent bc90b0eb7c
commit 5c7489ebe5
4 changed files with 68 additions and 66 deletions

View File

@ -149,7 +149,7 @@ class VjskReceiveFileMapper:
,src05.convert_empty_to_null(t.rec_ymd)
,src05.convert_empty_to_null(t.sale_data_cat)
,src05.convert_empty_to_null(t.slip_file_name)
,src05.convert_empty_to_null(t.slip_mgt_num)
,t.slip_mgt_num
,t.row_num
,src05.convert_empty_to_null(t.hsdn_ymd)
,src05.convert_empty_to_null(t.exec_dt)
@ -1124,67 +1124,67 @@ class VjskReceiveFileMapper:
,dwh_upd_dt
)
SELECT
t.rec_data
,t.rec_whs_cd
,t.rec_whs_sub_cd
,t.rec_sto_place
,t.rec_stock_ymd
,t.rec_comm_cd
,t.rec_qty
,t.rec_stock_no_sign
,t.rec_jan_cd
,t.free_item
,t.rec_ymd
,t.sale_data_cat
,t.slip_file_name
src05.convert_empty_to_null(t.rec_data)
,src05.convert_empty_to_null(t.rec_whs_cd)
,src05.convert_empty_to_null(t.rec_whs_sub_cd)
,src05.convert_empty_to_null(t.rec_sto_place)
,src05.convert_empty_to_null(t.rec_stock_ymd)
,src05.convert_empty_to_null(t.rec_comm_cd)
,src05.convert_empty_to_null(t.rec_qty)
,src05.convert_empty_to_null(t.rec_stock_no_sign)
,src05.convert_empty_to_null(t.rec_jan_cd)
,src05.convert_empty_to_null(t.free_item)
,src05.convert_empty_to_null(t.rec_ymd)
,src05.convert_empty_to_null(t.sale_data_cat)
,src05.convert_empty_to_null(t.slip_file_name)
,t.slip_mgt_num
,t.row_num
,t.exec_dt
,t.err_flg1
,t.err_flg2
,t.err_flg3
,t.err_flg4
,t.err_flg5
,t.err_flg6
,t.err_flg7
,t.err_flg8
,t.err_flg9
,t.err_flg10
,t.rec_sts_kbn
,src05.convert_empty_to_null(t.exec_dt)
,src05.convert_empty_to_null(t.err_flg1)
,src05.convert_empty_to_null(t.err_flg2)
,src05.convert_empty_to_null(t.err_flg3)
,src05.convert_empty_to_null(t.err_flg4)
,src05.convert_empty_to_null(t.err_flg5)
,src05.convert_empty_to_null(t.err_flg6)
,src05.convert_empty_to_null(t.err_flg7)
,src05.convert_empty_to_null(t.err_flg8)
,src05.convert_empty_to_null(t.err_flg9)
,src05.convert_empty_to_null(t.err_flg10)
,src05.convert_empty_to_null(t.rec_sts_kbn)
,nullif(t.ins_dt, 0) -- 受領データがブランクだった場合にゼロ日付で取得されるので明示的にNULL値に変換する
,t.ins_usr
,src05.convert_empty_to_null(t.ins_usr)
,SYSDATE()
FROM org05.whole_stock AS t
ON DUPLICATE KEY UPDATE
rec_data=t.rec_data
,rec_whs_cd=t.rec_whs_cd
,rec_whs_sub_cd=t.rec_whs_sub_cd
,rec_sto_place=t.rec_sto_place
,rec_stock_ymd=t.rec_stock_ymd
,rec_comm_cd=t.rec_comm_cd
,rec_qty=t.rec_qty
,rec_stock_no_sign=t.rec_stock_no_sign
,rec_jan_cd=t.rec_jan_cd
,free_item=t.free_item
,rec_ymd=t.rec_ymd
,sale_data_cat=t.sale_data_cat
,slip_file_name=t.slip_file_name
,slip_mgt_num=t.slip_mgt_num
,row_num=t.row_num
,exec_dt=t.exec_dt
,err_flg1=t.err_flg1
,err_flg2=t.err_flg2
,err_flg3=t.err_flg3
,err_flg4=t.err_flg4
,err_flg5=t.err_flg5
,err_flg6=t.err_flg6
,err_flg7=t.err_flg7
,err_flg8=t.err_flg8
,err_flg9=t.err_flg9
,err_flg10=t.err_flg10
,rec_sts_kbn=t.rec_sts_kbn
,ins_dt=nullif(t.ins_dt, 0)
,ins_usr=t.ins_usr
rec_data=VALUES(rec_data)
,rec_whs_cd=VALUES(rec_whs_cd)
,rec_whs_sub_cd=VALUES(rec_whs_sub_cd)
,rec_sto_place=VALUES(rec_sto_place)
,rec_stock_ymd=VALUES(rec_stock_ymd)
,rec_comm_cd=VALUES(rec_comm_cd)
,rec_qty=VALUES(rec_qty)
,rec_stock_no_sign=VALUES(rec_stock_no_sign)
,rec_jan_cd=VALUES(rec_jan_cd)
,free_item=VALUES(free_item)
,rec_ymd=VALUES(rec_ymd)
,sale_data_cat=VALUES(sale_data_cat)
,slip_file_name=VALUES(slip_file_name)
,slip_mgt_num=VALUES(slip_mgt_num)
,row_num=VALUES(row_num)
,exec_dt=VALUES(exec_dt)
,err_flg1=VALUES(err_flg1)
,err_flg2=VALUES(err_flg2)
,err_flg3=VALUES(err_flg3)
,err_flg4=VALUES(err_flg4)
,err_flg5=VALUES(err_flg5)
,err_flg6=VALUES(err_flg6)
,err_flg7=VALUES(err_flg7)
,err_flg8=VALUES(err_flg8)
,err_flg9=VALUES(err_flg9)
,err_flg10=VALUES(err_flg10)
,rec_sts_kbn=VALUES(rec_sts_kbn)
,ins_dt=VALUES(ins_dt)
,ins_usr=VALUES(ins_usr)
,dwh_upd_dt=SYSDATE()
;
""")
@ -1303,7 +1303,7 @@ class VjskReceiveFileMapper:
,src05.convert_empty_to_null(t.rec_ymd)
,src05.convert_empty_to_null(t.sale_data_cat)
,src05.convert_empty_to_null(t.slip_file_name)
,src05.convert_empty_to_null(t.slip_mgt_num)
,t.slip_mgt_num
,t.row_num
,src05.convert_empty_to_null(t.hsdn_ymd)
,src05.convert_empty_to_null(t.exec_dt)

View File

@ -168,7 +168,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 = {
@ -184,7 +184,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}")
# 突合から除外する項目
@ -208,18 +208,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.slip_mgt_num = o.slip_mgt_num)")
f"select s.* from {table_name_src} s inner join {table_name_org} o on (s.slip_mgt_num = o.slip_mgt_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 @@
"D4625301026 2302284963001270000040000001ゴナールエフヒカチユウペン450 1トウ40 " "253" "01" "026 " "230228" "496300127" "000004" "0" "0000" "01ゴナールエフヒカチユウペン450 1トウ40 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000060" "60" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
"D4625301026 2302284963001340000220000001ゴナールエフヒカチユウペン900 1トウ40 " "253" "01" "026 " "230228" "496300134" "000022" "0" "0000" "01ゴナールエフヒカチユウペン900 1トウ40 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000061" "61" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
"D4625301026 2302284963004170000500000001オビドレルヒカチユウシリンジ250MCG 140 " "253" "01" "026 " "230228" "496300417" "000050" "0" "0000" "01オビドレルヒカチユウシリンジ250MCG 140 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000062" "62" "202303142041" "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "23-03-14 20:41:57" "SYSTEM"
"" "" "" "" "" "" "" "" "" "" "" "" "" "J2023031400000063" "63" "" "" "" "" "" "" "" "" "" "" "" "" "23-03-14 20:41:57" ""
"D4625301026 2302284963004170000500000001オビドレルヒカチユウシリンジ250MCG 140 " "253" "01" "026 " "230228" "496300417" "000050" "0" "0000" "01オビドレルヒカチユウシリンジ250MCG 140 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000064" "64" "202303142041" "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "23-03-14 20:41:57" "SYSTEM"
1 rec_data rec_whs_cd rec_whs_sub_cd rec_sto_place rec_stock_ymd rec_comm_cd rec_amt rev_stok_no_sign rev_jan_cd rec_free_item rec_ymd sale_data_cat slip_file_nm slip_mgt_no row_num exec_dt err_flg1 err_flg2 err_flg3 err_flg4 err_flg5 err_flg6 err_flg7 err_flg8 err_flg9 err_flg10 rec_sts_kbn ins_dt ins_usr
3 D4625301026 2302284963001270000040000001ゴナールエフヒカチユウペン450 1トウ40 253 01 026 230228 496300127 000004 0 0000 01ゴナールエフヒカチユウペン450 1トウ40 20230314 J VJSK-STOCK_J_MERCK_2023031400.txt J2023031400000060 60 202303142041 0 0 0 0 0 0 0 0 0 0 0 23-03-14 20:41:57 SYSTEM
4 D4625301026 2302284963001340000220000001ゴナールエフヒカチユウペン900 1トウ40 253 01 026 230228 496300134 000022 0 0000 01ゴナールエフヒカチユウペン900 1トウ40 20230314 J VJSK-STOCK_J_MERCK_2023031400.txt J2023031400000061 61 202303142041 0 0 0 0 0 0 0 0 0 0 0 23-03-14 20:41:57 SYSTEM
5 D4625301026 2302284963004170000500000001オビドレルヒカチユウシリンジ250MCG 140 253 01 026 230228 496300417 000050 0 0000 01オビドレルヒカチユウシリンジ250MCG 140 20230314 J VJSK-STOCK_J_MERCK_2023031400.txt J2023031400000062 62 202303142041 a b c d e f g h i j k 23-03-14 20:41:57 SYSTEM
6 J2023031400000063 63 23-03-14 20:41:57
7 D4625301026 2302284963004170000500000001オビドレルヒカチユウシリンジ250MCG 140 253 01 026 230228 496300417 000050 0 0000 01オビドレルヒカチユウシリンジ250MCG 140 20230314 J VJSK-STOCK_J_MERCK_2023031400.txt J2023031400000064 64 202303142041 a b c d e f g h i j k 23-03-14 20:41:57 SYSTEM

View File

@ -1,5 +1,5 @@
"rec_data" "rec_whs_cd" "rec_whs_sub_cd" "rec_sto_place" "rec_stock_ymd" "rec_comm_cd" "rec_amt" "rev_stok_no_sign" "rev_jan_cd" "rec_free_item" "rec_ymd" "sale_data_cat" "slip_file_nm" "slip_mgt_no" "row_num" "exec_dt" "err_flg1" "err_flg2" "err_flg3" "err_flg4" "err_flg5" "err_flg6" "err_flg7" "err_flg8" "err_flg9" "err_flg10" "rec_sts_kbn" "ins_dt" "ins_usr"
"DAY2-301026 2302284963001340000220000001ゴナールエフヒカチユウペン900 1トウ40 " "253" "01" "026 " "230228" "496300134" "000022" "0" "0000" "01ゴナールエフヒカチユウペン900 1トウ40 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000061" "61" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
"DAY2-301026 2302284963004170000500000001オビドレルヒカチユウシリンジ250MCG 140 " "253" "01" "026 " "230228" "496300417" "000050" "0" "0000" "01オビドレルヒカチユウシリンジ250MCG 140 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000062" "62" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
"DAY2-301027 2302284963001100000020000001ゴナールエフヒカチユウペン300 1トウ40 " "253" "01" "027 " "230228" "496300110" "000002" "0" "0000" "01ゴナールエフヒカチユウペン300 1トウ40 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000063" "63" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
"DAY2-301027 2302284963001270000110000001ゴナールエフヒカチユウペン450 1トウ40 " "253" "01" "027 " "230228" "496300127" "000011" "0" "0000" "01ゴナールエフヒカチユウペン450 1トウ40 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000064" "64" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
"" "" "" "" "" "" "" "" "" "" "" "" "" "J2023031400000064" "64" "" "" "" "" "" "" "" "" "" "" "" "" "23-03-14 20:41:57" ""
"DAY2-301026 2302284963001340000220000001ゴナールエフヒカチユウペン900 1トウ40 " "253" "01" "026 " "230228" "496300134" "000022" "0" "0000" "01ゴナールエフヒカチユウペン900 1トウ40 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000065" "65" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
"DAY2-301026 2302284963004170000500000001オビドレルヒカチユウシリンジ250MCG 140 " "253" "01" "026 " "230228" "496300417" "000050" "0" "0000" "01オビドレルヒカチユウシリンジ250MCG 140 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000066" "66" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
1 rec_data rec_whs_cd rec_whs_sub_cd rec_sto_place rec_stock_ymd rec_comm_cd rec_amt rev_stok_no_sign rev_jan_cd rec_free_item rec_ymd sale_data_cat slip_file_nm slip_mgt_no row_num exec_dt err_flg1 err_flg2 err_flg3 err_flg4 err_flg5 err_flg6 err_flg7 err_flg8 err_flg9 err_flg10 rec_sts_kbn ins_dt ins_usr
DAY2-301026 2302284963001340000220000001ゴナールエフヒカチユウペン900 1トウ40 253 01 026 230228 496300134 000022 0 0000 01ゴナールエフヒカチユウペン900 1トウ40 20230314 J VJSK-STOCK_J_MERCK_2023031400.txt J2023031400000061 61 202303142041 0 0 0 0 0 0 0 0 0 0 0 23-03-14 20:41:57 SYSTEM
DAY2-301026 2302284963004170000500000001オビドレルヒカチユウシリンジ250MCG 140 253 01 026 230228 496300417 000050 0 0000 01オビドレルヒカチユウシリンジ250MCG 140 20230314 J VJSK-STOCK_J_MERCK_2023031400.txt J2023031400000062 62 202303142041 0 0 0 0 0 0 0 0 0 0 0 23-03-14 20:41:57 SYSTEM
2 DAY2-301027 2302284963001100000020000001ゴナールエフヒカチユウペン300 1トウ40 253 01 027 230228 496300110 000002 0 0000 01ゴナールエフヒカチユウペン300 1トウ40 20230314 J VJSK-STOCK_J_MERCK_2023031400.txt J2023031400000063 63 202303142041 0 0 0 0 0 0 0 0 0 0 0 23-03-14 20:41:57 SYSTEM
3 DAY2-301027 2302284963001270000110000001ゴナールエフヒカチユウペン450 1トウ40 253 01 027 230228 496300127 000011 0 0000 01ゴナールエフヒカチユウペン450 1トウ40 20230314 J VJSK-STOCK_J_MERCK_2023031400.txt J2023031400000064 64 202303142041 0 0 0 0 0 0 0 0 0 0 0 23-03-14 20:41:57 SYSTEM
4 DAY2-301026 2302284963001340000220000001ゴナールエフヒカチユウペン900 1トウ40 253 01 026 230228 496300134 000022 0 0000 01ゴナールエフヒカチユウペン900 1トウ40 20230314 J VJSK-STOCK_J_MERCK_2023031400.txt J2023031400000065 65 202303142041 0 0 0 0 0 0 0 0 0 0 0 23-03-14 20:41:57 SYSTEM
5 DAY2-301026 2302284963004170000500000001オビドレルヒカチユウシリンジ250MCG 140 253 01 026 230228 496300417 000050 0 0000 01オビドレルヒカチユウシリンジ250MCG 140 20230314 J VJSK-STOCK_J_MERCK_2023031400.txt J2023031400000066 66 202303142041 0 0 0 0 0 0 0 0 0 0 0 23-03-14 20:41:57 SYSTEM