BMS-HOSxP Community

HOSxP => Report Exchange => ข้อความที่เริ่มโดย: Kab_Moo ที่ มกราคม 10, 2011, 11:52:11 AM

หัวข้อ: ขอรายงานตามนี้ได้หรือปล่าวครับ เพราะพึ่งใช้ได้ไม่ถึงเดือน ยังเขียนรีพอร์ดไม่เก่ง
เริ่มหัวข้อโดย: Kab_Moo ที่ มกราคม 10, 2011, 11:52:11 AM
ผมทำขึ้นทะเบียน ต่างด้าวนะครับ

อยากได้ รายงานดึงข้อมูลดังนี้ครับ
1.ดึงรายงานตามวันที่ ที่กำหนด แล้วดึงจากสิทธิการรักษา (รหัสสิทธิของผมเป็น 03 ครับ)
2.ข้อมูลที่ต้องการครับ
2.1 ลำดับ , Hn , ชื่อ-สกุล , เพศ , เลขที่ใบอนุญาติต่างด้าว , สัญชาติ , เชื้อชาติ ,สภาณภาพ,อายุ,นายจ้าง,ที่อยู่นายจ้าง,ที่อยู่ต่างประเทศ,ส่วนสูง,น้ำหนัก

รบกวนอาจารณ์ทุกท่านด้วยครับ แนะให้ผมเป็นแนวก็ได้ครับ เพราะยังไม่ได้อบรม เรื่องเขียนรีพอร์ดเลยครับ ยังอาศัยอ่านและทดลองทำดูครับ ขอบคุณครับ
หัวข้อ: Re: ขอรายงานตามนี้ได้หรือปล่าวครับ เพราะพึ่งใช้ได้ไม่ถึงเดือน ยังเขียนรีพอร์ดไม่เก่ง
เริ่มหัวข้อโดย: Kab_Moo ที่ มกราคม 10, 2011, 12:35:02 PM
รบกวนด้วยครับ แนะแนวทางให้ผมก็ได้ครับ ผมลองมาได้ นิสหนึ่งแล้วครับ แต่ไม่รู้ว่าผิดพลาดตรงไหนอะครับ

SELECT patient.hn, patient.pname, patient.fname, patient.lname,
  patient.citizenship, nationality.name
FROM patient INNER JOIN
  vn_stat ON patient.hn = vn_stat.hn INNER JOIN
  nationality ON patient.nationality = nationality.nationality
WHERE vn_stat.vstdate BETWEEN '2011-01-01' AND '2011-01-07'
GROUP BY patient.hn, patient.pname, patient.fname, patient.lname,
  patient.citizenship, patient.pttype, nationality.name
HAVING patient.pttype IN ('29')
ORDER BY vn_stat.vstdate

ผมไม่รู้ว่าจะไปเอา citizen.name มาจากไหนอะครับ หาตารางไม่เจอ
หัวข้อ: Re: ขอรายงานตามนี้ได้หรือปล่าวครับ เพราะพึ่งใช้ได้ไม่ถึงเดือน ยังเขียนรีพอร์ดไม่เก่ง
เริ่มหัวข้อโดย: Bond_007 ที่ มกราคม 10, 2011, 15:11:35 PM
ผมก็ไม่เก่งครับ  ;D ;D เป็นตัวอย่างนะครับ
select p.hn,p.pname,p.fname,p.lname,p.citizenship,s.name,n.name,m.name,p.informname,p.informaddr,o.height,o.bw,v.age_y   from patient p
left outer join opdscreen o on o.hn = p.hn
left outer join nationality n on n.nationality = p.nationality
left outer join marrystatus m on m.code = p.marrystatus
left outer join sex s on s.code = p.sex
left outer join vn_stat v on v.hn = o.hn
where v.vstdate between '2011-01-01' AND '2011-01-07' and v.pttype = 03
group by p.hn

พอดีโรงพยาบาลผมไม่ได้มีต่างด้าวครับ ผมเลยคิดว่า
 โดยเอาชื่อ นายจ้างกะที่อยู่นายจ้างมาตั้งตามภาพนี่ครับ  ;D
