Loss Data

การบันทึกเหตุการณ์ความเสียหาย (Loss Data) — คู่มือฟิลด์สำหรับทำ Data Test

สรุปฟิลด์ทั้งหมดในเมนู Loss Data → Loss Event Record แยกตามส่วนของฟอร์ม (เพิ่มข้อมูล / ข้อมูลเหตุการณ์ความเสียหาย / BCM) พร้อมชนิดข้อมูล เงื่อนไขการแสดงผล และตัวอย่างข้อมูลทดสอบ สำหรับให้ทีมทดสอบใช้เตรียม test data ได้ครบทุกเคส

ที่มา: packages/loss_data/pages/loss_data/loss_event_record/form/[id].vue

สถานะฟิลด์ จำเป็นต้องกรอก ไม่บังคับ อ่านอย่างเดียว (ระบบเติมให้) แสดงตามเงื่อนไข

1. ข้อมูลทั่วไป — ตอนกดเพิ่มใหม่

4 ฟิลด์

เป็น dialog แรกที่เจอเมื่อกด “เพิ่ม” ทีมทดสอบกรอกจริงแค่ 1 ฟิลด์ (รอบประเมิน) ที่เหลือระบบเติมให้อัตโนมัติ เมื่อบันทึกสำเร็จระบบจะสร้างเลขที่เอกสารและพาไปหน้าแก้ไข ซึ่งจะปลดล็อกส่วนที่ 2 (ข้อมูลเหตุการณ์ความเสียหาย)

ชื่อฟิลด์FIELD_DBชนิดข้อมูลสถานะเงื่อนไข / หมายเหตุตัวอย่างข้อมูลทดสอบ
เลขที่เอกสาร document_no ข้อความ อ่านอย่างเดียว ระบบสร้างให้หลังบันทึก ก่อนบันทึกจะโชว์ข้อความ placeholder เฉยๆ LD-2026-000123
Workflow แบบบันทึกเหตุการณ์ความเสียหาย workflow ข้อความ จำเป็นอ่านอย่างเดียว เลือกอัตโนมัติจาก organization_level ของผู้สร้าง (90/110 → สาขา, อื่นๆ → สำนักงานใหญ่) Workflow แบบบันทึกเหตุการณ์ความเสียหาย (สำนักงานใหญ่)
รอบประเมิน assessment_period เลือกจากรายการ (autocomplete) จำเป็น ฟิลด์เดียวที่ต้องกรอกจริงในหน้านี้ — ตรวจ validate ว่าห้ามว่างตอน submit อนุมัติด้วย 2026 ไตรมาส 3
ผู้สร้างแบบประเมิน employee_name ข้อความ อ่านอย่างเดียว ดึงจาก user ที่ login สมชาย ใจดี

2. ข้อมูลเหตุการณ์ความเสียหาย

28 ฟิลด์

ปลดล็อกหลังบันทึกส่วนที่ 1 แล้วเท่านั้น (โหมดแก้ไข/ดู) กรอกผ่าน dialog เดียวกันทั้งหมด ฟิลด์ส่วนใหญ่หลัง “รายละเอียดเหตุการณ์” จะซ่อนไว้จนกว่าจะเลือก “ประเภทความเสียหาย” ก่อน — ดูตาราง “กติกา / เคสที่ควรทดสอบ” ด้านล่างประกอบ

2.1 ข้อมูลอ้างอิง (อ่านอย่างเดียวทั้งหมด)

