BMS-HOSxP Community

HOSxP => แจ้งข้อผิดพลาดการทำงานของ HOSxP V3 => ข้อความที่เริ่มโดย: wjan ที่ กันยายน 19, 2008, 15:04:32 PM

หัวข้อ: หน้าจอ รายงานผล Lab ไม่มีชื่อ lab
เริ่มหัวข้อโดย: wjan ที่ กันยายน 19, 2008, 15:04:32 PM
ขอความช่วยเหลือ ตามภาพเลยค่ะ
ไม่ทราบว่าเพิ่มมาได้ยังไง
หัวข้อ: Re: หน้าจอ รายงานผล Lab ไม่มีชื่อ lab
เริ่มหัวข้อโดย: Khuad ที่ กันยายน 19, 2008, 22:24:31 PM
...น่าจะกิดจากการไปลบรายการ lab ที่มีการตั้งค่าให้สั่งตามกลุ่ม( SubGroup ) เอาไว้ โดยไม่ได้ยกเลิกการเลือกสั่งตามกลุ่มก่อนที่จะลบรายการครับ...

...ตามรูปที่คุณ wjan  แนบมา น่าจะมีการลบรายการที่ถูกตั้งค่าให้เป็นรายการในกลุ่ม Weil felix ออกไป 3 รายการครับ...
... :D ...
หัวข้อ: Re: หน้าจอ รายงานผล Lab ไม่มีชื่อ lab
เริ่มหัวข้อโดย: Khuad ที่ กันยายน 19, 2008, 22:33:44 PM

...การแก้ไข   อันดับแรก  ให้เปิดหน้าต่างแก้ไขรายการ Lab  แล้วเลือกที่รายการสั่งตามกลุ่ม  แล้วหารายการ Weil felix แล้วให้ดูในช่อง SGC ให้จำตัวเลขของรายการ Weil felix ในช่อง SGC ไว้ครับ(ตามรูปที่แนบ)..

...หรือจะไปที่ตาราง  lab_items_sub_group แล้วจำเลขในช่อง lab_items_sub_group_code ของรายการ Weil felix ไว้...

... :D...
หัวข้อ: Re: หน้าจอ รายงานผล Lab ไม่มีชื่อ lab
เริ่มหัวข้อโดย: Khuad ที่ กันยายน 19, 2008, 22:43:20 PM
...จากนั้นที่หน้าต่าง 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...
หัวข้อ: Re: หน้าจอ รายงานผล Lab ไม่มีชื่อ lab
เริ่มหัวข้อโดย: wjan ที่ กันยายน 20, 2008, 08:23:41 AM
ขอบคุณมากมายเลยคะ   ;D
หัวข้อ: Re: หน้าจอ รายงานผล Lab ไม่มีชื่อ lab
เริ่มหัวข้อโดย: wjan ที่ กันยายน 20, 2008, 09:32:12 AM
แต่ลอง 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 )

ยังไงก็ขอบคุณมากคะ
หัวข้อ: Re: หน้าจอ รายงานผล Lab ไม่มีชื่อ lab
เริ่มหัวข้อโดย: Khuad ที่ กันยายน 20, 2008, 13:00:32 PM

แต่ลอง 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 ....