51
HOSxP PCU / Re: มี error เวลา upgrade structure รบกวนผู้มีประสบการณ์
« เมื่อ: ธันวาคม 31, 2010, 13:29:33 PM »
พื้นที่ใน HD ไม่เต็มแน่นอน แต่ antivirus ผมไม่แน่ใจ
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
คงต้องวาง Getpickuplist เลือกสิทธิ ก่อน run main sql ครับ... ในtab calulation หลังประกาศตัวแปรครับแล้วครับ...คงต้องลองทำดู
getpickuplist ลองดูในขั้นตอนออกแบบครับ...มีในTAB language ครับ ประมาณว่า
pttypelist:= GetPickupList('select name from pttype order by pttype');
sum (income) อีกทีในการออกแบบให้เลือกแสดง band เพิ่มโดยเลือกแสดง แถบ summary
ขอต่อนะครับ (จะมีท่านใดเข้ามาดูรึป่าว) ผมทดลองทำรายงานขึ้นมาใหม่ ประมาณ นค1.
มาจบตรงที่ จะรวมค่าใช้จ่ายของแต่ละคนต้องทำยังไงครับ
ขอบคุณครับ
ในตาราง vn_stat มีข้อมูลสรุปต่าง ๆ อยู่ สามารถนำมาใช้ได้ครับ ถ้าเป็นสรุปค่าใช้จ่ายของ visit นั้น ๆ จะอยู่ที่ field income ครับ
ตาม อ นาจอีกครั้ง ครับ![]()
อยากทราบว่ารายงานนี้ต้องการอะไรเหรอครับ
การเขียนคำสั่งที่ดีต้องมีเว้นวรรคให้ถูกช่วง ถูกจังหวะครับ
น้องเขียนติดกันไปหมด มันก็ทำงานไม่ได้อยู่แล้วครับโค๊ด: SQL
SELECT vn.vstdate, vn.pttypeno, concat(p.pname,p.fname," ",p.lname) AS fullname, p.cid, vn.main_pdx FROM person p LEFT OUTER JOIN vn_stat vn ON vn.hn=p.patient_hn WHERE vn.vstdate BETWEEN "2010-10-01" AND "2010-10-31" ORDER BY vn.pttype, vn.vstdate
ลองเทียบกับของเดิมโค๊ด: SQL
SELECT vn.vstdate,vn.pttypeno,concat(p.pname,p.fname," ",p.lname)AS fullname,p.cid,vn.main_pdx FROM person p LEFT OUTER JOIN vn_stat vn ON vn.hn=p.patient_hn WHERE vn.vstdate BETWEEN "2010-10-01"AND"2010-10-31" ORDER BY vn.pttype,vn.vstdate
อีกอย่างไปกำหนด p เป็น parameter มันไม่ถูกครับ ต้องกำหนดช่วงวันที่เป็น parameter เพื่อให้ขึ้นให้เราเลือกวันที่ตอนแสดงรายงาน
ลองดูรายงานที่ปรับแก้แล้วนะครับ ไปตกแต่งให้สวยงามเองนะ
ลองเอาของผม Import เข้าไปแล้วดูตัวอย่างครับรับรองได้แน่นอนครับ
ประกาศตัวแปร
date1,date2:datetime;
ds1,ds2:string; แบบนี้
ส่วน
begin
GetDateRangeDialog(date1, date2);
ds1:= FormatDateTime('yyyy-mm-dd',date1);
ds2:= FormatDateTime('yyyy-mm-dd',date2);
GetSQLStringData('select vn.vstdate,vn.pttypeno,concat(p.pname,p.fname," ",p.lname)as fullname,p.cid,vn.main_pdx from '
+' person p '
+' left outer join vn_stat vn on vn.hn=p.patient_hn '
+' where vn.vstdate between "'+ds1+'" and "'+ds2+'" '
+' order by vn.pttype,vn.vstdate ');
end;
ทางสว่างมืดอีกครั้ง ช่วยดูให้อีกทีครับ
![]()
![]()
ผมแก้ให้แล้ว เว้นช่องว่างในคำสั่ง SQL ด้วยครับ ลองเปรียบเทียบ บน กะ ล่างดูนะครับ
select pc.hcode,pc.name as pcuname,count(v.vn) as con,count(r.vn) as conrefer,ขอบคุณมากครับจะลองดูคับ
sum(v.income) as income
from vn_stat v
left outer join pttypeno p on v.hn=p.hn
left outer join referout r on r.vn=v.vn
left outer join pcu_child pc on pc.hcode=p.hospsub
where v.vstdate between '2009-10-1' and '2010-09-30'
and v.pttype between "60" and "98" and pc.hcode <> ""
group by pc.hcode
ลองเล่นดูนะคะ
![]()
![]()
วัคซีนรพ.สต.บ้านสาลวันปรับตามนี้ครับ เสร็จแล้ว Update Age ที่บัญชี 1 แล้วไป Recalc ที่บัญชี 3, 4 ลองดูครับ
![]()
![]()
![]()
![]()
wbc_vaccine ส่งขึ้นมาผิดหรือเปล่าครับ ที่เปิดดูมันเป็น epi_vaccine ทั้งสองตารางครับ ที่ epi_vaccine กำหนด age_max ให้เท่ากับ age_min แล้ว Update ตารางแล้วRecalc ดูใหม่ครับ ถ้ายังไม่ออกคงต้องส่งตารางที่เกี่ยวข้องมาทั้งหมด vaccine, vaccine_combination, wbc_vaccine, epi_vaccine, student_vaccine, anc_service, women_vaccine, person_vaccine
![]()
![]()
save เป็น cds ไฟล์ขึ้นมาเลยก็ดีครับ