BMS-HOSxP Community
HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: kookkaija ที่ มิถุนายน 05, 2009, 09:30:22 AM
-
รายงานเบาหวานประจำเดือนทำไมไม่ตรง รบกวนดูให้หน่อยครับ
ปกติ ในช่วงเวลา 1 เดือนจะมีคนเจาะเลือด ประมาณ400-500 คน แต่รายงานมีน้อยจังครับ หรือเราต้องลงคำอะไรหรือเปล่าที่ cc จะให้ตัวรายงานดึงข้อมูล แบบว่า มาเจาะเลือดตรวจเบาหวาน
ขอบคุณมากครับ
-
:D ;Dมาเฝ้ารอคำชี้แนะครับ ;D :D
-
;) ไม่ทราบว่า User ลงหัตการให้ทุกรายหรือเปล่าครับ
-
คือรายงานตัวนี้โหลดมาจาก report borwse เห็นมีรายละเอียดดีมาก ก้เลยทดลองใช้ พอดีขึ้นระบบได้2เดือน
ยังไม่มีความรู้เรื่องรายงานเลยยังต้องอาศัย ช็อปปิ้งบน report borwse ไปก่อนครับ ตอนนี้ประคองให้ระบบนิ่งก่อน พอดีพยาบาลต้องการรายงานประจำเดือนด้วย
รายงานบางตัวก็ดีครับ ถูกใจ ตามความต้องการของผู้ใช้งานแต่ละงาน ก็มีอันนี้ครับที่ยังงง งง อยู่ครับ ก็เลยรบกวนทุกท่าน ในบ้านนี้ช่วยแนะนำครับ ;D ;D
-
:-\ คาดว่าน่าจะยังไม่ได้ลงทะเบียนโรคเรื้อรังในคลีนิกพิเศษให้ครบทุกคนนะครับ ลองเช็คดูอีกรอบนะครับ
-
คาดว่าน่าจะยังไม่ได้ลงทะเบียนโรคเรื้อรังในคลีนิกพิเศษให้ครบทุกคนนะครับ ลองเช็คดูอีกรอบนะครับ
ดูจากรายงานยอดผู้ลงทะเบียนมีแล้วครับ พันกว่าคน แล้วเดือนที่ผ่านมา คนไข้ที่มีชื่อลงทะเบียน ก็มาเจาะเลือด เป็นจะนวน หลายร้อยคนครับ (ลงทะเบียนก่อนที่คนไข้จะมารับบริการครับ)
ยังงัยขอบคุณท่าน Terminator มากครับ
-
post report ไว้ด้วยครับ พี่ไก่ เดี๋ยว อ.naj ตรวจสอบให้ครับ
;D ;D ;D
-
;D ;D ;D ผมว่าน่าจะอยู่ที่ฟอร์มรายงานหรือเปล่า เงื่อนไขอาจจะไม่ถูกต้อง ลองส่งขึ้นมาดูครับหรือไม่ก็ใช้
ป๋านาจดูให้ ขาว สวย หมวย เซ็กซ์ ฟันเหล็กก็จัดให้ไปแล้วทำงานหน่อยนะครับป๋านาจ 555555 ;D ;D ;D
-
ขาว สวย หมวย เซ็กซ์ ฟันเหล็ก
ใครก็ชอบ ,น้องกิจจา ช่วย สาวๆหน่อย
-
รายงานเบาหวานประจำเดือนทำไมไม่ตรง รบกวนดูให้หน่อยครับ
ปกติ ในช่วงเวลา 1 เดือนจะมีคนเจาะเลือด ประมาณ400-500 คน แต่รายงานมีน้อยจังครับ หรือเราต้องลงคำอะไรหรือเปล่าที่ cc จะให้ตัวรายงานดึงข้อมูล แบบว่า มาเจาะเลือดตรวจเบาหวาน
ขอบคุณมากครับ
รายงานค่า FBS ส่วนมากผมเขียนชอบดึงจากตาราง OPDสกรีน / ไม่ก็จากตารางLab รหัสน้ำตาล ครับ แต่ถ้าจะให้แน่ใจต้องดู Code รายงานที่คุณใช้ดึงรายงานว่าเขาเขียนดึงจากตารางอะไร และที่สำครับเจ้าหน้าที่ที่รายงาน FBS ได้บันทึกข้อมูลในตาราง OPDสกรีน หรือเปล่าครับ ถ้าไม่ลงก็จบกัน
-
;D :D รบกวนด้วยครับ
-
ต้องตรวจสอบที่ sql ที่ใช้เขียนครับ
-
// Old pt has blood fbs check
i1:=getsqldata('select count(o.hn) as cc from opdscreen o,ovst v where o.vn=v.vn and v.hn in (select hn from clinicmember '+
' where clinic="'+clinic+'" ) and v.vstdate between "'+ds1+'" and "'+ds2+'" and o.fbs>0 and v.hn not in (select hn from clinicmember '+
' where clinic="'+clinic+'" and regdate between "'+ds1+'" and "'+ds2+'" and new_case="Y") ');
InsertRecordx('6.0 ผู้ป่วยเบาหวานที่ได้รับการเจาะเลือด',i1,0);
จากรายงานเห็นได้ว่าข้อมูลดึงมาจาก OPDscreen ครับ และผมคิดว่ารายงานตัวเป็นของ อ.นาจ เป็นคนเขียน 60 % ดูจากสไตร์การเขียน ที่ข้อมูลไม่ครบหรือคาดเคลือนมาจากคนที่ทำคลินิกไม่บันทึนข้อมูล FBS ในหน้าซักประวัติ ตามรูป 1 หรือไม่ก็ทำ Lab Link ตามรูปที่ 2
-
unit MyIPDReport;
var d1,d2:tdatetime;
rc:integer;
function getsqlsubquerydatax(sql:string):string;
begin
result:='';
zquery.close;
zquery.sql.text:=sql;
zquery.open;
zquery.first;
while not zquery.eof do
begin
if result='' then result:=''''+zquery.fields[0].asstring+'''' else
result:=result+','''+zquery.fields[0].asstring+'''';
zquery.next;
end;
zquery.close;
if result='' then result:='''''';
end;
procedure InsertRecordx(name1:string;n1,n2:integer);
begin
setstatuslabel(name1);
rc:=rc+1;
fcds.close;
fcds.datarequest('select * from tempreport where id = "CUSTOM-CHRONIC1" limit 0 ');
fcds.open;
fcds.insert;
fcds['id']:='CUSTOM-CHRONIC1';
fcds['reportname']:='CUSTOM-CHRONIC1';
fcds['name1']:=name1;
fcds['num']:=rc;
fcds['num1']:=n1;
fcds['num2']:=n2;
fcds['date1']:=d1;
fcds['date2']:=d2;
fcds.post;
fcds.datarequest('select * from tempreport where id = "CUSTOM-CHRONIC1" limit 0 ');
applyupdate_fcds();
end;
procedure main;
var
people_distinct_count1 : integer;
people_count1 : integer;
ds1,ds2:string;
pttype_list1 : string;
pttype,pttype_name:string;
hospcode_list:string;
money1:currency;
i:integer;
clinic:string;
i1,i2:integer;
begin
//showmessage('à¡ÕèÂǡѺÃÒ§ҹ'+#13+'Custom OPD-NK2');
clinic:='';
clinic:= vartostr(getsqldata('select sys_value from sys_var where sys_name="dm_clinic_code"'));
if clinic='' then raise exception.create('Invalid dm clinic code');
rc:=0;
if not getdaterange() then exit;
d1:=date_result1();
d2:=date_result2();
// showmessage(formatdatetime('yyyy-mm-dd',d1)+' - '+
// formatdatetime('yyyy-mm-dd',d2));
ds1:=formatdatetime('yyyy-mm-dd',d1);
ds2:=formatdatetime('yyyy-mm-dd',d2);
zquery.sql.text:='delete from tempreport where id = ''CUSTOM-CHRONIC1'' ';
zquery.execsql;
i1:=getsqldata('select count(*) as cc from clinicmember where regdate between "'+ds1+'" and "'+ds2+'" '+
' and new_case="Y" and clinic="'+clinic+'"');
InsertRecordx('2.1 ¼Ùé»èÇ·Õèä´éÃѺ¡ÒÃÇÔ¹Ô¨©ÑÂâ´Âá¾·Âì·Õè¢Öé¹·ÐàºÕ¹ãËÁè·Ñé§ËÁ´',i1,0);
i1:=getsqldata('select count(*) as cc from clinicmember where '+
' hn not in (select hn from patient where deathday is not null) and clinic="'+clinic+'"');
InsertRecordx('2.2 ¼Ùé»èÇ·Õè¢Öé¹·ÐàºÕ¹·Ñé§ËÁ´',i1,0);
// IDDM
i1:=getsqldata('select count(hn) as cc from clinicmember '+
' where clinic="'+clinic+'" and subtype=1 and hn not in (select hn from patient where deathday is not null)');
InsertRecordx('3.1 ¨Ó¹Ç¹¼Ùé»èÇ·Õè¾Öè§ÍÔ¹«ÙÅÔ¹',i1,0);
// NIDDM
i1:=getsqldata('select count(hn) as cc from clinicmember '+
' where clinic="'+clinic+'" and (subtype=2 or subtype is NULL or subtype=0 ) and hn not in (select hn from patient where deathday is not null) ');
InsertRecordx('3.2 ¨Ó¹Ç¹¼Ùé»èÇ·ÕèäÁè¾Öè§ÍÔ¹«ÙÅÔ¹',i1,0);
// Visit
i1:=getsqldata('select count(distinct hn) as cc from ovst where hn in (select hn from clinicmember '+
' where clinic="'+clinic+'" ) and vstdate between "'+ds1+'" and "'+ds2+'" ');
i2:=getsqldata('select count(hn) as cc from ovst where hn in (select hn from clinicmember '+
' where clinic="'+clinic+'" ) and vstdate between "'+ds1+'" and "'+ds2+'" ');
InsertRecordx('4.0 ¼Ùé»èÇÂàºÒËÇÒ¹·ÕèÁÒÃѺºÃÔ¡ÒÃã¹Ê¶Ò¹ºÃÔ¡ÒÃÊÒ¸ÒÃ³ÊØ¢',i1,i2);
// Old pt has blood fbs check
i1:=getsqldata('select count(o.hn) as cc from opdscreen o,ovst v where o.vn=v.vn and v.hn in (select hn from clinicmember '+
' where clinic="'+clinic+'" ) and v.vstdate between "'+ds1+'" and "'+ds2+'" and o.fbs>0 and v.hn not in (select hn from clinicmember '+
' where clinic="'+clinic+'" and regdate between "'+ds1+'" and "'+ds2+'" and new_case="Y") ');
InsertRecordx('6.0 ¼Ùé»èÇÂàºÒËÇÒ¹·Õèä´éÃѺ¡ÒÃà¨ÒÐàÅ×Í´',i1,0);
i1:=getsqldata('select count(*) as cc from clinicmember where '+
' hn not in (select hn from patient where deathday is not null) and clinic="'+clinic+'" and '+
' hn in (select hn from clinic_cormobidity_list where clinic="'+clinic+'" and cormobidity=1) ');
InsertRecordx('8.1 ¨Ó¹Ç¹¼Ùé»èÇ·ÕèÁÕÀÒÇÐá·Ã¡«é͹·Ò§µÒ',i1,0);
i1:=getsqldata('select count(*) as cc from clinicmember where '+
' hn not in (select hn from patient where deathday is not null) and clinic="'+clinic+'" and '+
' hn in (select hn from clinic_cormobidity_list where clinic="'+clinic+'" and cormobidity=2) ');
InsertRecordx('8.2 ¨Ó¹Ç¹¼Ùé»èÇ·ÕèÁÕÀÒÇÐá·Ã¡«é͹·Ò§äµ',i1,0);
i1:=getsqldata('select count(*) as cc from clinicmember where '+
' hn not in (select hn from patient where deathday is not null) and clinic="'+clinic+'" and '+
' hn in (select hn from clinic_cormobidity_list where clinic="'+clinic+'" and cormobidity=3) ');
InsertRecordx('8.3 ¨Ó¹Ç¹¼Ùé»èÇ·ÕèÁÕÀÒÇÐá·Ã¡«é͹·Ò§Ãкº»ÃÐÊÒ·',i1,0);
i1:=getsqldata('select count(*) as cc from clinicmember where '+
' hn not in (select hn from patient where deathday is not null) and clinic="'+clinic+'" and '+
' hn in (select hn from clinic_cormobidity_list where clinic="'+clinic+'" and cormobidity=4) ');
InsertRecordx('8.4 ¨Ó¹Ç¹¼Ùé»èÇ·ÕèÁÕÀÒÇÐá·Ã¡«é͹·Ò§ËÅÍ´àÅ×Í´á´§',i1,0);
i1:=getsqldata('select count(*) as cc from clinicmember where '+
' hn not in (select hn from patient where deathday is not null) and clinic="'+clinic+'" and '+
' hn in (select hn from clinic_cormobidity_list where clinic="'+clinic+'" and cormobidity=5) ');
InsertRecordx('8.5 ¨Ó¹Ç¹¼Ùé»èÇ·ÕèÁÕÀÒÇÐá·Ã¡«é͹·Ò§µÑ´ÍÇÑÂÇÐ',i1,0);
i1:=getsqldata('select count(*) as cc from clinicmember where '+
' hn not in (select hn from patient where deathday is not null) and clinic="'+clinic+'" and '+
' hn in (select hn from clinic_cormobidity_list where clinic="'+clinic+'" and cormobidity=6) ');
InsertRecordx('8.6 ¨Ó¹Ç¹¼Ùé»èÇ·ÕèÁÕÀÒÇÐá·Ã¡«é͹·Ò§ÁÒ¡¡ÇèÒ˹Öè§ÍÂèÒ§',i1,0);
i1:=getsqldata('select count(*) as cc from clinicmember where '+
' hn not in (select hn from patient where deathday is not null) and clinic="'+clinic+'" and '+
' hn in (select hn from clinic_cormobidity_list where clinic="'+clinic+'" and cormobidity=7) ');
InsertRecordx('8.7 ¨Ó¹Ç¹¼Ùé»èÇ·ÕèÁÕÀÒÇÐá·Ã¡«é͹·Ò§Í×è¹æ',i1,0);
i1:=getsqldata('select count(*) as cc from clinicmember where '+
' hn in (select hn from patient where deathday between "'+ds1+'" and "'+ds2+'" ) and clinic="'+clinic+'"');
InsertRecordx('9.0 ¼Ùé»èÇÂàºÒËÇÒ¹ã¹à¢µÃѺ¼Ô´ªÍº·ÕèàÊÕªÕÇÔµ',i1,0);
setstatuslabel('done.');
end;
end.
-
รายงานค่า FBS ส่วนมากผมเขียนชอบดึงจากตาราง OPDสกรีน /
ขอบคุณท่าน neo มากครับ ผมลองลงผลย้อนหลัง จากตารางที่ opd สกรีน เริ่มมีความหวังครับ ยอดเริ่มขึ้นแล้วครับ
ขอบคุณทุกท่านที่ช่วยแนะนำครับ
-
// Old pt has blood fbs check
i1:=getsqldata('select count(o.hn) as cc from opdscreen o,ovst v where o.vn=v.vn and v.hn in (select hn from clinicmember '+
' where clinic="'+clinic+'" ) and v.vstdate between "'+ds1+'" and "'+ds2+'" and o.fbs>0 and v.hn not in (select hn from clinicmember '+
' where clinic="'+clinic+'" and regdate between "'+ds1+'" and "'+ds2+'" and new_case="Y") ');
InsertRecordx('6.0 ผู้ป่วยเบาหวานที่ได้รับการเจาะเลือด',i1,0);
จากรายงานเห็นได้ว่าข้อมูลดึงมาจาก OPDscreen ครับ และผมคิดว่ารายงานตัวเป็นของ อ.นาจ เป็นคนเขียน 60 % ดูจากสไตร์การเขียน ที่ข้อมูลไม่ครบหรือคาดเคลือนมาจากคนที่ทำคลินิกไม่บันทึนข้อมูล FBS ในหน้าซักประวัติ ตามรูป 1 หรือไม่ก็ทำ Lab Link ตามรูปที่ 2
อะไรจะขนาดนั้นครับ Neo รู้ขนาด Style การเขียน ;) ;) ;) ;) ;) ;) ;) ;) จริงๆก็อยากทราบเหมือนกันว่า Style การเขียนเป็นยังงัย เพราะเท่าที่ผมเขียนรายงานมาก็ประเภทมวยวัด ถนัดแต่ Copy ของ อ.M์์N เอาปรับใช้ครับ แต่ก็ให้กำลังใจ ป๋าไก่ Admin รพ.ดอนตูม
สู้ต่อไป ทาเคชิ ;D ;D ;D
จั๋งซี้มันต้องถอน ;D ;D ;D ;D
-
รายงานค่า FBS ส่วนมากผมเขียนชอบดึงจากตาราง OPDสกรีน /
ขอบคุณท่าน neo มากครับ ผมลองลงผลย้อนหลัง จากตารางที่ opd สกรีน เริ่มมีความหวังครับ ยอดเริ่มขึ้นแล้วครับ
ขอบคุณทุกท่านที่ช่วยแนะนำครับ
ไม่ทราบว่าใช้ระบบ lab หรือยังครับ
ลงผม FBS ที่ห้องแลบ
-
// Old pt has blood fbs check
i1:=getsqldata('select count(o.hn) as cc from opdscreen o,ovst v where o.vn=v.vn and v.hn in (select hn from clinicmember '+
' where clinic="'+clinic+'" ) and v.vstdate between "'+ds1+'" and "'+ds2+'" and o.fbs>0 and v.hn not in (select hn from clinicmember '+
' where clinic="'+clinic+'" and regdate between "'+ds1+'" and "'+ds2+'" and new_case="Y") ');
InsertRecordx('6.0 ผู้ป่วยเบาหวานที่ได้รับการเจาะเลือด',i1,0);
จากรายงานเห็นได้ว่าข้อมูลดึงมาจาก OPDscreen ครับ และผมคิดว่ารายงานตัวเป็นของ อ.นาจ เป็นคนเขียน 60 % ดูจากสไตร์การเขียน ที่ข้อมูลไม่ครบหรือคาดเคลือนมาจากคนที่ทำคลินิกไม่บันทึนข้อมูล FBS ในหน้าซักประวัติ ตามรูป 1 หรือไม่ก็ทำ Lab Link ตามรูปที่ 2
อะไรจะขนาดนั้นครับ Neo รู้ขนาด Style การเขียน ;) ;) ;) ;) ;) ;) ;) ;) จริงๆก็อยากทราบเหมือนกันว่า Style การเขียนเป็นยังงัย เพราะที่ผมเขียนรายงานมาก็ประเภทมวดวัด ถนัดแต่ Copy ของ อ.M์์N เอาปรับใช้ครับ แต่ก็ให้กำลังใจ ป๋าไก่ Admin รพ.ดอนตูม
สู้ต่อไป ทาเคชิ ;D ;D ;D
จั๋งซี้มันต้องถอน ;D ;D ;D ;D
ที่กล่าวอย่างนั้นเพราะ ผมเห็นอ.นาจ ชอบเขียนคำสั่งเก็บไว้ที่ scrip ปาสคาล ;D ;D ;D
-
ตอนนี้ ตรวจสอบไปที่ lab ling ปรากฎว่า ห้องlab ทำ form lab ที่มี ค่า FBS ซ้ำกันจำนวน 4 ฟอร์ม
ทั้ง 4 ฟอร์มก็ต้องใช้งาน ช่วยแนะนำวิธการแก้ไข ตามลำดับด้วยครับ ขอบคุณครับ ;D :D
-
สร้างฟอร์มสั่ง lab ใหม่ใช้เจ้าหน้าที่คลินิกใชเฉพาะในคลินิกเบาหวานครับ หรือไม่ก็ให้เจ้าหน้าทีเลือกใช้ฟอร์มใดฟอร์มหนึ่ง