ชื่อฟิลด์FIELD_DBชนิดข้อมูลสถานะเงื่อนไข / หมายเหตุตัวอย่างข้อมูลทดสอบ
เลขที่เอกสารอ้างอิง (เอกสารต้นทาง)ref_loss_document_noข้อความไม่บังคับอ่านอย่างเดียวมีค่าเมื่อสร้างจาก interface/เอกสารอื่นREF-2026-0088
ผู้รายงานเหตุการณ์reported_employee_nameข้อความจำเป็นอ่านอย่างเดียวแสดงชื่อ + รหัสพนักงานสมหญิง รักงาน (EMP00456)
หน่วยงาน (ผู้รายงาน)reported_org_structureแสดงผลเป็นผังองค์กร (popup)อ่านอย่างเดียวปุ่มเปิดดู org chart เฉพาะโหมดแก้ไข/ดู ไม่ใช่ inputฝ่ายสินเชื่อรายย่อย
สายธุรกิจloss_business_line_nameข้อความไม่บังคับอ่านอย่างเดียว-Retail Banking
ระบบงานอ้างอิงinterface_ref_system_nameข้อความไม่บังคับอ่านอย่างเดียว-Core Banking System
รูปแบบการสร้างแบบประเมินformat_created_assessment_nameข้อความไม่บังคับอ่านอย่างเดียว-สร้างโดยผู้ใช้งาน

2.2 วันเวลาที่เกิดเหตุ

ชื่อฟิลด์FIELD_DBชนิดข้อมูลสถานะเงื่อนไข / หมายเหตุตัวอย่างข้อมูลทดสอบ
วันที่เกิดเหตุการณ์occurrence_start_dateวันที่จำเป็นควรทดสอบวันที่ในอนาคต (ต้อง reject) และย้อนหลังไกลมาก01/07/2026
เวลาเริ่มต้นoccurrence_start_timeเวลาจำเป็นเงื่อนไขแสดงเฉพาะเมื่อ “ประเภทเหตุการณ์” ที่เลือกกำหนด is_require_time = true09:15
วันที่สิ้นสุดเหตุการณ์occurrence_end_dateวันที่จำเป็นทดสอบเคส end date < start date ควรถูกเตือน01/07/2026
เวลาสิ้นสุดoccurrence_end_timeเวลาจำเป็นเงื่อนไขเงื่อนไขเดียวกับเวลาเริ่มต้น09:45
วันที่ตรวจพบdiscovery_dateวันที่จำเป็นโดยธุรกิจควร ≥ วันที่เกิดเหตุ — ทดสอบเคสตรวจพบก่อนเกิดเหตุ02/07/2026

2.3 การจำแนกประเภทเหตุการณ์

ชื่อฟิลด์FIELD_DBชนิดข้อมูลสถานะเงื่อนไข / หมายเหตุตัวอย่างข้อมูลทดสอบ
ประเภทความเสียหาย loss_type_codeเลือกจากรายการจำเป็นMaster: Loss Type — ค่า VL062 = Near Miss จะเปลี่ยนพฤติกรรมฟิลด์การเงินด้านล่างทั้งหมด (ดูหัวข้อกติกา)ความเสียหายทางการเงิน
ประเภทเหตุการณ์loss_risk_categoryเลือกจากรายการจำเป็นMaster: 7 หมวดตาม Basel operational risk (ดูตัวอย่าง) — กำหนดว่าต้องกรอกเวลาหรือไม่2. ความเสียหายจากการฉ้อโกงโดยบุคคลภายนอก (External Fraud)
เหตุการณ์ย่อยloss_subloss_eventเลือกจากรายการจำเป็นเลือกได้อิสระ หรือเลือกหลังจากประเภทเหตุการณ์ (จะ filter ให้); เลือกแล้วจะ auto เติมประเภทเหตุการณ์กลับการปลอมแปลงเอกสาร
สาเหตุloss_causeเลือกจากรายการจำเป็นเลือกแล้ว auto เติม “เหตุการณ์ย่อย” และ “ประเภทเหตุการณ์” ให้ — ต้องทดสอบว่า auto-fill ถูกต้องเอกสารปลอมจากลูกค้า
รายละเอียดเหตุการณ์loss_descข้อความยาวจำเป็นทดสอบความยาวข้อความสูงสุด/ตัวอักษรพิเศษ/ภาษาไทย-อังกฤษปนพนักงานตรวจพบเอกสารยืนยันรายได้ปลอมในการยื่นขอสินเชื่อของลูกค้ารายหนึ่ง...

