BMS-HOSxP Community
HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: [-_เอ็ม_-] ที่ ตุลาคม 29, 2010, 09:31:16 AM
-
เกิดปัญหาคิวคนไข้เพี้ยนครับ คนมาก่อนได้คิวหลัง คนมาหลังได้คิวแรกครับ
แก้ไขยังไงดีครับ งานเข้าอีกแล้วครับ เป็นหลายวันด้วยครับ
เพิ่งมาองเช็คดูครับ ช่วยทีครับ
-
เอ...คิวคนไข้ในห้องบัตร ปกติ เป็นแบบ วันต่อวัน ใช่หรือไม่ครับ...ถ้าดูไม่ผิด จะ reset 1 ใหม่ ทุกวัน..
-
งง อยู่เหมือนกันครับ ข้อมูลมันเพี้ยน มา 11 โมง แต่ได้คิว 1
มาตั้งแต่ เที่ยงคืน วันเดียวกัน ได้คิวที่ 4
ดูในรายการคนไข้นัด ก็ไม่มีคนที่มีปัญหาครับ
-
มีการส่งตรวจล่วงหน้าหรือป่าวครับ
-
มีการส่งตรวจล่วงหน้าหรือป่าวครับ
เราจะเช็คได้จากตรงไหนครับ ท่านกอล์ฟ
-
ในบันทึกผลการวินิจฉัยผู้ป่วยนอกครับ สังเกตว่าจะเป็นคิวแรกๆครับ
-
ดูแล้ว ตามรูปเลยครับท่านกอล์ฟ วันเดียวกัน
แต่เวลามา 7 โมงเช้าได้คิวก่อน คนที่มาตอนเที่ยงคืน ครับ
-
ลองไปถามคนที่ส่งตรวจครับ ว่าเกิดอะไรขึ้นครับ
-
พอจะมีวิธีแก้ไขมั๊ยครับเนี่ย
-
ลอง
ดูแล้ว ตามรูปเลยครับท่านกอล์ฟ วันเดียวกัน
แต่เวลามา 7 โมงเช้าได้คิวก่อน คนที่มาตอนเที่ยงคืน ครับ
ดูจากในรูป น่าจะแคปมาจากหน้าจอ บันทึกค่ารักษาพยาบาล ของห้องการเงิน ใช่ไหมครับ
ซึ่งใน mysql ที่ดึงข้อมูลมาแสดง เป็นดังนี้
select o.vn,o.hn,o.vstdate,o.vsttime,o.oqueue ,concat(p.pname,p.fname,' ',p.lname) as ptname ,
v.inc01,v.inc02,v.inc03,v.inc04,v.inc05,v.inc06,v.inc07,v.inc08,v.inc09,v.inc10, v.inc11,v.inc12,v.inc13,v.inc14,v.inc15,v.inc16,v.inc17,v.income,v.paid_money,v.uc_money,h.staff,h.summary_date_time , 1 as item_count
from ovst o
left outer join vn_stat v on v.vn = o.vn
left outer join patient p on p.hn = o.hn
left outer join incoth_summary_head h on h.vn = o.vn
where o.vstdate = '2010-10-29'
order by o.oqueue
จะเห็นว่าไม่ได้ระบุครับว่า order by อะำไร
ผมได้ลองเพิื่่ม o.oqueue เพื่อดูว่าได้ q ที่เท่าไหร่ แล้ว
order by o.oqueue
ก็จะเห็นว่าเวลาและ q สัมพันธ์กันครับ ไม่ผิดปกติแต่อย่างใด
ลองตรวจสอบดูได้ครับ โดย เทียบ
o.vstdate,o.vsttime,o.oqueue
สาเหตุที่เวลามาก่อนไม่ได้อยู่ลำดับแรก เป็นไปได้ว่า
code ที่ดึงข้อมูลมาแสดงไม่ได้ ระบุ ให้แสดงตามอะไร (order by)
ลองเปิดที่น่าจอ บันทึกผลการวินิจฉัยผู้ป่วนอกอีกที ว่า q ถูกไหม
-
หน้าของ OPD ครับ ไม่ใช่การเงิน
แล้วอีกอย่างผมลองไปแก้ไข visit แล้วเลือกให้แสดงคิว
คนที่มาทีหลังได้คิว 1 ส่วน อีกคนที่มาก่อน กลับได้คิว 4 ครับ
-
sql ด่านล่างเป็นตัวที่ดึงข้อมูลมาแสดง
ในหน้าลงบันทึกผลการวินิจฉัยผู้ป่วยนอกนะครับ
select ov.*, substring(concat(oost.name,' [',sp.department,']'),1,150) as ovstname, odx.icd10 as icdcode,
vk.vn as lock_vn,pt.birthtime, substring(icd1.name,1,100) as icdname, concat(odx.icd10,' ',ix.name) as pdxname
,pt.birthday, pty.pcode, st.name as ovstist_name, concat(pt.pname,' ',pt.fname,' ',pt.lname) as ptname,
oapp.nextdate as ndate,vt.age_y,vt.age_m,vt.age_d , vt.cid,c.complete,vt.pttype_in_region,vt.inc_drug,vt.count_in_day+1 as count_in_day
, od.rw ,ovq.pttype_check,ovq.promote_visit
from ovst ov
left outer join patient pt on pt.hn=ov.hn
left outer join ovstdiag odx on odx.vn=ov.vn and odx.diagtype='1'
left outer join kskdepartment sp on sp.depcode=ov.cur_dep
left outer join ovstost oost on oost.ovstost=ov.ovstost
left outer join icd101 icd1 on icd1.code=odx.icd10
left outer join icd101 ix on ix.code=substring(odx.icd10,1,3)
left outer join pttype pty on pty.pttype=ov.pttype
left outer join vn_lock vk on vk.vn = ov.vn
left outer join ovstist st on st.ovstist = ov.ovstist
left outer join vn_stat vt on vt.vn=ov.vn
left outer join ovst_drgs od on od.vn = ov.vn
left outer join oapp on oapp.vn=ov.vn and oapp.app_no=1
left outer join vn_opd_complete c on c.vn=ov.vn
left outer join ovst_seq ovq on ovq.vn = ov.vn where (ov.vstdate='2010-10-29' ) order by ov.vsttime
ลองเทียบ o.vstdate,o.vsttime,o.oqueue ว่าสัมพันธ์กันหรือไม่
-
ผมลองตัดการแสดงผลบางส่วนที่ไม่จำเป็นออกไปครับ
ผลที่ได้ออกมาแบบนี้ครับ
-
ผมลองตัดการแสดงผลบางส่วนที่ไม่จำเป็นออกไปครับ
ผลที่ได้ออกมาแบบนี้ครับ
ผลปกติไหมครับ
เท่าที่ผมดูปกติครับ ในรูปก็ไม่มีรายการใดที่ผิดปกติ
เวลาส่งตรวจ ก่อนก็จะได้ q ก่อน ก็ถูกแล้ว
ไม่เห็นรายการใดที่ ส่งตรวจทีหลังได้ q ก่อนเลยนะครับ
-
ตรง oqueue ค่า 1 2 3 มันหายไปไหนครับ ตรง main_dep ค่าตรงปกติครับ
แต่ผมสังเกตุว่าคิวการส่งตรวจที่ 1 2 3 หายไปครับ
แต่คิวตรวจตามแผนกไม่มีปัญหาครับ
-
ลองดูของวันที่อื่น ๆ เปรียบเทียบครับว่า
oqueue ค่า 1 2 3 มันหายไหม
ถ้า1 2 3 หายเหมือนกันทุกวัน ก็ลอง serial check ดูครับ
-
ตรง oqueue ค่า 1 2 3 มันหายไปไหนครับ ตรง main_dep ค่าตรงปกติครับ
แต่ผมสังเกตุว่าคิวการส่งตรวจที่ 1 2 3 หายไปครับ
แต่คิวตรวจตามแผนกไม่มีปัญหาครับ
... มีการส่งตรวจ แล้วยกเลิกการส่งตรวจหรือเปล่าครับ ... :D ....
-
ตรง oqueue ค่า 1 2 3 มันหายไปไหนครับ ตรง main_dep ค่าตรงปกติครับ
แต่ผมสังเกตุว่าคิวการส่งตรวจที่ 1 2 3 หายไปครับ
แต่คิวตรวจตามแผนกไม่มีปัญหาครับ
... มีการส่งตรวจ แล้วยกเลิกการส่งตรวจหรือเปล่าครับ ... :D ....
ผมคิดว่าน่าจะเป็นแบบนั้นล่ะครับ อ.ขวด
ทดลองในเครื่องทดสอบแล้วเป็นตามนั้นครับ
เด่วต้องเปิดกรมสอบสวนคดีพิเศษขึ้นมาอีกครั้ง ครับ ;D
-
ดูแล้ว ตามรูปเลยครับท่านกอล์ฟ วันเดียวกัน
แต่เวลามา 7 โมงเช้าได้คิวก่อน คนที่มาตอนเที่ยงคืน ครับ
ดูจาก 3 รายแรก คล้ายๆกับเป็นการส่งตรวจล่วงหน้า ตามนัด เช่น ถ้าผป.นัดมาตรวจ 29/10/2553 แต่จนท.มาส่งตรวจล่วงหน้า เวลาส่ง จะมีหน้าต่างให้เลือกยืนยันเวลา (ตามที่เคยนัดไว้) เช่น 2 รายแรก น่าจะนัด 7.00 น. อีกรายนัด 11.00 น. ทำให้เวลาส่งตรวจ จะเป็น 7:00:00 กับ 7:00:01 11:00:00 ซึ่งทั้ง 3 รายจะได้ VN ตามวันที่และเวลาดังกล่าว แต่เนืองจากเป็นการส่งตรวจล่วงหน้าก่อน 1 วัน ทำให้ QN ของวันที่ 29 ยังไม่เริ่ม จึงได้ QN 1 2 3 ตามลำดับ พอถึงเวลาหลังเที่ยงคืน รายแรกจริงๆ ของวันที่ 29 มาตรวจ จึงได้ QN 4 ต่อ
คาดเดาเอานะครับ
;)
-
ดูจาก 3 รายแรก คล้ายๆกับเป็นการส่งตรวจล่วงหน้า ตามนัด เช่น ถ้าผป.นัดมาตรวจ 29/10/2553 แต่จนท.มาส่งตรวจล่วงหน้า เวลาส่ง จะมีหน้าต่างให้เลือกยืนยันเวลา (ตามที่เคยนัดไว้) เช่น 2 รายแรก น่าจะนัด 7.00 น. อีกรายนัด 11.00 น. ทำให้เวลาส่งตรวจ จะเป็น 7:00:00 กับ 7:00:01 11:00:00 ซึ่งทั้ง 3 รายจะได้ VN ตามวันที่และเวลาดังกล่าว แต่เนืองจากเป็นการส่งตรวจล่วงหน้าก่อน 1 วัน ทำให้ QN ของวันที่ 29 ยังไม่เริ่ม จึงได้ QN 1 2 3 ตามลำดับ พอถึงเวลาหลังเที่ยงคืน รายแรกจริงๆ ของวันที่ 29 มาตรวจ จึงได้ QN 4 ต่อ
คาดเดาเอานะครับ
;)
วิเคราะห์ได้เข้าทางครับ
-
สงสัยจะเป็นอย่างที่หมอเก้งวิเคราะห์...น่าสนใจครับ.. :)
-
น่าคิดครับ