ขอรบกวนอีกทีครับ
กระทู้เก่าบอร์ด อ.สุภาพ ไชยา

 261   4
URL.หัวข้อ / URL
ขอรบกวนอีกทีครับ

ผมมีปัญหาคือ ผมเก็บข้อมูลห้องผ่าตัดโดยใช้ access ( ทำแบบง่าย ๆ ) แล้วต้องการจะเช็คว่าผู้ป่วยที่พิมพ์
HN นั้นถูกต้องหรือไม่กับฐานข้อมูลโรงพยาบาล โดย link table patient ไว้ในฐานข้อมูลนี้ด้วย
สิ่งที่ต้องการคือเมื่อพิมพ์ HN .ใน table ห้องผ่าตัดแล้วให้มี subform table patient ชึ้นมาแสดงชื่อ นามสกุล ส่วนข้อมูล HN และข้อมูลที่เหลือให้เก็บใน table ห้องผ่าตัดครับ


ยังไม่ค่อยเข้าใจคำถามครับ

ถ้าต้องการให้แสดง ชื่อ นามสกุล ใน ฟอร์ม นี้ ก็ลองแบบนี้ครับ

1. ใส่ Text Box ลงไป 2 อัน โดยตั้งชื่อให้เป็น txtName และ txtLastName

2. ใส่โค้ดนี้ลงไป โดยใช้กับเหตุการณ์ OnCurrent ของ ฟอร์ม AfterUpdate ของฟีลด์ HN

Private Sub Form_Current()
If Me.HN <> "" Then
Me.txtName = Nz(DLookup("[ชื่อ]", "tblPatient", "trim([hn])='" & Me.HN & "'"), "")
Me.txtLastName = Nz(DLookup("[สกุล]", "tblPatient", "trim([hn])='" & Me.HN & "'"), "")
Else
Me.txtName = ""
Me.txtLastName = ""
End If
End Sub

Private Sub HN_AfterUpdate()
Form_Current
End Sub

*** ไม่ควรจะเคาะช่องว่างในฟีลด์ HN นะครับ จะทำให้ทำงานยาก ผมเองยังงงอยู่เหมือนกัน

---------------------------------------------------------------------------------------------------------------------
เรียน อ.สุภาพ เนื่องจากเครื่องที่ใช้จะไม่มีข้อมูลในฐานข้อมูลโรงพยาบาล ซึ่งเขียนด้วยโปรแกรม delphi ซึ่งผมอ่านแล้วไม่ค่อยรู้เรื่อง ก็เลยใช้ access เป็นการเก็บข้อมูลเฉพาะหน่วยงานห้องผ่าตัด link ผ่าน ODBC กับ table patient อีกทีครับ
( ข้อมูลใน table patient คัดลอกมาบางส่วนซึ่งคนเขียน delphi กำหนดไว้ครับ ว่าต้องเคาะให้ครบ 7 ตัวใน field HN )
ผมจึงคิดว่าให้กรอก HN ที่ form TBLANES1 แล้วให้แสดงรายชื่อ-สกุลของ TBL PATIENT ออกมาให้ดูว่าเป็นผู้ป่วยที่เราตั้งใจจะพิมพ์จริง ๆ ครับ โดยกำหนดให้ tbl patient เป็น subform




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

1 @R02905
ผมส่งข้อมูลเพิ่มเติมให้อาจารย์ช่วยชี้แนะด้วยครับ
2 @R02906
จากคำถามเดิม ผมได้ใส่โค้ดตามที่ขอมาแล้วนี่ครับ ไม่รู้ว่าไม่ตรงกับความต้องการตรงจุดไหน ผมจึงไม่เข้าใจคำถามที่ถามเพิ่มเติมเข้ามาครับ



Private Sub Form_Current()
If Me.HN <> "" Then
Me.txtName = Nz(DLookup("[ชื่อ]", "tblPatient", "trim([hn])='" & Me.HN & "'"), "")
Me.txtLastName = Nz(DLookup("[สกุล]", "tblPatient", "trim([hn])='" & Me.HN & "'"), "")
Else
Me.txtName = ""
Me.txtLastName = ""
End If
End Sub

Private Sub HN_AfterUpdate()
Form_Current
End Sub
3 @R03007
ผมลองทำแล้ว ทำไม่ได้ครับ รบกวนอาจารย์ช่วยทำให้ดูหน่อยครับ
4 @R03017
ในกระทู้ก่อนหน้านี้ในเรื่องเดียวกัน ผมได้เพิ่มโค้ดข้างบนลงไปใน Form ให้แล้วครับ ซึ่งผมทำแล้วทำได้ จึงยังไม่ทราบว่าตัวอย่างที่ปรับให้ไม่ตรงกับความต้องการ หรือมีปัญหาอะไรเกิดขึ้นครับ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.0660s