BMS-HOSxP Community
HOSxP => แจ้งข้อผิดพลาดการทำงานของ HOSxP V3 => ข้อความที่เริ่มโดย: wjan ที่ กันยายน 19, 2008, 15:04:32 PM
-
ขอความช่วยเหลือ ตามภาพเลยค่ะ
ไม่ทราบว่าเพิ่มมาได้ยังไง
-
...น่าจะกิดจากการไปลบรายการ lab ที่มีการตั้งค่าให้สั่งตามกลุ่ม( SubGroup ) เอาไว้ โดยไม่ได้ยกเลิกการเลือกสั่งตามกลุ่มก่อนที่จะลบรายการครับ...
...ตามรูปที่คุณ wjan แนบมา น่าจะมีการลบรายการที่ถูกตั้งค่าให้เป็นรายการในกลุ่ม Weil felix ออกไป 3 รายการครับ...
... :D ...
-
...การแก้ไข อันดับแรก ให้เปิดหน้าต่างแก้ไขรายการ Lab แล้วเลือกที่รายการสั่งตามกลุ่ม แล้วหารายการ Weil felix แล้วให้ดูในช่อง SGC ให้จำตัวเลขของรายการ Weil felix ในช่อง SGC ไว้ครับ(ตามรูปที่แนบ)..
...หรือจะไปที่ตาราง lab_items_sub_group แล้วจำเลขในช่อง lab_items_sub_group_code ของรายการ Weil felix ไว้...
... :D...
-
...จากนั้นที่หน้าต่าง SQL ให้ใช้คำสั่ง
delete from lab_items_sub_group_list
where lab_items_sub_group_code = 'xx'
and lab_items_code not in (select lab_items_code from lab_items where lab_items_sub_group_code = 'xx')
(แก้ไขครับ...ดูที่ ตอบ # 6 แทนครับ)
โดยตรง xx สีน้ำเงิน นั้นให้เอาค่าของ lab_items_sub_group_code ของรายการ Weil felix มาใส่แทนลงไปครับ แล้วสั่ง Exec ครับ แล้วสั่ง Update อีกครั้งก็ได้ครับ .....
...ถ้าพบปัญหากับ SubGroup อื่น ก็ใช้วิธีนี้ได้เหมือนกัน โดยเปลี่ยนค่าตรง lab_items_sub_group_code เป็นของ SubGroup ที่มีปัญหาครับ...
...ต่อไปถ้ามีความจำเป็นต้องลบรายการ Lab ก็ให้ดูก่อนครับว่ารายการนั้นได้ตั้งค่าสั่งตามกลุ่มอยู่หรือเปล่า ถ้ามีก็ให้ยกเลิกก่อนที่จะลบครับ.. :D...
-
ขอบคุณมากมายเลยคะ ;D
-
แต่ลอง test แล้ว คำสั่ง delete ที่ให้มาจะลบทุกรายการที่ รหัส xx ออกหมดเลย
ต้องตัดเงื่อนไข where ตัวในวงลบออกค่ะ ถึงจะได้
แบบนี้ค่ะ
delete from lab_items_sub_group_list
where lab_items_sub_group_code = 'xx'
and lab_items_code not in (select lab_items_code from lab_items )
ยังไงก็ขอบคุณมากคะ
-
แต่ลอง test แล้ว คำสั่ง delete ที่ให้มาจะลบทุกรายการที่ รหัส xx ออกหมดเลย
ต้องตัดเงื่อนไข where ตัวในวงลบออกค่ะ ถึงจะได้
...ขออภัยด้วยนะครับ ที่มี where lab_items_sub_group_code = 'xx' ตามท้ายในวงเล็บ ก็เพื่อให้ตรวจสอบก่อนให้แน่ว่าไม่ลบรายการที่เรากำหนดอยู่ใน subgroup นี้ไปด้วย......
...แต่ผมลองตรวจสอบดูแล้ว พบว่าปัญหามาจากข้อมูลในตาราง lab_items ไม่ update ข้อมูลในส่วนของ lab_items_sub_group_code เมื่อมีการกำหนดค่าที่สั่งตามกลุ่ม ไม่ทราบเหมือนกันว่าเป็นตั้งแต่ version ใหน แต่เดิมที่ผมกำหนดตอนใช้ v.3.50.3.30 มีข้อมูลครับ แต่พอทดลองกับ 3.51.9.16 ไม่มีข้อมูล
...พอไม่มีข้อมูลในส่วนนี้ เวลาใช้คำสั่งก็เลยลบหมดเลย.....
...ต่อไปถ้าจะใช้คงต้องเอาข้อมูลของ sub_group_list มาเป็นเงื่อนไขแทน..
delete from lab_items_sub_group_list
where lab_items_sub_group_code = 'xx'
and lab_items_code not in (select lab_items_code from lab_items where sub_group_list = 'ชื่อกลุ่มของ xx')
...แต่ตามที่คุณ wjan ทำแล้วก็ OK ครับ เพราะจุดประสงค์จริงๆ ก็คือ ลบ record ในตาราง lab_items_sub_group_list ใน record ที่มี lab_items_code นอกเหนือจากที่เรากำหนดไว้ออกไปน่ะครับ...
...ต้องรบกวน อ.mn ฝากช่วยดูเรื่องข้อมูล lab_items_sub_group_code ในตาราง lab_items ด้วยครับ ขอบคุณครับ.... :D ....