BMS-HOSxP Community

HOSxP => Report Exchange => ข้อความที่เริ่มโดย: Apiruk_Jbhos ที่ พฤศจิกายน 23, 2008, 17:01:30 PM

หัวข้อ: มีปัญหา รายงานไม่เข้าใจ ถามครับ
เริ่มหัวข้อโดย: Apiruk_Jbhos ที่ พฤศจิกายน 23, 2008, 17:01:30 PM
สวัสดีครับ ขอถามพี่หน่อยครับ คือจิง ๆ อยากได้ รายงานหา ค่า FBS ที่ระบุค่าได้ครับ เหมือนใน รูป แต่ผลออกมามันน้อยเกินไปครับ ไม่รู้เป็นเพราะอะไร ก็แค่เลือกวัน เป้น ปีงบประมาณ มันออมาแค่ 54 คนเองครับ
ก็เลยมาเขียน Code เองก็ออกมาเยอะเป็น พันครับ แต่ติดตรง ที่ Code ครับ

select ov.vn,oa.hn,oa.nextdate,concat(pt.pname,pt.fname,"   ",pt.lname) as pt_name,pt.addrpart,
pt.moopart,pt.tmbpart,ta.full_name,lh.lab_order_number,lo.lab_items_code,lo.lab_items_name_ref,lo.lab_order_result

from oapp oa

left outer join ovst ov on ov.vn=oa.vn
left outer join patient pt  on pt.hn=oa.hn
left outer join thaiaddress ta on ta.addressid=concat(pt.chwpart,pt.amppart,pt.tmbpart)
left outer join lab_head lh on lh.vn=ov.vn
left outer join lab_order lo on lo.lab_order_number=lh.lab_order_number

where  oa.nextdate between '2007-09-01' and '2008-10-31'
and lab_items_name_ref in ('FBS')
and lo.lab_order_result between 'xxx' and 'xxx'
order by lo.lab_order_result desc

ถ้าผมกำหนด
เป็นเช่น 80 - 90 ออกเรืยงถูกต้องครับ
ถ้าเป็น 80 - 120 ไม่ออกอะไรเลยครับ
ถ้าเป็น 200 - 300 ออกเรืยงถูกต้องครับ
ถ้าเป็น 200 - 400 ออกมาแบนี้ครับ รูปล่างสุด มีค่า น้อย ๆ ติดออกมาด้วย กดเรียงแล้วก็ไม่เรียงไปดูใน lab_order
ค่าก็ตรงครับ มันมีอะไรผิดไหมครับ ยัง งง อยู่ครับ แล้วค่าที่ หาจากรูปแรก ทำไมมันออกมาน้อยมากครับ
v.ที่ใช้ครับ 3.51.8.6 ครับ
หัวข้อ: Re: มีปัญหา รายงานไม่เข้าใจ ถามครับ
เริ่มหัวข้อโดย: golf_win ที่ พฤศจิกายน 23, 2008, 17:18:30 PM
ลองดูว่าที่หน้าห้อง lab ได้ยืนยันผล lab หรือยังครับ ??? ???
หัวข้อ: Re: มีปัญหา รายงานไม่เข้าใจ ถามครับ
เริ่มหัวข้อโดย: Apiruk_Jbhos ที่ พฤศจิกายน 23, 2008, 17:28:50 PM
ห้อง lab ตอนลง จะยืนยันทุกครั้งครับ แต่ที่ออกมาจากโปรแกรมน้อย อาจจะมาจาก คลินิคเบาหวาน เพราะที่ รพ.ยังไม่ค่อยได้ลง ครับ เลยต้องมาเอาจาก Lab_order แทน ครับ เขียน code ดิบ ดึงเลยครับ แต่มันมีปัญหาคือบางช่วงไม่ออก หรือออกมาแล้วแต่ มันเรียง เพี้ยน มีค่าน้อย ๆแจมออกมาด้วย แล้วไม่มั่นใจว่าผลถูกไหม เลยยังไม่กล้าเอาจำนวนไปให้พี่เขา ครับ เขาอยากได้ < 60 กับ > 350  แต่ผมเขียน 80 - 120 มันไม่ออก หรือมันไม่ใช่ตัวเลข ดู ๆ แล้ว ค่ามันจะเก็บเป็น text หรือเปล่า ...