2.4 มูลค่าความเสียหาย (การเงิน)

ชื่อฟิลด์FIELD_DBชนิดข้อมูลสถานะเงื่อนไข / หมายเหตุตัวอย่างข้อมูลทดสอบ
มูลค่าความเสียหาย (ถ้า Near Miss จะเปลี่ยนป้ายเป็น “มูลค่าความเสียหายที่อาจเกิดขึ้น”)loss_amountจำนวนเงินจำเป็นเงื่อนไขซ่อนจนกว่าจะเลือกประเภทความเสียหาย150,000.00
มูลค่าที่เรียกคืนได้recovery_amountจำนวนเงินไม่บังคับเงื่อนไขซ่อนถ้ายังไม่เลือกประเภท หรือเลือกเป็น Near Miss (VL062)50,000.00
วันที่ได้รับเงินคืนrecovery_dateวันที่ไม่บังคับเงื่อนไขเงื่อนไขเดียวกับมูลค่าที่เรียกคืนได้10/07/2026
ค่าใช้จ่ายในการดำเนินการoperating_expenses_amountจำนวนเงินไม่บังคับเงื่อนไขเงื่อนไขเดียวกับด้านบน5,000.00
มูลค่าความเสียหายรวมtotal_loss_amountจำนวนเงินคำนวณอัตโนมัติเงื่อนไขสูตร = มูลค่าความเสียหาย + ค่าใช้จ่ายดำเนินการ — ห้ามพิมพ์เอง แต่ต้องเทสว่าคำนวณถูก155,000.00
มูลค่าความเสียหายสุทธิnet_loss_amountจำนวนเงินคำนวณอัตโนมัติเงื่อนไขสูตร = มูลค่าความเสียหายรวม − มูลค่าที่เรียกคืนได้105,000.00
มูลค่าความสูญเสียโอกาสopportunity_cost_amountจำนวนเงินไม่บังคับเงื่อนไขซ่อนถ้ายังไม่เลือกประเภท หรือ Near Miss0.00

2.5 ผลกระทบที่ไม่ใช่ทางการเงิน & บัญชี

ชื่อฟิลด์FIELD_DBชนิดข้อมูลสถานะเงื่อนไข / หมายเหตุตัวอย่างข้อมูลทดสอบ
ประเภทผลกระทบที่ไม่ใช่ทางการเงินloss_non_fin_impact_categoryเลือกจากรายการจำเป็นเงื่อนไขซ่อนจนกว่าจะเลือกประเภทความเสียหาย (แสดงแม้เป็น Near Miss)ชื่อเสียงองค์กร (Reputation)
การประเมินผลกระทบที่ไม่ใช่ทางการเงินloss_non_fin_impact_assessmentเลือกจากรายการจำเป็นเงื่อนไขเงื่อนไขเดียวกับด้านบนผลกระทบต่ำ (Low)
วันที่มีผลทางบัญชีaccounting_dateวันที่ไม่บังคับเงื่อนไขซ่อนถ้ายังไม่เลือกประเภท หรือ Near Miss15/07/2026
เลขอ้างอิงทางการเงินfinancial_reference_noข้อความไม่บังคับเงื่อนไขเงื่อนไขเดียวกับด้านบนGL-2026-99871

2.6 สถานะ & แผนป้องกัน

ชื่อฟิลด์FIELD_DBชนิดข้อมูลสถานะเงื่อนไข / หมายเหตุตัวอย่างข้อมูลทดสอบ
สถานะของเหตุการณ์loss_event_statusเลือกจากรายการจำเป็นเงื่อนไขซ่อนจนกว่าจะเลือกประเภทความเสียหายปิดเคส (Closed)
การดำเนินการเพื่อป้องกันความเสียหายในอนาคตpreventive_action_planข้อความยาวจำเป็นเงื่อนไขเงื่อนไขเดียวกับด้านบนเพิ่มขั้นตอนตรวจสอบเอกสารกับหน่วยงานต้นทางก่อนอนุมัติสินเชื่อทุกครั้ง

