ขออธิบายนิดหนึ่งนะครับ ว่าทางหน่วยงาน OPD(cur_dep=010) ของ รพ ผม ต้องการเปิดช่องทางพิเศษให้กับผู้สูงอายุ(>70 ปีขึ้นไป) และเด็ก(อายุ<5 ปี) ได้รับการตรวจก่อนผู้ป่วยทั่วไป เลยได้ Idea ว่าจะให้ห้องบัตรเป็นคนเลือกความเร่งด่วนของผู้ป่วยตอนที่ส่งตรวจเป็น
มาก ซึ่งโปแกรมในหน้าเมนูคัดกรอง ทางพยาบาลที่คัดกรองก็จะเห็นสัญลักษณ์รูปหน้าคนยิ้ม ก็จะได้เรียกผู้ป่วยมาคัดกรองก่อน จะได้ไม่ต้องรอนาน แต่มีปัญหาว่าห้องบัตรไม่สะดวกที่ต้องมากำหนดเองทุกครั้ง บางครั้งส่งผิดก็ต้องเสียเวลากลับมาแก้ไขใหม่(แทนที่จะช่วยให้บริการง่ายขึ้น กลับเพิ่มความยุ่งยากให้กับเจ้าหน้าที่..) พี่หัวหน้าห้องบัตรเลยเสนอว่าน่าจะผลักให้เป็นหน้าที่ของโปรแกรม(admin งานเข้า
) จัดการให้ auto น่าจะดี เลยลองเขียนคำสั่งในการตรวจสอบฝากไว้ใน
FORM-RxORDER1 (ที่ รพ. ผม ห้องบัตร print ฟอร์มนี้ ให้กับ pt ทุกคนที่มารักษา ) ท่านใด
สนใจที่จะลองไปทดสอบก็ตามสบายเลยครับ
ดั้งนั้น ตอนที่ส่งตรวจแค่ให้เจ้าหน้าที่เลือกความเร่งด่วนเป็น
ปกติ เท่านั้น เดี๋ยว script ใน
FORM-RxORDER1 จะตรวจสอบให้เองครับ
ตัวอย่าง code
unit TanReg;
procedure main;
var
s1,s2,s3:string;
tc:Tclientdatset;
begin
s2:=report_value(3);
//showmessage(s2);
s1:=report_value(2);
s1:=trim(copy(s1,1,2));
// Showmessage(s1);
if (s1='FU') or (s1='Un') then
s1:='0' ;
if (strtoint(s1)>=70) or ((strtoint(s1)<6)) then
if getsqldata('select count(*) as dd from ovst where vn="'+s2+'" and cur_dep="010" ')>0 then
begin
tc:=Tclientdataset.create(nil);
tc.data:=Hosxp_getdataset('select pt_priority from ovst where vn="'+s2+'"');
tc.open;
tc.edit;
tc['pt_priority']:='1';
tc.post;
hosxp_updatedelta(tc.delta,'select pt_priority from ovst where vn="'+s2+'"');
tc.free;
//showmessage('You Can Done...');
end;
end;
end.