物品管理系統資料操作邏輯分析 - 返還済
Copyright Notice: This article is an original work licensed under the CC 4.0 BY-NC-ND license.
If you wish to repost this article, please include the original source link and this copyright notice.
Source link: https://v2know.com/article/1110
一、返還操作概述
在返還作業自動化的流程中,實際上只需處理以下兩張資料表:
-
henpin_tbl
-
henpin_meisai_tbl
至於 kobetu_tbl
,雖然理論上需找出對應的 kobetu_cd
並將 kanri_sts
從 13 → 1,但這部分在自動化時並非必要,可視情況省略。
二、返還已完成(返還済)後的處理邏輯
返還操作發起後,需由原供用官(即前一次寄托時的發起者)進行接收,否則無法進行下一次的管理換(払)。
更新內容如下:
-
henpin_tbl
-
shori_sts
: 51 → 99 -
upd_op_cd
: 10000 → 10004
-
-
henpin_meisai_tbl
-
upd_op_cd
: 10000 → 10004
-
UPDATE on [henpin_tbl] (2 changes) | |||||||||||||||||
doc_cd | p_doc_cd | uketuke_ymd | kanrikan_cd | kanri_ymd | kanri_doc_no | kyouyoukan_cd | kyouyou_ymd | watasi_gyousha_cd | watasi_ymd | keiyaku_ymd | keiyaku_no | konkyo | shori_sts | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd |
573112 | 2025/03/24 0:00:00 | 10000 | 2025/03/24 0:00:00 | TEST-03-RETURN | 10004 | 2025/03/24 0:00:00 | 293 | 返品2返品2 | 51 | 10000 | 2025/03/24 14:04:33 | 10000 | 2025/03/24 0:00:00 | ||||
573112 | 2025/03/24 0:00:00 | 10000 | 2025/03/24 0:00:00 | TEST-03-RETURN | 10004 | 2025/03/24 0:00:00 | 293 | 返品2返品2 | 99 | 10000 | 2025/03/24 14:04:33 | 10004 | 2025/03/24 0:00:00 |
↓
UPDATE on [henpin_meisai_tbl] (1 changes) | ||||||||||
doc_cd | meisai_no | buppin_cd | koufu_suryo | siyou_suryo | henpin_suryo | zan_suryo | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd |
573112 | 1 | C-00009 | 2 | 0 | 2 | 0 | 10000 | 2025/03/24 14:04:33 | 10000 | 2025/03/24 0:00:00 |
573112 | 1 | C-00009 | 2 | 0 | 2 | 0 | 10000 | 2025/03/24 14:04:33 | 10004 | 2025/03/24 0:00:00 |
+
UPDATE on [henpin_meisai_tbl] (1 changes) | ||||||||||
doc_cd | meisai_no | buppin_cd | koufu_suryo | siyou_suryo | henpin_suryo | zan_suryo | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd |
573112 | 2 | C-00009 | 2 | 0 | 2 | 0 | 10000 | 2025/03/24 14:04:33 | 10000 | 2025/03/24 0:00:00 |
573112 | 2 | C-00009 | 2 | 0 | 2 | 0 | 10000 | 2025/03/24 14:04:33 | 10004 | 2025/03/24 0:00:00 |
註:雖然這些更新在功能上並非絕對必要,但建議為求嚴謹仍應執行。
三、返還完成後的新增動作說明
當上述步驟完成,代表物品已正式返還至供用官手中。
備註:本邏輯僅適用於「有供用官且有使用者」的情況,對於原本無供用官或無使用者的物品,則不在本處理範圍內。
四、【まとめる】模式的資料操作
在「まとめる」模式下,所有物品會合併處理為一筆管理資料。操作如下:
-
kanribo_tbl
→ 新增資料 -
kyouyoubo_tbl
→ 新增資料 -
kobetu_tbl
→ kanri_sts: 1 → 22,更新 upd_op_cd -
link_tbl
→ 新增資料
INSERT on [kanribo_tbl] | |||||||||||||||||||
kanribo_cd | buppin_cd | shoumou_kbn | kanrikan_cd | kasitu_cd | ymd | kanribo_seiri_kbn | tekiyou | idou_su | split_idou_su | idou_kakaku | sonota_su | split_sonota_su | bikou | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | del_flg | seiri_no |
2488288 | C-00009 | 0 | 10000 | 1000 | 2025/03/24 0:00:00 | 17 | TEST-03-RETURN | 3000000 | 2 | 1 | 返品2返品2 | 10004 | 2025/03/24 14:17:25 |
↓
INSERT on [kyouyoubo_tbl] | |||||||||||||||||||
kyouyoubo_cd | buppin_cd | shoumou_kbn | kyouyoukan_cd | kakari_cd | siyousha_cd | ymd | kyouyoubo_seiri_kbn | tekiyou | idou_su | split_idou_su | idou_kakaku | sonota_su | split_sonota_su | bikou | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | del_flg |
2348813 | C-00009 | 0 | 10004 | 1000 | 10001 | 2025/03/24 0:00:00 | 1 | TEST-03-RETURN | 2 | 3000000 | 1 | 返品2返品2 | 10004 | 2025/03/24 14:17:25 |
↓
UPDATE on [kobetu_tbl] (2 changes) | |||||||||||||||||||||||||||
kobetu_cd | p_kobetu_cd | buppin_cd | shutoku_ymd | haraidasi_ymd | buppin_kan_no | gyousha_cd | tanka | zei_gaku | hinsitu_kikaku | kanrikan_cd | kyouyoukan_cd | siyousha_cd | hontai_no | zougen_kbn | shoumou_kbn | zou_kbn | gen_kbn | zou_riyuu | gen_riyuu | kanri_sts | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | kaitei_kakaku | kosuu | del_flg |
1277302 | C-00009 | 2025/03/01 0:00:00 | 1500000 | 1500000 | 規格A | 10000 | 10004 | 10001 | 1 | 0 | 1 | 1 | 10000 | 2025/03/24 13:46:00 | 10000 | 2025/03/24 0:00:00 | 2 | ||||||||||
1277302 | C-00009 | 2025/03/01 0:00:00 | 1500000 | 1500000 | 規格A | 10000 | 10004 | 10001 | 1 | 0 | 1 | 22 | 10000 | 2025/03/24 13:46:00 | 10004 | 2025/03/24 0:00:00 | 2 |
↓
INSERT on [link_tbl] | |||||||||||||
link_cd | original_kobetu_cd | kobetu_cd | matome_cd_uke | kanribo_cd_uke | kyouyoubo_cd_uke | matome_cd_harai | kanribo_cd_harai | kyouyoubo_cd_harai | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | buppin_cd |
1974240 | 1277302 | 4010101 | 2488288 | 2348813 | 10004 | 2025/03/24 14:17:26 | C-00009 |
五、【まとめない】模式的資料操作(逐一處理,每筆獨立)
在「まとめない」模式下,以下操作順序不可變:
-
kanribo_tbl
→ 新增資料 -
kyouyoubo_tbl
→ 新增資料
接著,針對每一筆 kobetu_cd
,逐一執行以下兩項操作,總共進行 N 次(N 為物品數量):
-
kobetu_tbl
→ 將kanri_sts
從 1 → 22,並更新upd_op_cd
-
link_tbl
→ 新增與該kobetu_cd
對應的關聯資料
INSERT on [kanribo_tbl] | |||||||||||||||||||
kanribo_cd | buppin_cd | shoumou_kbn | kanrikan_cd | kasitu_cd | ymd | kanribo_seiri_kbn | tekiyou | idou_su | split_idou_su | idou_kakaku | sonota_su | split_sonota_su | bikou | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | del_flg | seiri_no |
2488308 | C-00009 | 0 | 10000 | 1000 | 2025/03/24 0:00:00 | 17 | TEST-03-RETURN | 6000000 | 2 | 1 | 返品2返品2 | 10004 | 2025/03/24 14:17:26 |
↓
INSERT on [kyouyoubo_tbl] | |||||||||||||||||||
kyouyoubo_cd | buppin_cd | shoumou_kbn | kyouyoukan_cd | kakari_cd | siyousha_cd | ymd | kyouyoubo_seiri_kbn | tekiyou | idou_su | split_idou_su | idou_kakaku | sonota_su | split_sonota_su | bikou | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | del_flg |
2348833 | C-00009 | 0 | 10004 | 1001 | 10002 | 2025/03/24 0:00:00 | 1 | TEST-03-RETURN | 2 | 6000000 | 1 | 返品2返品2 | 10004 | 2025/03/24 14:17:26 |
↓ 一回目
UPDATE on [kobetu_tbl] (2 changes) | |||||||||||||||||||||||||||
kobetu_cd | p_kobetu_cd | buppin_cd | shutoku_ymd | haraidasi_ymd | buppin_kan_no | gyousha_cd | tanka | zei_gaku | hinsitu_kikaku | kanrikan_cd | kyouyoukan_cd | siyousha_cd | hontai_no | zougen_kbn | shoumou_kbn | zou_kbn | gen_kbn | zou_riyuu | gen_riyuu | kanri_sts | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | kaitei_kakaku | kosuu | del_flg |
1277322 | C-00009 | 2025/03/01 0:00:00 | 3000000 | 3000000 | 規格B | 10000 | 10004 | 10002 | 1 | 0 | 1 | 1 | 10000 | 2025/03/24 13:46:01 | 10000 | 2025/03/24 0:00:00 | 1 | ||||||||||
1277322 | C-00009 | 2025/03/01 0:00:00 | 3000000 | 3000000 | 規格B | 10000 | 10004 | 10002 | 1 | 0 | 1 | 22 | 10000 | 2025/03/24 13:46:01 | 10004 | 2025/03/24 0:00:00 | 1 |
↓
INSERT on [link_tbl] | |||||||||||||
link_cd | original_kobetu_cd | kobetu_cd | matome_cd_uke | kanribo_cd_uke | kyouyoubo_cd_uke | matome_cd_harai | kanribo_cd_harai | kyouyoubo_cd_harai | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | buppin_cd |
1974260 | 1277322 | 4010121 | 2488308 | 2348833 | 10004 | 2025/03/24 14:17:26 | C-00009 |
↓ 二回目
UPDATE on [kobetu_tbl] (2 changes) | |||||||||||||||||||||||||||
kobetu_cd | p_kobetu_cd | buppin_cd | shutoku_ymd | haraidasi_ymd | buppin_kan_no | gyousha_cd | tanka | zei_gaku | hinsitu_kikaku | kanrikan_cd | kyouyoukan_cd | siyousha_cd | hontai_no | zougen_kbn | shoumou_kbn | zou_kbn | gen_kbn | zou_riyuu | gen_riyuu | kanri_sts | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | kaitei_kakaku | kosuu | del_flg |
1277342 | C-00009 | 2025/03/01 0:00:00 | 3000000 | 3000000 | 規格B | 10000 | 10004 | 10002 | 1 | 0 | 1 | 1 | 10000 | 2025/03/24 13:46:01 | 10000 | 2025/03/24 0:00:00 | 1 | ||||||||||
1277342 | C-00009 | 2025/03/01 0:00:00 | 3000000 | 3000000 | 規格B | 10000 | 10004 | 10002 | 1 | 0 | 1 | 22 | 10000 | 2025/03/24 13:46:01 | 10004 | 2025/03/24 0:00:00 | 1 |
↓
INSERT on [link_tbl] | |||||||||||||
link_cd | original_kobetu_cd | kobetu_cd | matome_cd_uke | kanribo_cd_uke | kyouyoubo_cd_uke | matome_cd_harai | kanribo_cd_harai | kyouyoubo_cd_harai | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | buppin_cd |
1974280 | 1277342 | 4010121 | 2488308 | 2348833 | 10004 | 2025/03/24 14:17:27 | C-00009 |
六、資料操作摘要表
操作類型 | 資料表名稱 | 說明 |
---|---|---|
UPDATE | henpin_tbl |
shori_sts, upd_op_cd 更新 |
UPDATE | henpin_meisai_tbl |
upd_op_cd 更新 |
INSERT | kanribo_tbl |
新增管理紀錄 |
INSERT | kyouyoubo_tbl |
新增供用紀錄 |
UPDATE | kobetu_tbl |
kanri_sts 更新(每筆物品) |
INSERT | link_tbl |
新增對應 link(每筆物品) |
【まとめない】操作流程圖:
INSERT → kanribo_tbl
↓
INSERT → kyouyoubo_tbl
↓
FOR EACH kobetu_cd:
├─ UPDATE → kobetu_tbl(kanri_sts: 1→22,更新upd_op_cd)
└─ INSERT → link_tbl(關聯kobetu_cd)
This article was last edited at