3. แบบบันทึกการบริหารความต่อเนื่องทางธุรกิจ (BCM)

3 ฟิลด์ · ตาราง

ตารางแบบเพิ่มได้หลายแถว ผูกกับเอกสาร Incident Assessment ที่มีอยู่แล้ว — ต้องมีอย่างน้อย 1 แถวก่อนส่งอนุมัติ (validation กำหนด minItems = 1)

ชื่อฟิลด์FIELD_DBชนิดข้อมูลสถานะเงื่อนไข / หมายเหตุตัวอย่างข้อมูลทดสอบ
เลขที่เอกสารแบบบันทึกการจัดการเหตุการณ์จริงbcm_idเลือกจากรายการไม่บังคับต่อแถวดึงรายการจากเอกสาร Incident Assessment ที่มีอยู่แล้วในระบบ BCM; มีปุ่ม “สร้างใหม่” เปิดแท็บไปหน้า Incident Assessment ได้ด้วยBCM-2026-0012
เหตุการณ์event_nameข้อความอ่านอย่างเดียวAuto เติมจากเอกสารที่เลือกระบบ Core Banking ล่ม
Actionaction_nameข้อความอ่านอย่างเดียวAuto เติมจากเอกสารที่เลือกสำรองข้อมูลและกู้คืนระบบ

กติกา / เคสที่ควรทดสอบเพิ่มเติม

Logic ที่ฝังอยู่ในฟอร์ม ควรออกแบบ test case ให้ครอบคลุมทั้งฝั่งแสดง/ซ่อนฟิลด์ และการคำนวณอัตโนมัติ

ลำดับการเปิดฟอร์ม

ต้องบันทึกส่วนที่ 1 (เพิ่มข้อมูล) สำเร็จก่อน ถึงจะเห็นส่วนที่ 2 และ 3 — ทดสอบว่าฟอร์มเพิ่มใหม่ยังไม่แสดง 2 ส่วนหลัง

Near Miss (loss_type_code = VL062)

ซ่อนฟิลด์: มูลค่าที่เรียกคืนได้, วันที่ได้รับเงินคืน, ค่าใช้จ่ายดำเนินการ, มูลค่ารวม/สุทธิ, มูลค่าเสียโอกาส, วันที่มีผลบัญชี, เลขอ้างอิงการเงิน — และเปลี่ยนป้าย “มูลค่าความเสียหาย” เป็น “มูลค่าความเสียหายที่อาจเกิดขึ้น”

ฟิลด์เวลา (start/end time)

แสดงเฉพาะเมื่อ “ประเภทเหตุการณ์” ที่เลือกกำหนด is_require_time = true — ต้องเทสทั้งกรณีที่ต้องกรอกเวลาและไม่ต้อง

Cascading dropdown

เลือก “สาเหตุ” → auto เติม “เหตุการณ์ย่อย” และ “ประเภทเหตุการณ์”; เลือก “เหตุการณ์ย่อย” → auto เติม “ประเภทเหตุการณ์” — ทดสอบว่าค่าที่ auto เติมตรงกับที่ผูกไว้จริง

การคำนวณอัตโนมัติ

total_loss_amount = loss_amount + operating_expenses_amount
net_loss_amount = total_loss_amount − recovery_amount — ทดสอบด้วยค่า 0, ค่าติดลบ (recovery มากกว่า loss) และทศนิยม

Validation ก่อนส่งอนุมัติ

ต้องมี “รอบประเมิน” ไม่ว่าง, ฟิลด์ required ทั้งหมดในส่วนที่ 2 ต้องผ่าน, และตาราง BCM ต้องมีอย่างน้อย 1 แถว มิฉะนั้นระบบเตือนและบล็อกการ submit

† = การเปลี่ยนค่าฟิลด์นี้จะ trigger ให้ฟิลด์อื่นแสดง/ซ่อน/รีเซ็ตใหม่ตามเงื่อนไขด้านบน