หัวข้อ: Re: ขอรายงานตามนี้ได้หรือปล่าวครับ เพราะพึ่งใช้ได้ไม่ถึงเดือน ยังเขียนรีพอร์ดไม่เก่ง
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 10, 2011, 17:03:24 PM
ผมไม่รู้ว่าจะไปเอา citizen.name มาจากไหนอะครับ หาตารางไม่เจอ
nationality
หัวข้อ: Re: ขอรายงานตามนี้ได้หรือปล่าวครับ เพราะพึ่งใช้ได้ไม่ถึงเดือน ยังเขียนรีพอร์ดไม่เก่ง
เริ่มหัวข้อโดย: jdadmin1 ที่ มกราคม 10, 2011, 17:05:45 PM
 ;D ;D ;D ลองดูรายงานที่ผมมีอยู่นะครับเป็นแนวทาง จะแก้ไขเพิ่มเติมตรงไหนก็ตามสบาย เสร็จแล้วส่งกลับมาให้ใช้กันด้วยล่ะ ;D ;D ;D
หัวข้อ: Re: ขอรายงานตามนี้ได้หรือปล่าวครับ เพราะพึ่งใช้ได้ไม่ถึงเดือน ยังเขียนรีพอร์ดไม่เก่ง
เริ่มหัวข้อโดย: Kab_Moo ที่ มกราคม 11, 2011, 11:03:10 AM
ขอบคุณครับ

ตอนนี้หา เลขต่างด้าวไม่เจอครับ ไปซ่อนตัวอยู่ตรงไหนอะครับ รบกวนด้วยครับ หาใน patient ไม่เจอครับ
หัวข้อ: Re: ขอรายงานตามนี้ได้หรือปล่าวครับ เพราะพึ่งใช้ได้ไม่ถึงเดือน ยังเขียนรีพอร์ดไม่เก่ง
เริ่มหัวข้อโดย: jdadmin1 ที่ มกราคม 11, 2011, 11:09:21 AM
อ้างถึง
ตอนนี้หา เลขต่างด้าวไม่เจอครับ ไปซ่อนตัวอยู่ตรงไหนอะครับ รบกวนด้วยครับ หาใน patient ไม่เจอครับ
;D ;D ;D เลขต่างด้าวก็เอามาจากแฟ้ม OPD หน้าจอทั่วไป 1 ที่ช่องเลขที่บัตรประชาชนนั่นแหละครับ ;D ;D ;D
หัวข้อ: Re: ขอรายงานตามนี้ได้หรือปล่าวครับ เพราะพึ่งใช้ได้ไม่ถึงเดือน ยังเขียนรีพอร์ดไม่เก่ง
เริ่มหัวข้อโดย: nahos ที่ มกราคม 11, 2011, 11:24:57 AM
ขอบคุณครับ

ตอนนี้หา เลขต่างด้าวไม่เจอครับ ไปซ่อนตัวอยู่ตรงไหนอะครับ รบกวนด้วยครับ หาใน patient ไม่เจอครับ
ลองดูที่ 

select cardno from  ptcardno whrere card type=02  จะเป็นเลขที่ต่างด้าวครับ

หัวข้อ: Re: ขอรายงานตามนี้ได้หรือปล่าวครับ เพราะพึ่งใช้ได้ไม่ถึงเดือน ยังเขียนรีพอร์ดไม่เก่ง
เริ่มหัวข้อโดย: Kab_Moo ที่ มกราคม 11, 2011, 13:19:13 PM
ขอบคุณที่ชี้แนะครับ
หัวข้อ: Re: ขอรายงานตามนี้ได้หรือปล่าวครับ เพราะพึ่งใช้ได้ไม่ถึงเดือน ยังเขียนรีพอร์ดไม่เก่ง
เริ่มหัวข้อโดย: Kab_Moo ที่ มกราคม 12, 2011, 14:26:43 PM
ลองผิดลองถูก ตอนนี้ได้ประมาณนี้ครับ
select p.hn,v.vstdate,concat(p.pname," ",p.fname," ",p.lname)as name,s.name as sex,pn.cardno,n.name,na.name,m.name,p.informname,p.informaddr,o.height,o.bw,v.age_y   from patient p
left outer join opdscreen o on o.hn = p.hn
left outer join nationality n on n.nationality = p.nationality
left outer join marrystatus m on m.code = p.marrystatus
left outer join sex s on s.code = p.sex
left outer join vn_stat v on v.hn = o.hn
left outer join ptcardno pn on pn.hn = p.hn
left outer join nationality na on na.nationality = p.citizenship
where v.vstdate between '2011-01-01' AND '2011-01-07' and v.pttype = 03 and pn.cardtype = "02"
group by p.hn

ไฟร์ที่ทดสอบครับ