ปล. สงสัย ต้อง รบกวน คุณ Golf ช่วยที แล้วครับ  โทรก็คุยกัน ไม่เห็นภาพ สงสัยว่าง ๆ ต้องนัดเจอซะหน่อยแล้วครับ ยังไม่เข้าเข้าใจ การเรียก การเก็บข้อมูลมากนัก กลัว เขียน ออกมาได้ก้จริง แต่กลัว ผลที่ได้มันจะ ไม่ถูกต้องกับความเป็นจริง ครับ
หัวข้อ: Re: มีปัญหา รายงานไม่เข้าใจ ถามครับ
เริ่มหัวข้อโดย: golf_win ที่ พฤศจิกายน 23, 2008, 18:20:04 PM
ลองใช้ตาราง opdscreen เป็นตารางหลัก แล้วค่อยกรองหาช่วง FBS ครับ ;D ;D
หัวข้อ: Re: มีปัญหา รายงานไม่เข้าใจ ถามครับ
เริ่มหัวข้อโดย: anukul ที่ พฤศจิกายน 23, 2008, 23:25:02 PM
สาเหตุน่าจะมาจาก ชนิดของข้อมูล

 `lab_order_result` varchar(250) DEFAULT NULL,

เห็นว่า lab_order_result เป็น varchar ไม่ใช่ตัวเลข  ==> การใช้ between จึงได้ผลอย่างที่เห็น

80-90  น่าจะถูกต้องแน่นอน ยกเว้นถ้า FBS 800-900 ก็จะผิดช่วงนี้อีกที

80-120  ไม่ออกเลย เพราะ between 80 -120   ซึ่ง 80 ในความหมายของตัวอักษร มันมากกว่า120 ซึ่งคือเลข 1 ที่มีค่าน้อยกว่า 8

200-300  ออกมาถูกต้อง  แต่ก็ไม่แน่ครับ ถ้ามีคนไข้ที่ FBS 20 กว่าๆ ก็จะแสดงด้วยเช่นกัน

200-400  เหตุผลเดียวกับข้างบน

 ;)
หัวข้อ: Re: มีปัญหา รายงานไม่เข้าใจ ถามครับ
เริ่มหัวข้อโดย: manoi ที่ พฤศจิกายน 24, 2008, 00:30:34 AM
ลองแก้เป็น

and round(lo.lab_order_result) between 111 and 222

ดูนะครับ
หัวข้อ: Re: มีปัญหา รายงานไม่เข้าใจ ถามครับ
เริ่มหัวข้อโดย: Khuad ที่ พฤศจิกายน 24, 2008, 01:27:45 AM


สวัสดีครับ ขอถามพี่หน่อยครับ คือจิง ๆ อยากได้ รายงานหา ค่า FBS ที่ระบุค่าได้ครับ เหมือนใน รูป แต่ผลออกมามันน้อยเกินไปครับ ไม่รู้เป็นเพราะอะไร ก็แค่เลือกวัน เป้น ปีงบประมาณ มันออมาแค่ 54 คนเองครับ
ก็เลยมาเขียน Code เองก็ออกมาเยอะเป็น พันครับ แต่ติดตรง ที่ Code ครับ


....เรื่อง ผลของคำสั่งที่ Apiruk_Jbhos เขียนไว้  ก็แบบที่คุณหมอ anukul บอกไว้น่ะครับ  ลองใช้ที่ อ.mn บอกไว้ดูนะครับ แต่ถ้าให้มีการเรียงลำดับ ก็จะเรียงตามอักษรตัวแรกนะครับ
...เช่น ถ้ามากไปน้อยก็จะได้เป็น 90 => 66 => 60 => 350 => 121 => 100  เป็นต้น ครับ....

....ส่วนที่ใช้จาก Custom Search นั้น ตรง ระบุ  FBS  ตามรูปที่แนบไว้ จะไปเอาข้อมูลในส่วนของ fbs มาจากตาราง opdscreen ครับ ไม่ได้มาจาก lab_order...
....ถ้าผลที่ได้มีน้อย แสดงว่า ข้อมูลที่บันทึกใน fbs ของตาราง opdscreen  มีอยู่น้อยครับ... :D .....
หัวข้อ: Re: มีปัญหา รายงานไม่เข้าใจ ถามครับ
เริ่มหัวข้อโดย: Khuad ที่ พฤศจิกายน 24, 2008, 01:38:33 AM

...ถ้าผลที่ได้จาก  Custom Search น้อยกว่าผลจากคำสั่งที่ดูมาจากตาราง  lab_order  คิดว่าคงยังไม่ได้มีการกำหนดในส่วนของ Lab Link ไว้ (ใน System Setting ตามรูปที่แนบไว้) ....

...ถ้าเรากำหนดค่าในส่วนของ Lab Link ไว้  เวลามีการรายงานผล Lab ที่เราตั้งค่าไว้ ก็จะมีการบันทึกข้อมูลลงในตาราง opdscreen ด้วยครับ  และข้อมูลที่บันทึกใน opdscreen ก็จะเป็นข้อมูลประเภทตัวเลข(Double)ด้วยครับ  ซึ่งจะมีประโยชน์มากกับการที่จะดูข้อมูลหรือทำรายงานในลักษณะที่คุณ Apiruk_Jbhos ต้องการ... :D...