BMS-HOSxP Community
HOSxP => Report Exchange => ข้อความที่เริ่มโดย: k_toedkiets ที่ เมษายน 21, 2011, 19:52:07 PM
-
ตรงข้อมูลการตรวจร่างกาย
HEENT : ผิดปกติ : แพทย์ได้พิมพ์ข้อมูลแต่ข้อมูลไม่ขึ้น (ถ้าจะให้ขึ้นข้อมูลที่แพทย์พิมพ์ต้องทำอย่างไรบ้าง)
HEART : ปกติ :
LUNG : ปกติ :
Ab : ปกติ :
Ext : ปกติ :
Neuro : ปกติ :
รายการตรวจทางห้องปฏิบัติการ
CLINICAL CHEMISTRY (ผู้รายงานผล : จนท.)
SGPT = 16U/L (แพทย์ผุ้สั่ง : ชื่อแพทย์ ) ถ้าจะเพิ่มตรงแพทย์ผุ้สั่งต้องเพิ่มตรงไหนครับ
มือใหม่หัดทำ...
-
แพทย์ผู้สั่ง คือ doctor_code อยู่ในตาราง lab_head ครับ..นำ code แพทย์ไป join ตาราง doctor เพื่อนำชื่อมาแสดงได้เลยครับ
ผู้รายงานผล ก็ คือ reporter_name ในตาราง lab_head เช่นเดียวกันครับ...join กับตาราง opduser ที่เป็น lab_Staffs ครับ..
ส่วนสิ่งผิดปกติทางการตรวจร่างกาย อยู่ในตาราง opdscreen ครับ..คอลัมน์ท้าย ๆ เช่น pe_heent_text เป็นต้น ครับ join กันกับ vn ว่าเป็นของรายใด
-
คำสั่ง
select o1.*,v1.*,s.*,pe.*,concat(p.pname,p.fname,' ',p.lname) as patient_name,
p.drugallergy,p.clinic as patient_clinic,p.nationality,p.hometel as pt_tel,
p2.pttype as pttype_pttype,p2.name as pttype_name,p2.pcode as pttype_pcode,
p2.requirecode as pttype_requirecode,p2.require_hcode as pttype_require_hcode,
oo.vn as observe_vn,oo.observe_id,oo.send_date_time as observe_intime,
oo.leave_date_time as observe_outtime,oo.symptom as observe_symptom,
oo.nurse_activity as observe_activity,oo.note as observe_note,
oo.ward as observe_ward,pp.name as pt_priority_name,pw.name as pt_walk_name,
concat(help3_icode,' # ',if(help3_qty is null,'',help3_qty)) as help3_drug_name,
iaq.vn as admit_vn,w1.name as admit_ward,es.vn as eye_vn,es.*,s.vn as opdscreen_vn ,opd_ill_history.cc_persist_disease ,visit_note.ptnote
from ovst o1
left outer join vn_stat v1 on v1.vn = o1.vn
left outer join opdscreen s on s.vn = o1.vn
left outer join pe_image pe on pe.vn = o1.vn
left outer join opd_observe oo on oo.vn = o1.vn
left outer join patient p on p.hn = o1.hn
left outer join pttype p2 on p2.pttype = v1.pttype
left outer join pt_priority pp on pp.id = o1.pt_priority
left outer join pt_walk pw on pw.walk_id = s.walk_id
left outer join ipt_admit_queue iaq on iaq.vn = o1.vn
left outer join ward w1 on w1.ward = iaq.request_ward
left outer join eye_screen es on es.vn = o1.vn
left outer join opd_ill_history ON o1.hn = opd_ill_history.hn
left outer join visit_note on o1.vn = visit_note.vn
where o1.vn = "540304080246"
Report
แพทย์ผู้สั่ง คือ doctor_code อยู่ในตาราง lab_head ครับ..นำ code แพทย์ไป join ตาราง doctor เพื่อนำชื่อมาแสดงได้เลยครับ
ส่วนสิ่งผิดปกติทางการตรวจร่างกาย อยู่ในตาราง opdscreen ครับ..คอลัมน์ท้าย ๆ เช่น pe_heent_text เป็นต้น ครับ join กันกับ vn ว่าเป็นของรายใด
ถ้าจะให้เพิ่มในตัวคำสั่งเลยจะได้ไหมครับ...ไม่รู้ว่าจะเพิ่มตรงไหนเพราะผมไม่ค่อยมีพื้นฐานทางด้านนี้
กำลังศึกษาอยู่...หรือจะ Remote เข้ามาแก้ให้ด้วยก็จะดีมากเลยครับ...
-
select o1.*,v1.*,s.*,pe.*,concat(p.pname,p.fname,' ',p.lname) as patient_name,
p.drugallergy,p.clinic as patient_clinic,p.nationality,p.hometel as pt_tel,
p2.pttype as pttype_pttype,p2.name as pttype_name,p2.pcode as pttype_pcode,
p2.requirecode as pttype_requirecode,p2.require_hcode as pttype_require_hcode,
oo.vn as observe_vn,oo.observe_id,oo.send_date_time as observe_intime,
oo.leave_date_time as observe_outtime,oo.symptom as observe_symptom,
oo.nurse_activity as observe_activity,oo.note as observe_note,
oo.ward as observe_ward,pp.name as pt_priority_name,pw.name as pt_walk_name,
concat(help3_icode,' # ',if(help3_qty is null,'',help3_qty)) as help3_drug_name,
iaq.vn as admit_vn,w1.name as admit_ward,es.vn as eye_vn,es.*,s.vn as opdscreen_vn ,opd_ill_history.cc_persist_disease ,visit_note.ptnote,do.name as doctor,op.name as labstaff
from ovst o1
left outer join vn_stat v1 on v1.vn = o1.vn
left outer join lab_head lh on lh.vn=o1.vn
left outer join opdscreen s on s.vn = o1.vn
left outer join pe_image pe on pe.vn = o1.vn
left outer join opd_observe oo on oo.vn = o1.vn
left outer join patient p on p.hn = o1.hn
left outer join doctor do on do.code=lh.doctor_code
left outer join opduser op on op.loginname=lh.reporter_name and op.lab_staff="Y"
left outer join pttype p2 on p2.pttype = v1.pttype
left outer join pt_priority pp on pp.id = o1.pt_priority
left outer join pt_walk pw on pw.walk_id = s.walk_id
left outer join ipt_admit_queue iaq on iaq.vn = o1.vn
left outer join ward w1 on w1.ward = iaq.request_ward
left outer join eye_screen es on es.vn = o1.vn
left outer join opd_ill_history ON o1.hn = opd_ill_history.hn
left outer join visit_note on o1.vn = visit_note.vn
where o1.vn = "540304080246"
-
เดี๋ยวจะลองดูครับ...
-
ยังไม่ได้เลยครับ...พอพิมพ์แล้วตรงแพทย์ผู้สั่ง ก็ยังไม่ขึ้นเลยครับ
-
ยังไม่ได้เลยครับ...พอพิมพ์แล้วตรงแพทย์ผู้สั่ง ก็ยังไม่ขึ้นเลยครับ
ส่งฟอร์ม เป็น .cds ขึ้นมาด้วยครับ..
-
... ใช้ฟอร์ม OPD CARD แบบไหนครับ
ต้องดูด้วยครับ ว่าในตัวฟอร์มใช้รูปแบบคำสั่งแบบไหนน่ะครับ
ถึงจะแก้ไขได้ถูกจุดครับ ... :D ...
-
แบบฟอร์มครับ...ช่วยดูให้หน่อยครับ
-
อย่าลืมเปลี่ยน vn parameter เป็นของ รพ.ตนเองครับ..เอา case ตัวอย่างที่มีทั้งตรวจร่างกายและก็ผล lab
-
แบบฟอร์มของ รพช.ปากท่อ ใช้คำสั่งเดียวกันกับของ อ.ขวด หรือเปล่าครับ
-
แบบฟอร์มของ รพช.ปากท่อ ใช้คำสั่งเดียวกันกับของ อ.ขวด หรือเปล่าครับ
ของเดิม เทพ.ขวด..นั่นแหล่ะครับ..ไม่ต้องไปจัดการอะไร แค่เพิ่ม variable แสดงแพทย์ผู้สั่งเท่านั้นเองครับ..อยู่ใน ตัวแปรใหม่สุดท้าย..และก็หาตำแหน่งวางใน subreport ของ เทพ.ขวดจัดไว้ให้เหมาะสม..สามารถปรับตำแหน่งได้ตามต้องการ ความสำคัญอยู่ที่ ผู้รับบริการแต่ละรายอาจไม่ได้ PE_TEXT ทุกคน..อยู่ที่ผู้ทำการรักษา จะขยันพิมพ์หรือใช้ template การตรวจร่างกายครับ.. :D
-
ลองทำดูแล้วครับ ก็ได้เหมือนกัน(ไม่รู้จะถูกหรือเปล่า) เดี๋ยวพรุ่งนี้จะโพส ช่วยดูให้หน่อยครับ ถ้าผิดพลาดตรงไหน แนะนำด้วยครับ
อีกอย่างที่สงสัยทำไม ข้อมูลในใบตรวจรักษาผู้ป่วยนอก แผ่นที่ 1 กับแผ่นที่ 2
ถึงมีข้อมูลขึ้นซ้ำกัน เช่น
อาการสำคัญ / ประวัติการเจ็บป่วยปัจจุบัน / ประวัติการเจ็บป่วย
การตรวจร่างกาย
รายการนัดหมาย
รายการตรวจทางห้องปฏิบัติการ
รายการสั่งยา
* ถ้าจะไม่ให้ข้อมูลขึ้นซ้ำกัน สามารถทำได้ไหมครับ *
-
... นั่นสิพี่เกื้อ ทำไมมันออกมาซ้ำครับ ... :D ....
-
... นั่นสิพี่เกื้อ ทำไมมันออกมาซ้ำครับ ... :D ....
ที่พี่แนบรูป เป็นฟอร์มที่ คนตั้งกระทู้ส่งมาให้น่ะครับ.. เทพ.ขวด......ส่วนที่พี่เพิ่มแค่ชื่อผู้สั่ง lab+ชื่อผู้รายงาน เพราะเป็นไปได้ว่า สั่งและ รายงานผล แยกบุคลากรในผู็ป่วยรายเดียวกัน (แยกผู็รายงานผลlab แต่ละประเภท) แต่คนสั่งอาจมีทั้งแพทย์และพยาบาล ครับ
-
ที่พี่แนบรูป เป็นฟอร์มที่ คนตั้งกระทู้ส่งมาให้น่ะครับ.. เทพ.ขวด......ส่วนที่พี่เพิ่มแค่ชื่อผู้สั่ง lab+ชื่อผู้รายงาน เพราะเป็นไปได้ว่า สั่งและ รายงานผล แยกบุคลากรในผู็ป่วยรายเดียวกัน (แยกผู็รายงานผลlab แต่ละประเภท) แต่คนสั่งอาจมีทั้งแพทย์และพยาบาล ครับ
... อ่อ เข้าใจแล้วครับ พี่เกื้อ
เป็นที่การเอาตาราง lab_head เข้าไป join ในคำสั่งของรายงานน่ะครับ
ถ้า vn นี้ มีการสั่ง Lab 2 ใบสั่ง ข้อมูลก็จะออกมาเบิ้ลแบบนี้แหล่ะครับ
สั่ง Lab กี่ใบก็จะออกซ้ำเท่านั้นแหล่ะครับ
ต้องยกเลิกการ join กับ lab_head ที่คำสั่งหลักของรายงานครับ ... :D ...
-
ช่วยดูให้หน่อยว่าต้องถูกไหมครับ (ในส่วนของแพทย์ผู้สั่ง lab)
Value := DBPipeLineLink7['form_name']+' (แพทย์ผู้สั่ง: '+GetSQLStringData('select d2.name '+
'from ovst d1 '+
'left outer join doctor d2 on d2.code = d1.doctor '+
'where d1.vn = "'+DBPipeline['vn']+'" ')+' )' ;
ถ้าจะยกเลิกรายการตรวจทางห้องปฏิบัติการ ตามตัวอย่าง
HT (แพทย์ผู้สั่ง : ..................)
HT (ผู้รายงานผล : ................)
เป็นแบบนี้
HT (แพทย์ผู้สั่ง : ..................)
(ผู้รายงานผล : ................) เอาหัวข้อ lab ออก
ต้องแก้ตรงไหนครับ
Value := DBPipeLineLink7['form_name']+' ( ผู้รายงานผล : '
+GetSQLStringData('select o.name from lab_head l '+
'left outer join opduser o on o.loginname = l.reporter_name '+
'where l.vn = "'+DBPipeLineLink7['vn']+'" '+
'and l.lab_order_number = "'+DBPipeLineLink7['lab_order_number']+'" ')+' )' ;
****
-
ช่วยดูให้หน่อยว่าต้องถูกไหมครับ (ในส่วนของแพทย์ผู้สั่ง lab)
Value := DBPipeLineLink7['form_name']+' (แพทย์ผู้สั่ง: '+GetSQLStringData('select d2.name '+
'from ovst d1 '+
'left outer join doctor d2 on d2.code = d1.doctor '+
'where d1.vn = "'+DBPipeline['vn']+'" ')+' )' ;
ถ้าจะยกเลิกรายการตรวจทางห้องปฏิบัติการ ตามตัวอย่าง
HT (แพทย์ผู้สั่ง : ..................)
HT (ผู้รายงานผล : ................)
เป็นแบบนี้
HT (แพทย์ผู้สั่ง : ..................)
(ผู้รายงานผล : ................) เอาหัวข้อ lab ออก
ต้องแก้ตรงไหนครับ
Value := DBPipeLineLink7['form_name']+' ( ผู้รายงานผล : '
+GetSQLStringData('select o.name from lab_head l '+
'left outer join opduser o on o.loginname = l.reporter_name '+
'where l.vn = "'+DBPipeLineLink7['vn']+'" '+
'and l.lab_order_number = "'+DBPipeLineLink7['lab_order_number']+'" ')+' )' ;
****
ตรงสีแดงครับ...
Value := GetSQLStringData('select concat("¼ÙéÃÒ§ҹ¼Å"," ",o.name) as name from lab_head l '+
'left outer join opduser o on o.loginname = l.reporter_name '+
'where l.vn = "'+DBPipeLineLink7['vn']+'" '+
'and l.lab_order_number = "'+DBPipeLineLink7['lab_order_number']+'" ')+' ' ;
-
ขอบคุณ...สำหรับคำแนะนำดีๆครับ...คราวหน้ารบกวนใหม่... :-)