เรื่องของเรื่อง คือ อยากรู้ว่าต้องแก้ไขยังไงบ้างนะคับ
เพื่อเอาไปเป็นแนวทางในการเขียนรายงานของหน่วยงานเองนะคับ
ส่วน variables ประกาศ
var
clinic_hn,clinic,clinicname,ward:string;
rxdate1,rxdate2:tdatetime;
date1,date2:tdatetime;
income : string;
fbs1,fbs2,ix2:string;
bps1,bps2,bpd1,bpd2 : string;
ส่วน Events
procedure GlobalOnCreate;
begin
GetDateRangeDialog(date1, date2);
rxdate1:=date1;
rxdate2:=date2;
bps1 := inputquery('BP ªèǺ¹àÃÔèÁµé¹','BPs1') ;
bps2 := inputquery('BP ªèǺ¹ÊÔé¹ÊØ´','BPs2') ;
bpd1 := inputquery('BP ªèÇÅèÒàÃÔèÁµé¹','BPd1') ;
bpd2 := inputquery('BP ªèÇÅèÒÊÔé¹ÊØ´','BPd2') ;
clinicname:= getpickuplist('select name from clinic where chronic="Y" order by name');
clinic:=getsqlstringdata('select clinic from clinic where name="'+clinicname+'"');
clinic_hn := getsqlsubquerydata('select hn from clinicmember where clinic="'+clinic+'"');
clinic_hn := getsqlsubquerydata('select hn from ovst where vstdate between "'+formatdatetime('yyyy-mm-dd',rxdate1)+'" and "'+formatdatetime('yyyy-mm-dd',rxdate2)+'" and hn in ('+clinic_hn+') ');
ChangeReportSQL('SELECT o.bpd,o.bps,CONCAT(FORMAT(o.bps,000),"/",FORMAT(o.bpd,000)) AS BP, o.fbs,v.pdx, v.vstdate, '+
'v.hn,v.pdx,i.name,v.age_y,v.age_m,aid,v.moopart, '+
'concat(p.pname,p.fname," ",p.lname)as ptname ,t.full_name '+
'FROM opdscreen o '+
'INNER JOIN vn_stat v ON v.vn = o.vn '+
'INNER JOIN icd101 i ON i.`code` = v.main_pdx '+
'INNER JOIN patient p ON p.hn = o.hn '+
'INNER JOIN thaiaddress t ON t.addressid = v.aid '+
'INNER JOIN clinicmember c ON c.hn = o.hn '+
'WHERE (o.vstdate BETWEEN "'+formatdatetime('yyyy-mm-dd',rxdate1)+'" and "'+formatdatetime('yyyy-mm-dd',rxdate2)+'" ) '+
'AND v.main_pdx <> "" AND (o.bps BETWEEN "'+ bps1 +'" AND "'+ bps2 +'") AND (o.bpd BETWEEN "'+ bpd1 +'" AND "'+ bpd2 +'") and o.hn in ('+clinic_hn+') ');
end;