物品管理系統資料操作邏輯分析 - 新規取得
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/1097
整體概述
本【物品管理系統資料操作邏輯分析】將針對以下流程進行詳細的數據操作說明:
新規取得 → 受入 → 寄託(外へ) → 寄託(外へ)承認済 → 返還 → 返還済 → 管理換(払) → 管理換(払)承認済 → 管理換(受) → 管理換(受)済
實際操作物品
-
物品番號:C-00009
-
物品名稱:トラック(2t)
使用之證書及對應帳號
證書番號 | 對應操作階段 | 對應帳號(操作順序) |
---|---|---|
TEST-01 | 新規取得 | 10000 → 10004 |
TEST-02-SENT | 寄託(外へ) | 10004 → 10000 |
TEST-03-RETURN | 返還 | 10000 → 10004 |
TEST-04-交換 | 管理換(払) | 10004 → 10000 |
TEST-05-GET | 管理換(受) | 15000 → 15012 |
注意:上述證書番號所對應的每一步操作實際上包含兩筆資料(對應兩筆帳務操作),並存在明確的先後順序。
例如,「TEST-01」中,首先由帳號 10000 執行操作,接著由帳號 10004 執行對應處理。
最終會產生的賬簿記錄
10000:
15000:
新規取得
以下這張圖展示了一個物品管理系統的資料庫操作流程,涉及多個資料表(ukeharai_tbl
、ukeharai_meisai_tbl
、kobetu_tbl
、kanribo_tbl
),並說明了資料的插入方式,以及「物品的『まとめる』(合併)選項」如何影響資料儲存的方式。
關鍵分析點
-
ukeharai_tbl
只會建立一筆紀錄- 右下角的
INSERT on [ukeharai_tbl]
顯示,即使畫面上有多個物品,ukeharai_tbl
仍只會建立一筆紀錄。 - 這與圖片中的說明一致:「1回の【新規取得】では、ukeharai_tbl に1件の記録しか生成されません。」(一次【新規取得】只會在
ukeharai_tbl
建立 1 筆紀錄。)
- 右下角的
-
ukeharai_meisai_tbl
的紀錄數 =kanribo_tbl
的kanribo_cd
數量- 圖片中以黃色標註指出,
kanribo_tbl
內有 2 個kanribo_cd
,對應ukeharai_meisai_tbl
建立 2 筆紀錄。 - 這表示,每個
kanribo_cd
在ukeharai_meisai_tbl
中都會對應建立一筆紀錄。
- 圖片中以黃色標註指出,
-
kobetu_tbl
的紀錄數與「物品まとめ」選項有關- 當選擇「まとめる」時(紅色箭頭):
- 只會建立 1 筆
kobetu_cd
紀錄,數量為 2(合併了相同規格的物品)。
- 只會建立 1 筆
- 當選擇「まとめない」時(藍色箭頭):
kobetu_tbl
會建立 2 筆kobetu_cd
紀錄,每筆數量為 1。
- 這表示「まとめる」選項會影響
kobetu_tbl
的插入邏輯,決定是合併為單筆紀錄,還是分開記錄每個物品。
- 當選擇「まとめる」時(紅色箭頭):
總結
ukeharai_tbl
只會建立 1 筆紀錄,不管包含多少物品。ukeharai_meisai_tbl
的紀錄數取決於kanribo_cd
的數量。kobetu_tbl
的紀錄數與「物品まとめ」選項相關,若選擇合併,則建立 1 筆紀錄;若選擇不合併,則每個物品會分別建立 1 筆紀錄。
注:
-
kobetu_tbl
-
kobetu_rireki_tbl
-
zougen_rireki_tbl
是一組,插入數據的時候會同時插入。
因此,按照如上圖所示的情況:
-
1←ukeharai_tbl
-
2←ukeharai_meisai_tbl
-
3*3←kobetu_tbl+kobetu_rireki_tbl+zougen_rireki_tbl
一共會插入12條數據。
新規取得 C-0009-4個:「まとめる」與「まとめない」處理模式分析
根據是否進行資料的「まとめる(合併)」與「まとめない(不合併)」處理,
在執行「新規取得 C-0009-4個」時,會產生如下的資料庫操作:
操作順序 | 資料表名稱 | 分類 | 備註 |
---|---|---|---|
1 | ukeharai_tbl |
共通 | 必要記錄 |
2 | ukeharai_meisai_tbl |
まとめる | 明細資料(合併的第一筆) |
3 | ukeharai_meisai_tbl |
まとめない | 明細資料(不合併的第一筆) |
4 | kobetu_tbl |
まとめる | 合併後個別資料 |
5 | kobetu_rireki_tbl |
まとめる | 合併後履歷 |
6 | zougen_rireki_tbl |
まとめる | 合併後增減履歷 |
7 | kobetu_tbl |
まとめない | 第一筆不合併個別資料 |
8 | kobetu_rireki_tbl |
まとめない | 第一筆不合併履歷 |
9 | zougen_rireki_tbl |
まとめない | 第一筆不合併增減履歷 |
10 | kobetu_tbl |
まとめない | 第二筆不合併個別資料 |
11 | kobetu_rireki_tbl |
まとめない | 第二筆不合併履歷 |
12 | zougen_rireki_tbl |
まとめない | 第二筆不合併增減履歷 |
以下是整個操作的具體流程:
1. 新規取得(*購入):
INSERT on [ukeharai_tbl] | ||||||||||||||||
doc_cd | p_doc_cd | seiri_kbn | uketuke_ymd | kanrikan_cd | kanri_ymd | kanri_doc_no | kyouyoukan_cd | kyouyou_ymd | gyousha_cd | bikou | shori_sts | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | seiri_kbn_pull |
573052 | 101 | 2025/03/01 0:00:00 | 10000 | TEST-01 | 10004 | 新規取得C-0009-4個-まとめる-まとめない(二つずつ) | 51 | 10000 | 2025/03/24 13:45:59 | 0 |
↓ 受払_明細+1(まとめる)
INSERT on [ukeharai_meisai_tbl] | ||||||||
doc_cd | meisai_no | buppin_cd | ukeire_su | haraidasi_su | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd |
573052 | 1 | C-00009 | 2 | 10000 | 2025/03/24 13:45:59 |
↓ 受払_明細+2(まとめない)
INSERT on [ukeharai_meisai_tbl] | ||||||||
doc_cd | meisai_no | buppin_cd | ukeire_su | haraidasi_su | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd |
573052 | 2 | C-00009 | 2 | 10000 | 2025/03/24 13:46:00 |
↓ 個別+1(まとめる)
INSERT on [kobetu_tbl] | |||||||||||||||||||||||||||
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 | 1 | 0 | 1 | 1 | 10000 | 2025/03/24 13:46:00 | 2 |
↓ 個別履歴+1(まとめる)
INSERT on [kobetu_rireki_tbl] | ||||||
doc_cd | meisai_no | kobetu_cd | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd |
573052 | 1 | 1277302 | 10000 | 2025/03/24 13:46:00 |
↓ 増減履歴+1(まとめる)
INSERT on [zougen_rireki_tbl] | |||||||||||||||||||
zougen_id | sisho_cd | kobetu_cd | buppin_cd | zougen_hinmoku_cd | shuhinmoku_cd | seiri_kbn | tanka | kosuu | ymd | riyuu | doc_cd | kanribo_cd | gobyuu_flg | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | del_flg | fix_flg |
414997 | 20 | 1277302 | C-00009 | C-00009 | 1 | 1500000 | 2 | 2025/03/01 0:00:00 | 573052 | 0 | 0 | 10000 | 2025/03/24 0:00:00 | 0 | 0 |
↓ 個別+1番(まとめない)
INSERT on [kobetu_tbl] | |||||||||||||||||||||||||||
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 | 1 | 0 | 1 | 1 | 10000 | 2025/03/24 13:46:01 | 1 |
↓ 個別履歴+1番(まとめない)
INSERT on [kobetu_rireki_tbl] | ||||||
doc_cd | meisai_no | kobetu_cd | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd |
573052 | 2 | 1277322 | 10000 | 2025/03/24 13:46:01 |
↓ 増減履歴+1番(まとめない)
INSERT on [zougen_rireki_tbl] | |||||||||||||||||||
zougen_id | sisho_cd | kobetu_cd | buppin_cd | zougen_hinmoku_cd | shuhinmoku_cd | seiri_kbn | tanka | kosuu | ymd | riyuu | doc_cd | kanribo_cd | gobyuu_flg | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | del_flg | fix_flg |
415017 | 20 | 1277322 | C-00009 | C-00009 | 1 | 3000000 | 1 | 2025/03/01 0:00:00 | 573052 | 0 | 0 | 10000 | 2025/03/24 0:00:00 | 0 | 0 |
↓ 個別+2番(まとめない)
INSERT on [kobetu_tbl] | |||||||||||||||||||||||||||
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 | 1 | 0 | 1 | 1 | 10000 | 2025/03/24 13:46:01 | 1 |
↓ 個別履歴+2番(まとめない)
INSERT on [kobetu_rireki_tbl] | ||||||
doc_cd | meisai_no | kobetu_cd | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd |
573052 | 2 | 1277342 | 10000 | 2025/03/24 13:46:01 |
↓ 増減履歴+2番(まとめない)
INSERT on [zougen_rireki_tbl] | |||||||||||||||||||
zougen_id | sisho_cd | kobetu_cd | buppin_cd | zougen_hinmoku_cd | shuhinmoku_cd | seiri_kbn | tanka | kosuu | ymd | riyuu | doc_cd | kanribo_cd | gobyuu_flg | ins_op_cd | ins_ymd | upd_op_cd | upd_ymd | del_flg | fix_flg |
415037 | 20 | 1277342 | C-00009 | C-00009 | 1 | 3000000 | 1 | 2025/03/01 0:00:00 | 573052 | 0 | 0 | 10000 | 2025/03/24 0:00:00 | 0 | 0 |
↓
新規完了。
但這不是結束,還需要登入供用官10004去進行【受入】這一套流程才算完成。
這套流程叫【購入供用】。
目前【購入】完了。
This article was last edited at