ขอโค้คคำเตือน เมื่อคีย์ข้อมูล date/time ผิดแบบค่ะ
กระทู้เก่าบอร์ด อ.Yeadram

 1,636   5
URL.หัวข้อ / URL
ขอโค้คคำเตือน เมื่อคีย์ข้อมูล date/time ผิดแบบค่ะ

ขอเรียนถามดังนี้ค่ะ

หนูมีฟิลด์แบบ Date/Time อยู่บนฟอร์มนะคะ
ปัญหาที่พบคือ ผู้ใช้มักเผลอคีย์ข้อมูลอื่นๆลงไป ที่ไม่ใช่รูปแบบ date/time ค่ะ
หนูอยากมีคำเตือนให้ทราบ เมื่อผู้ใช้คีย์ผิดรูปแบบค่ะ

ขอความช่วยเหลือด้วยนะคะ
ขอบคุณค่ะ

5 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R11729
-ใช้ input mask ช่วย ก็ป้องกันการคีย์ผิดรุปแบบได้
-หาคอนโทรลอื่นๆ มาช่วย เช่น datetimepicker ก็แก้ปัญหาได้เช่นกัน
-แต่ถ้ายังปล่อยให้ผู้ใช้คีย์แบบฟรีสไตล์ก็ต้องลำบากกันเรื่อยๆ ล่ะครับ
การสร้างคำเตือน
- ถ้าช่องข้อมูลนี้ มีการเก็บผล ลงในฟิลด์ในตาราง ก็อาจไปปรับแต่งคุณสมบัติของฟิลด์นี้ ได้เลย ที่มุมมองออกแบบของตารางครับ มีที่ให้เราระบุเงื่อนไข และมีช่องให้เราตั้งค่าคำเตือน กรณีบันทึกข้อมูลผิดเงื่อนไข
- เขียนคำสั่งฝังในเหตุการณ์ BeforeUpdate ของ textbox ที่รับค่านั่นเลยก็ได้ครับ ให้ทำการตรวจสอบรูปแบบข้อมูลก่อน ผู้เขียนหรือผู้ออกแบบโปรแกรม ต้องจินตนาการครับ ว่า มีความเป็นไปได้กี่รูปแบบ ที่ผุ้ใช้จะคีย์ผิด ก็ต้องดักจับเอาครับ ใช้ if---then---else ธรรมดานี่แหละครับ เพราะฉะนั้น ปัญหาต่อเนื่องที่ผุ้เขียนโปรแกรมจะเจอก็คือ คิดไม่ถึง ว่าผู้ใช้จะกรอกรูปแบบนี้ มันก็เลยไม่ได้ดักจับไว้ซะก่อน แล้วข้อมูลรูปแบบที่เราไม่ต้องการ ก็เล็ดลอดเข้าไปในตารางเราจนได้ ดังนั้น ผมแนะนำให้ใช้ คอนโทรลอื่นๆ มาช่วยรับค่าครับ ผู้เขียนอาจจะมีงานเพิ่มนิดหน่อย และผุ้ใช้ก็อาจเสียเวลาเพิ่มนิดหน่อย แต่ว่า เราได้ข้อมูลที่ถูกต้องตรงตามรูปแบบแน่นอนครับ ไม่ต้องห่วงว่าจะไปกระทบกับคิวรี่หรือฟอร์มอื่นๆ อีก
2 @R11730
ขอบคุณค่ะอาจารย์
หนูสนใจคำแนะนำนี้ คิดว่าน่าจะตรงและเพียงพอค่ะอาจารย์

- เขียนคำสั่งฝังในเหตุการณ์ BeforeUpdate ของ textbox ที่รับค่านั่นเลยก็ได้ครับ ให้ทำการตรวจสอบรูปแบบข้อมูลก่อน
ปัญหาที่หนูพบประจำเลยคือ ผู้ใช้มักคีย์ใส่ตัวเลขโดดๆ เข้าไป ไม่ใส่ / คั่น
กรณีนี้ เราจะเขียนโค้ดดักและเตือนได้อย่างไรคะ

ขอรบกวนท่านด้วยค่ะ
3 @R11731
จริงๆ รูปแบบตามที่ Access ให้มาใน Input mask ก็พอใช้ได้แล้วนะครับ

input mast = 99/99/0000;0;_
4 @R11732
ขอบคุณค่ะอาจารย์
หนูก็ละเลยส่วนนี้ไปจริงๆ หนูจะลองนำไปใช้ดูนะคะ
ขอบคุณค่ะ
5 @R11734
ได้แล้วค่ะ

มี input mask อยู่กับตัวแท้ๆ ไม่รู้จักใช้ มัวไปหลงทางได้ตั้งนาน อิอิ

ขอบคุณค่ะอาจารย์
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2607s