BMS-HOSxP Community

HOSxP => Report Exchange => ข้อความที่เริ่มโดย: Bluebird ที่ ตุลาคม 24, 2008, 15:48:47 PM

หัวข้อ: รายงานแบบฟอร์มระยะเวลาการรับบริการ
เริ่มหัวข้อโดย: Bluebird ที่ ตุลาคม 24, 2008, 15:48:47 PM
แบบฟอร์มนี้เป็นคนไข้ทั้งหมดเลย
อยากให้แก้รายงานตัวนี้เลือกคนไข้เฉพาะ ถอนฟันครับ  ICD-10 เท่ากับ K04

หัวข้อ: Re: รายงานแบบฟอร์มระยะเวลาการรับบริการ
เริ่มหัวข้อโดย: atit ที่ ตุลาคม 25, 2008, 00:16:04 AM
select a.vstdate,a.vn,a.hn,concat(pname,fname,"    ",lname) as ptname,a.vsttime as begintime,
a.service12 as endtime,substring(icd1.name,1,100) as icdname, concat(odx.icd10,' ',ix.name) as pdxname ,
sec_to_time(time_to_sec(a.service12)-time_to_sec(a.vsttime)) as watingtime, odx.icd10 as icdcode
from service_time a
left outer join patient b on a.hn=b.hn
left outer join ovstdiag odx on odx.vn=a.vn and odx.diagtype='1'
 left outer join icd101 icd1 on icd1.code=odx.icd10
 left outer join icd101 ix on ix.code=substring(odx.icd10,1,3)
where a.vstdate between'2008-01-01'and'2008-01-31'and odx.icd10 like "%k04%"
and a.service12>a.vsttime

ลองดูครับ 8)
หัวข้อ: Re: รายงานแบบฟอร์มระยะเวลาการรับบริการ
เริ่มหัวข้อโดย: atit ที่ ตุลาคม 25, 2008, 00:32:30 AM
 :D
อันนี้เป็นแบบแก้ให้แล้วครับ
หัวข้อ: Re: รายงานแบบฟอร์มระยะเวลาการรับบริการ
เริ่มหัวข้อโดย: Bluebird ที่ ตุลาคม 25, 2008, 07:55:40 AM
select a.vstdate,a.vn,a.hn,concat(pname,fname,"    ",lname) as ptname,a.vsttime as begintime,
a.service12 as endtime,substring(icd1.name,1,100) as icdname, concat(odx.icd10,' ',ix.name) as pdxname ,
sec_to_time(time_to_sec(a.service12)-time_to_sec(a.vsttime)) as watingtime, odx.icd10 as icdcode
from service_time a
left outer join patient b on a.hn=b.hn
left outer join ovstdiag odx on odx.vn=a.vn and odx.diagtype='1'
 left outer join icd101 icd1 on icd1.code=odx.icd10
 left outer join icd101 ix on ix.code=substring(odx.icd10,1,3)
where a.vstdate between'2008-01-01'and'2008-01-31'and odx.icd10 like "K04"
and a.service12>a.vsttime

ลองดูครับ 8)
ขอบคุณมากครับ
หัวข้อ: Re: รายงานแบบฟอร์มระยะเวลาการรับบริการ
เริ่มหัวข้อโดย: Bluebird ที่ ตุลาคม 25, 2008, 10:29:46 AM
หากจะกำหนดเอาเฉพาะคนไข้ในเวลาราชการเท่านั้นกำหนดตรงไหนครับ จากสูตร
select a.vstdate,a.vn,a.hn,concat(pname,fname,"    ",lname) as ptname,a.vsttime as begintime,
a.service12 as endtime,substring(icd1.name,1,100) as icdname, concat(odx.icd10,' ',ix.name) as pdxname ,
sec_to_time(time_to_sec(a.service12)-time_to_sec(a.vsttime)) as watingtime, odx.icd10 as icdcode
from service_time a
left outer join patient b on a.hn=b.hn
left outer join ovstdiag odx on odx.vn=a.vn and odx.diagtype='1'
 left outer join icd101 icd1 on icd1.code=odx.icd10
 left outer join icd101 ix on ix.code=substring(odx.icd10,1,3)
where a.vstdate between'2008-01-01'and'2008-01-31'and odx.icd10 like "K04"
and a.service12>a.vsttime
หัวข้อ: Re: รายงานแบบฟอร์มระยะเวลาการรับบริการ
เริ่มหัวข้อโดย: atit ที่ ตุลาคม 25, 2008, 16:16:09 PM
หากจะกำหนดเอาเฉพาะคนไข้ในเวลาราชการเท่านั้นกำหนดตรงไหนครับ จากสูตร
select a.vstdate,a.vn,a.hn,concat(pname,fname,"    ",lname) as ptname,a.vsttime as begintime,
a.service12 as endtime,substring(icd1.name,1,100) as icdname, concat(odx.icd10,' ',ix.name) as pdxname ,
sec_to_time(time_to_sec(a.service12)-time_to_sec(a.vsttime)) as watingtime, odx.icd10 as icdcode
from service_time a
left outer join patient b on a.hn=b.hn
left outer join ovstdiag odx on odx.vn=a.vn and odx.diagtype='1'
 left outer join icd101 icd1 on icd1.code=odx.icd10
 left outer join icd101 ix on ix.code=substring(odx.icd10,1,3)
where a.vstdate between'2008-01-01'and'2008-01-31'and odx.icd10 like "K04"
and a.service12>a.vsttime

select a.vstdate,a.vn,a.hn,concat(pname,fname,"    ",lname) as ptname,a.vsttime as begintime,
a.service12 as endtime,substring(icd1.name,1,100) as icdname, concat(odx.icd10,' ',ix.name) as pdxname ,
sec_to_time(time_to_sec(a.service12)-time_to_sec(a.vsttime)) as watingtime, odx.icd10 as icdcode
from service_time a
left outer join patient b on a.hn=b.hn
left outer join ovstdiag odx on odx.vn=a.vn and odx.diagtype='1'
 left outer join icd101 icd1 on icd1.code=odx.icd10
 left outer join icd101 ix on ix.code=substring(odx.icd10,1,3)
where a.vstdate between'2008-01-01'and'2008-01-31'and odx.icd10 like "K04"
and a.service12>a.vsttime and a.vsttime between "08:00" and "16:00"

น่าจะได้นะครับ