[vqr msg=”https://wp.me/p9OlzO-BO”/]
เวอชั่นใหม่ๆ อาจจะเกิดกรณี Admit แล้ว LAB(OPD) ไม่ถูกโอนไป IPD ทำให้ Admin ต้องเข้าไปแก้ไขเอาเอง (อันนี้แล้วแต่ใครถนัด)
– ทั้งๆที่กำหนดให้โอนไปแล้วนะครับ ก็ยังไม่ถูกโอนไปครับ
– ดูหน้า LAB IPD ก็ไม่มา
– ผมเลยทำ vn script สำหรับโอน LAB(OPD) ไปยัง LAB(IPD) เฉพาะหน้าไปก่อน
(รอ. อ.MN แก้ไข หรือผมตกข่าว ท่านไหนทราบวิธีแก้ไขก็แจ้งด้วยนะครับ)
– มาดูขั้นตอนนะครับ เราจะใช้ script ที่ชื่อ SYS_IPT_FORM ในการแก้ไขปัญหานี้นะครับ
คำสั่งทั้งหมดประมาณนี้ครับ
var an,vn : string;
fonlineid,fvn,fcomputername,fdepartment,fuser:string;
cds:tclientdataset;
begin
cds :=tclientdataset.create(nil);
an:=GetGlobalValue(‘AN’);
//showmessage(an);
vn := getsqldata(‘select vn from ipt where an=”‘+an+'” ‘);
fonlineid:=get_onlineid;
fcomputername := getsqldata(‘select servername from onlineuser where onlineid=”‘+fonlineid+'”‘);
fdepartment := getsqldata(‘select department from onlineuser where onlineid=”‘+fonlineid+'”‘);
fuser := getsqldata(‘select kskloginname from onlineuser where onlineid=”‘+fonlineid+'”‘);
//check lab opd –> lab ipd
if (an <>”) and (vn <>”) then
begin
cds.close;
cds.data := hosxp_getdataset(‘select * from lab_head where vn=”‘+vn+'” ‘);
if cds.recordcount > 0 then
begin
while not cds.eof do
begin
cds.edit;
cds[‘vn’] := an;
cds[‘department’] := ‘IPD’;
cds.post;
cds.next;
end;
end;
if cds.changecount > 0 then
hosxp_updatedelta(cds.delta, ‘select * from lab_head where vn=”‘+vn+'” ‘);
end;
end;
– ในกรอบสีแดง จะเป็นการเช็คว่ามีข้อมูลไหม select * from lab_head where vn=”‘+vn+'”
ถ้ามี ก็ทำการวนลูปแก้ไข เฉพาะฟิวล์ vn ให้เก็บเป็นเลข an และ ฟิวล์ department ให้เก็บเป็น IPD แค่นี้ครับ
– เสร็จแล้ว ก็ไปทดสอบการทำงานกัน โดยจะอยู่หน้าจอ ลงผลวินิจฉัย/หัตถการ นะครับ เลือกคนไข้แล้วคลิกขวา จะมีเมนู ชื่อว่า Custom Form ก็จะเป็น script ที่ชื่อ SYS_IPT_FORM ก็จะทำงานตามคำสั่งที่เรากำหนดนะครับ
– จับ sql ดูก็จะรู้ว่ามันบันทึกไว้ที่ไหน
– ก็มั่นใจได้ว่าบันทึกทึกถูกตาราง ถูกฟิวล์ที่เรากำหนด ครับ
– เมื่อเปิดตาราง lab_head ดูก็จะรู้ว่าเปลี่ยนแล้ว ครับ เฉพาะ 2 ฟิวนี้เท่านั้น
– เมื่อเข้าไปดู lab ก็จะแสดง LAB IPD ให้ดูได้เลยครับ
– เสร็จแล้ว น่าจะไม่ยากสำหรับ Admin นะครับ ลองนำไปทดสอบในฐานสำรองดูนะครับ ถ้ามั่นใจแล้วค่อยไปใช้ฐานจริงได้
– หากเกิดกรณีนี้นะครับ ถ้าไม่เกิดปัญหากรณีนี้ก็ไม่ต้องทำนะครับ เป็น เทคนิค ที่ผมอยากจะแชร์ให้เพื่อนๆ ได้ลองเอาไปทดสอบดูนะครับ
– แล้วพบกันใหม่นะครับ
ขอบคุณมากๆ นะคะ