ผู้เขียน หัวข้อ: ดึงรายงาน ตอบกลับ refer ค่ะ  (อ่าน 20104 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ iisomi

  • Jr. Member
  • **
  • กระทู้: 59
  • Respect: +1
    • ดูรายละเอียด
ดึงรายงาน ตอบกลับ refer ค่ะ
« เมื่อ: พฤศจิกายน 05, 2009, 11:24:05 AM »
0
หนูต้องการดึงเป็นฟอร์มใบ refer ตอบกลับคะเพื่อดึง ชื่อนามสกุล, ผลชัยสูตรที่สำคัญ , การรักษาที่ให้ของผู้ป่วยออกมาแต่ว่าเมื่อสั่งปริ้นแล้วไม่ออกตามรายชื่อผู้ป่วยที่สั่งงค่ะ ออกมาช่อเดิมตลอดเลยค่ะอยากจะทราบว่าต้องทำอย่างไรค่ะแล้วการกำหนด ค่ parameter มีการกำหนอดอย่างไรต้องเอาอะไรมากำหนดค่ะ

select o.vn,o.refer_date,o.hospcode,o.refer_number , o.lab_text , o.treatment_text , o.confirm_diagnosis,
concat(p.pname,p.fname,'     ',p.lname) as ptname
from referout  o
left outer join patient p on p.hn=o.hn
where o.refer_number=1


รบกวนอาจารย์ทุกท่านด้วยนะค่ะหนูเพิ่งเข้ามาทำงานที่ โรงพยาบาลบางปลาม้าจังหวัดสุพรรณบุรีค่ะ


« แก้ไขครั้งสุดท้าย: พฤศจิกายน 05, 2009, 17:35:57 PM โดย iisomi »
รพช.บางปลาม้า จ.สุพรรณบุรี
E-Mail   best_life_123@hotmail.com


ขอบคุณอาจารย์และพี่ๆทุกท่านที่เมื่อยามมีปัญหาคอยตอบและให้ความรู้ตลอดค่ะ
"สักวันจะต้องรู้มากกว่าวันนี้ วันพรุ่งนี้ต้องเป็นคนเก่งกว่าวันนี้"

ออฟไลน์ Khuad

  • Hero Member
  • *****
  • กระทู้: 3,778
  • .. นางฟ้า ตัวไม่น้อยแล้ว ..
  • Respect: +10
    • ดูรายละเอียด
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #1 เมื่อ: พฤศจิกายน 05, 2009, 12:32:22 PM »
0

... คำสั่งที่แนบมา เป็นคำสั่งของแบบรายงานหรือเปล่าครับ

   แล้วสั่งพิมพ์จากตรงใหน หรือเป็น Custom Report

   ถ้าสามารถแนบรูปเพื่ออธิบายปัญหาที่พบด้วยก็ดีนะครับ ... :D ....
โรงพยาบาลวังน้อย   พระนครศรีอยุธยา ( รพช.30 เตียง )
Server : ProLiant DL120G6  Xeon X3450  RDIMM 12 Gb  2x256GB SSD Raid 1
OS : CentOS 6.3  DB : Percona 5.5.21

Slave : ProLiant ML110G6  Xeon X3430  UDIMM 8 Gb  2x300GB SAS Raid 1
OS : CentOS 6.3  DB : Percona 5.5.32

HOSxP version  3.57.xx.xx    เริ่มระบบ  เมษายน 2549

ออฟไลน์ iisomi

  • Jr. Member
  • **
  • กระทู้: 59
  • Respect: +1
    • ดูรายละเอียด
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #2 เมื่อ: พฤศจิกายน 05, 2009, 17:37:25 PM »
0
เป็นคำสั่งที่เขียนเพื่อให้รายงานออกมาอ่ะค่ะ ตามรูปค่ะคือสั่งชื่อคนๆหนึ่งแต่ไม่ออกมาตามที่สั่งค่ะ
กลับออกรายชื่อคนอื่น
รพช.บางปลาม้า จ.สุพรรณบุรี
E-Mail   best_life_123@hotmail.com


ขอบคุณอาจารย์และพี่ๆทุกท่านที่เมื่อยามมีปัญหาคอยตอบและให้ความรู้ตลอดค่ะ
"สักวันจะต้องรู้มากกว่าวันนี้ วันพรุ่งนี้ต้องเป็นคนเก่งกว่าวันนี้"

ออฟไลน์ Khuad

  • Hero Member
  • *****
  • กระทู้: 3,778
  • .. นางฟ้า ตัวไม่น้อยแล้ว ..
  • Respect: +10
    • ดูรายละเอียด
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #3 เมื่อ: พฤศจิกายน 05, 2009, 17:44:32 PM »
0
..  FORM-OPD-REFER-REPLY   
   
    ลองแก้ไขคำสั่งตรง  where  จาก refer_number เป็น vn  แล้วใช้ vn เป็น parameter ดูนะครับ  ...  :D ....
โรงพยาบาลวังน้อย   พระนครศรีอยุธยา ( รพช.30 เตียง )
Server : ProLiant DL120G6  Xeon X3450  RDIMM 12 Gb  2x256GB SSD Raid 1
OS : CentOS 6.3  DB : Percona 5.5.21

Slave : ProLiant ML110G6  Xeon X3430  UDIMM 8 Gb  2x300GB SAS Raid 1
OS : CentOS 6.3  DB : Percona 5.5.32

HOSxP version  3.57.xx.xx    เริ่มระบบ  เมษายน 2549

doramon

  • บุคคลทั่วไป
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #4 เมื่อ: พฤศจิกายน 05, 2009, 17:47:46 PM »
0
เป็นคำสั่งที่เขียนเพื่อให้รายงานออกมาอ่ะค่ะ ตามรูปค่ะคือสั่งชื่อคนๆหนึ่งแต่ไม่ออกมาตามที่สั่งค่ะ
กลับออกรายชื่อคนอื่น

ส่งฟอร์ม ขึ้นมาให้ อ.ขวด ทำให้ก็ได้ครับ
 ;D

ออฟไลน์ Khuad

  • Hero Member
  • *****
  • กระทู้: 3,778
  • .. นางฟ้า ตัวไม่น้อยแล้ว ..
  • Respect: +10
    • ดูรายละเอียด
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #5 เมื่อ: พฤศจิกายน 05, 2009, 17:49:07 PM »
0

ส่งฟอร์ม ขึ้นมาให้ อ.ขวด ทำให้ก็ได้ครับ
 ;D


...  ;D  ;D  ;D ฮี่ ฮี่ ฮี่  ;D  ;D  ;D ....
โรงพยาบาลวังน้อย   พระนครศรีอยุธยา ( รพช.30 เตียง )
Server : ProLiant DL120G6  Xeon X3450  RDIMM 12 Gb  2x256GB SSD Raid 1
OS : CentOS 6.3  DB : Percona 5.5.21

Slave : ProLiant ML110G6  Xeon X3430  UDIMM 8 Gb  2x300GB SAS Raid 1
OS : CentOS 6.3  DB : Percona 5.5.32

HOSxP version  3.57.xx.xx    เริ่มระบบ  เมษายน 2549

ออฟไลน์ iisomi

  • Jr. Member
  • **
  • กระทู้: 59
  • Respect: +1
    • ดูรายละเอียด
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #6 เมื่อ: พฤศจิกายน 05, 2009, 18:51:49 PM »
0
ขอบคุณอาจารย์ทุกๆท่านค่ะเดียวพรุ่งนี้จะไปลองดูค่ะ
ผลยังไงจะมารบกวนอีกนะค่ะ...

อีกคำถามนะค่ะอันนี้งงสุดๆค่ะ จากรายงานCUSTOM-แบบรายการค่ารักษาพยาบาลผู้ป่วยนอก ประกันสังคม (นค 1)  มีคำสั่งดังนี้  select t.* from tempreport t

 where t.id = "CUSTOM-NK1OPD-PK"  หนูอยากทราบว่าคำสั่งเรียกCUSTOM-NK1OPD-PK จากไหนค่ะตามรูป รหัสแพทย์ไม่ขึ้นอ่ะค่ะเท่าที่เข้าใจน่าจะในตารางที่เรียกมาดูแล้วไม่มีข้อมูลไม่ทราบว่าต้องแก้ไขอย่างไรให้รหัสแพทย์ขึ้นมาด้วยค่ะ
รพช.บางปลาม้า จ.สุพรรณบุรี
E-Mail   best_life_123@hotmail.com


ขอบคุณอาจารย์และพี่ๆทุกท่านที่เมื่อยามมีปัญหาคอยตอบและให้ความรู้ตลอดค่ะ
"สักวันจะต้องรู้มากกว่าวันนี้ วันพรุ่งนี้ต้องเป็นคนเก่งกว่าวันนี้"

ออฟไลน์ เกื้อกูล ครับ..

  • Hero Member
  • *****
  • กระทู้: 12,611
  • Respect: +169
    • ดูรายละเอียด
    • โรงพยาบาลปากท่อ
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #7 เมื่อ: พฤศจิกายน 05, 2009, 22:19:45 PM »
0
เป็นคำสั่งที่เขียนเพื่อให้รายงานออกมาอ่ะค่ะ ตามรูปค่ะคือสั่งชื่อคนๆหนึ่งแต่ไม่ออกมาตามที่สั่งค่ะ
กลับออกรายชื่อคนอื่น

ส่งฟอร์ม ขึ้นมาให้ อ.ขวด ทำให้ก็ได้ครับ
 ;D
 
คำถามใหม่  แต่คำตอบเดิมครับ    ส่งฟอร์มขึ้นมา  ให้ อ.ขวด แก้ไขให้ได้เลยครับ ฮิ  ฮิ.... ;D
Implement  HOSxP  Start 2548 ---> NOW!
Station : 140 Client   V.3 Version  3.67.7.8
Server  : CENTOS 7 +MySQL maria 10.x.x

ออฟไลน์ Khuad

  • Hero Member
  • *****
  • กระทู้: 3,778
  • .. นางฟ้า ตัวไม่น้อยแล้ว ..
  • Respect: +10
    • ดูรายละเอียด
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #8 เมื่อ: พฤศจิกายน 05, 2009, 22:43:47 PM »
0

อีกคำถามนะค่ะอันนี้งงสุดๆค่ะ จากรายงานCUSTOM-แบบรายการค่ารักษาพยาบาลผู้ป่วยนอก ประกันสังคม (นค 1)  มีคำสั่งดังนี้  select t.* from tempreport t

 where t.id = "CUSTOM-NK1OPD-PK"  หนูอยากทราบว่าคำสั่งเรียกCUSTOM-NK1OPD-PK จากไหนค่ะ



... อันนี้เป็นลักษณะของรายงานอีกรูปแบบนึงครับ ที่จะมีการประมวลผลเอาข้อมูลไปเก็บไว้ที่ตารางชั่วคราว(tempreport)ก่อน แล้วเอาข้อมูลที่ได้ไปแสดงในฟอร์มรายงานอีกที่   

    รายงานแบบนี้ผมไม่ค่อยถนัดเท่าไรครับ ความสามารถยังไม่ถึงน่ะครับ ต้องเป็นระดับเซียนอย่าง  อ.นาจ, อ.armds, อ.SrwooD  แล้วครับ ..  :D ....





ตามรูป รหัสแพทย์ไม่ขึ้นอ่ะค่ะเท่าที่เข้าใจน่าจะในตารางที่เรียกมาดูแล้วไม่มีข้อมูลไม่ทราบว่าต้องแก้ไขอย่างไรให้รหัสแพทย์ขึ้นมาด้วยค่ะ


... คงต้องแนบตัวรายงานที่ใช้อยู่มาด้วยน่ะครับ   เพราะไม่รู้ว่าใน Script คำสั่ง เขียนไว้อย่างไรบ้าง ...  :D ...
« แก้ไขครั้งสุดท้าย: พฤศจิกายน 05, 2009, 22:50:54 PM โดย Khuad »
โรงพยาบาลวังน้อย   พระนครศรีอยุธยา ( รพช.30 เตียง )
Server : ProLiant DL120G6  Xeon X3450  RDIMM 12 Gb  2x256GB SSD Raid 1
OS : CentOS 6.3  DB : Percona 5.5.21

Slave : ProLiant ML110G6  Xeon X3430  UDIMM 8 Gb  2x300GB SAS Raid 1
OS : CentOS 6.3  DB : Percona 5.5.32

HOSxP version  3.57.xx.xx    เริ่มระบบ  เมษายน 2549

ออฟไลน์ asawincyber

  • Hero Member
  • *****
  • กระทู้: 1,011
  • สู้ต่อไป ทาเกชิ
  • Respect: 0
    • ดูรายละเอียด
    • http://www.okhospital.net
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #9 เมื่อ: พฤศจิกายน 05, 2009, 22:53:14 PM »
0
 ;D
เสน่ห์  คงมูล (เอก)
โรงพยาบาลองครักษ์ อ.องครักษ์ จ.นครนายก
HOSxP  3.56.2.26  Activate License
Server : DELL T710 Xeon 5500 Ram 64Gb (16 X 4GB) 10600R Centos 5.5 64 bit MySQL 5.5.11 percona By อ.อ็อด
Server : IBM X3400 2.4 Ghz. Ram 4Gb. Centos 5.5 64 bit MySQL 5.5.11 percona By อ.อ็อด

ออฟไลน์ iisomi

  • Jr. Member
  • **
  • กระทู้: 59
  • Respect: +1
    • ดูรายละเอียด
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #10 เมื่อ: พฤศจิกายน 06, 2009, 08:12:07 AM »
0
unit MyIPDReport;

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 main;
var d1,d2:tdatetime;
people_distinct_count1 : integer;
people_count1 : integer;
ds1,ds2:string;
pttype_list1 : string;
pttype,pttype_name:string;
hospcode_list:string;
money1:currency;
i:integer;
occu:string;

begin
   showmessage('à¡ÕèÂǡѺÃÒ§ҹ'+#13+'Custom OPD-NK2-PK');

   pttype:= getpickuplist('select name from pttype where isuse="Y" order by name');
   if pttype='' then exit;

   pttype_name:=pttype;

   pttype:=getsqldata('select pcode from pttype where name="'+pttype+'"');
   if pttype='UA' then pttype:='UC';
   if pttype='UB' then pttype:='UC';

   if pttype='UC' then pttype_name:=getsqlsubquerydata('select name from pttype where pcode in ("UC","UA","UB")') else
    pttype_name := getsqlsubquerydata('select name from pttype where pcode="'+pttype+'"');

   showmessage('use pcode = '+pttype);

   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);


   hospcode_list:=getsqlsubquerydata('select distinct hospmain from vn_stat where pcode = "'+pttype+'" and vstdate between "'+ds1+'" and "'+ds2+'" ');
   hospcode_list := getpickuplist('select concat(hospcode,":",hosptype," ",name) as name from hospcode where hospcode in ('+
     hospcode_list+') ');

   zquery.sql.text:='delete from tempreport where id = "CUSTOM-NK1OPD-PK" ';
   zquery.execsql;
   fcds.close;
   fcds.datarequest('select * from tempreport where id = "CUSTOM-NK1OPD-PK" ');
   fcds.open;

   fcds2.close;
   if hospcode_list='' then
   fcds2.datarequest('select * from vn_stat where pcode = "'+pttype+'" and vstdate between "'+ds1+'" and "'+ds2+'" order by vn ')
   else
   fcds2.datarequest('select * from vn_stat where pcode = "'+pttype+'" and vstdate between "'+ds1+'" and "'+ds2+'" '+
   ' and hospmain="'+copy(hospcode_list,1,5)+'" order by vn ');
   fcds2.open;
   setstatuslabel('Open result : '+inttostr(fcds2.recordcount)+' Records');
   fcds2.first;
   i:=0;
   while not fcds2.eof do
   begin
    i:=i+1;
    setprogressbar(i,fcds2.recordcount);
     fcds.insert;
   fcds['id']:='CUSTOM-NK1OPD-PK';
   fcds['reportname']:='CUSTOM-NK1OPD-PK';
  // fcds['name']:=fcds2['vn'];
   fcds['name1']:=pttype_name;

   fcds['name2']:=getsqldata('select concat(pname,fname,"  ",lname) as name from patient where hn="'+
      fcds2['hn']+'"');
   fcds['name3']:=fcds2['hn'];
   fcds['name4']:=fcds2['pttypeno'];
   fcds['date3']:=fcds2['pttype_expire'];
   fcds['name5']:=getsqldata('select concat(name,", ",hosptype) as name from hospcode where hospcode="'+
     fcds2['hospmain']+'"');

   occu:=getsqldata('select occupation from patient where hn="'+fcds2['hn']+'"');
   if occu<>'' then
   occu:=getsqldata('select name from occupation where occupation="'+occu+'"');

   fcds['name6']:=occu;
   if fcds2['sex']='1' then
     fcds['name7']:='&ordf;' else
     fcds['name7']:='&shy;';
   fcds['num1']:=fcds2['age_y'];
   fcds['name8']:=fcds2['pdx']+' '+fcds2['dx0'];
   fcds['name9']:=fcds2['op0']+' '+fcds2['op1'];
   fcds['name']:=getsqldata('select i_refer_number from ovst where vn="'+fcds2['vn']+'"');

   // finance summary

   fcds['mon1']:=fcds2['inc01'];
   fcds['mon2']:=fcds2['inc02'];
   fcds['mon3']:=fcds2['inc03'];
   fcds['mon4']:=fcds2['inc04'];
   fcds['mon5']:=fcds2['inc05'];
   fcds['mon6']:=fcds2['inc06'];
   fcds['mon7']:=fcds2['inc13'];
   fcds['mon8']:=fcds2['inc07'];
   fcds['mon9']:=fcds2['inc12'];
   fcds['mon10']:=fcds2['inc14']+fcds2['inc08']+fcds2['inc09']+fcds2['inc10']+
                  fcds2['inc11']+fcds2['inc15']+
                  fcds2['inc16']+fcds2['inc17'];
   fcds['mon11']:=fcds2['income'];


   fcds['date1']:=d1;
   fcds['date2']:=d2;
   fcds['date4']:=fcds2['vstdate'];
   fcds.post;
     fcds2.next;
   end;

   fcds.datarequest('select * from tempreport where id = "CUSTOM-NK1OPD-PK" ');
   applyupdate_fcds();

end;

end.



ขอบคุณอาจารย์ทุกท่านค่ะเพิ่งรู้ค่ะว่าคำสั่งอยู่ตรงนี้แต่พยายามไล่ดูแล้วก็ไม่เข้าใจสักทีทำไมรหัสแพทญืไม่ออกค่ะ รบกวนด้วยนะค่ะ
รพช.บางปลาม้า จ.สุพรรณบุรี
E-Mail   best_life_123@hotmail.com


ขอบคุณอาจารย์และพี่ๆทุกท่านที่เมื่อยามมีปัญหาคอยตอบและให้ความรู้ตลอดค่ะ
"สักวันจะต้องรู้มากกว่าวันนี้ วันพรุ่งนี้ต้องเป็นคนเก่งกว่าวันนี้"

ออฟไลน์ Khuad

  • Hero Member
  • *****
  • กระทู้: 3,778
  • .. นางฟ้า ตัวไม่น้อยแล้ว ..
  • Respect: +10
    • ดูรายละเอียด
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #11 เมื่อ: พฤศจิกายน 09, 2009, 10:34:12 AM »
0

ขอบคุณอาจารย์ทุกท่านค่ะเพิ่งรู้ค่ะว่าคำสั่งอยู่ตรงนี้แต่พยายามไล่ดูแล้วก็ไม่เข้าใจสักทีทำไมรหัสแพทญืไม่ออกค่ะ รบกวนด้วยนะค่ะ


... ไม่รู้ว่าตอบช้าไปหรือเปล่า  ช่วงนี้ลาพักผ่อนครับ  ;D  ;D  ;D ....


    ลอง copy คำสั่งข้างล่าง ไปแทนที่ script เดิมของรายงานดูนะครับ  ผมเพิ่มข้อมูลในตาราง tempreport ให้อีก 4 ตัว(สีน้ำเงิน) เอาไปใช้ในรายงานได้เลยครับ

    name10  =   vn
    name11  =   รหัสแพทย์
    name12  =   ชื่อเจ้าของรหัสแพทย์
    name13  =   เลขที่ใบประกอบวิชาชีพ

   ซึ่งข้อมูลแพทย์อันนี้ผมเอามาจาก doctor ในตาราง ovst นะครับ 
   แต่ถ้าต้องการใช้ข้อมูลแพทย์จากตารางอื่น  ก็ใช้การวาง variable ในรายงานแล้วใส่คำสั่งไปเลยก็ได้ครับ โดยใช้ vn เป็นเงื่อนไข  แล้วใช้ประโยชน์จากข้อมูล vn(name10) ที่เพิ่มเข้าไปใหม่ครับ  เช่น
 
  where vn = "'DBPipeline['name10']'"

  ลองดูนะครับ ...  :D ....


-------------------------------------------------------------------------------------------------------------

unit MyIPDReport;

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 main;
var d1,d2:tdatetime;
people_distinct_count1 : integer;
people_count1 : integer;
ds1,ds2:string;
pttype_list1 : string;
pttype,pttype_name:string;
hospcode_list:string;
money1:currency;
i:integer;
occu:string;

begin

   pttype:= getpickuplist('select name from pttype where isuse="Y" order by name');
   if pttype='' then exit;

   pttype_name:=pttype;

   pttype:=getsqldata('select pcode from pttype where name="'+pttype+'"');
   if pttype='UA' then pttype:='UC';
   if pttype='UB' then pttype:='UC';

   if pttype='UC' then pttype_name:=getsqlsubquerydata('select name from pttype where pcode in ("UC","UA","UB")') else
    pttype_name := getsqlsubquerydata('select name from pttype where pcode="'+pttype+'"');

   showmessage('use pcode = '+pttype);

   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);


   hospcode_list:=getsqlsubquerydata('select distinct hospmain from vn_stat where pcode = "'+pttype+'" and vstdate between "'+ds1+'" and "'+ds2+'" ');
   hospcode_list := getpickuplist('select concat(hospcode,":",hosptype," ",name) as name from hospcode where hospcode in ('+
     hospcode_list+') ');

   zquery.sql.text:='delete from tempreport where id = "CUSTOM-NK1OPD-PK" ';
   zquery.execsql;
   fcds.close;
   fcds.datarequest('select * from tempreport where id = "CUSTOM-NK1OPD-PK" ');
   fcds.open;

   fcds2.close;
   if hospcode_list='' then
   fcds2.datarequest('select * from vn_stat where pcode = "'+pttype+'" and vstdate between "'+ds1+'" and "'+ds2+'" order by vn ')
   else
   fcds2.datarequest('select * from vn_stat where pcode = "'+pttype+'" and vstdate between "'+ds1+'" and "'+ds2+'" '+
   ' and hospmain="'+copy(hospcode_list,1,5)+'" order by vn ');
   fcds2.open;
   setstatuslabel('Open result : '+inttostr(fcds2.recordcount)+' Records');
   fcds2.first;
   i:=0;
   while not fcds2.eof do
   begin
    i:=i+1;
    setprogressbar(i,fcds2.recordcount);
     fcds.insert;
   fcds['id']:='CUSTOM-NK1OPD-PK';
   fcds['reportname']:='CUSTOM-NK1OPD-PK';
   fcds['name']:=getsqldata('select i_refer_number from ovst where vn="'+fcds2['vn']+'"');
   fcds['name1']:=pttype_name;
   fcds['name2']:=getsqldata('select concat(pname,fname,"  ",lname) as name from patient where hn="'+
      fcds2['hn']+'"');
   fcds['name3']:=fcds2['hn'];
   fcds['name4']:=fcds2['pttypeno'];
   fcds['date3']:=fcds2['pttype_expire'];
   fcds['name5']:=getsqldata('select concat(name,", ",hosptype) as name from hospcode where hospcode="'+
     fcds2['hospmain']+'"');

   occu:=getsqldata('select occupation from patient where hn="'+fcds2['hn']+'"');
   if occu<>'' then
   occu:=getsqldata('select name from occupation where occupation="'+occu+'"');

   fcds['name6']:=occu;
   if fcds2['sex']='1' then
     fcds['name7']:='&ordf;' else
     fcds['name7']:='&shy;';
   fcds['num1']:=fcds2['age_y'];
   fcds['name8']:=fcds2['pdx']+' '+fcds2['dx0'];
   fcds['name9']:=fcds2['op0']+' '+fcds2['op1'];
   fcds['name10']:=fcds2['vn'];
   fcds['name11']:=getsqldata('select doctor from ovst where vn = "'+fcds2['vn']+'"');
   fcds['name12']:=getsqldata('select d.name from ovst o,doctor d where o.doctor = d.code  and o.vn = "'+fcds2['vn']+'"');
   fcds['name13']:=getsqldata('select d.licenseno from ovst o,doctor d where o.doctor = d.code  and o.vn = "'+fcds2['vn']+'"');


   // finance summary

   fcds['mon1']:=fcds2['inc01'];
   fcds['mon2']:=fcds2['inc02'];
   fcds['mon3']:=fcds2['inc03'];
   fcds['mon4']:=fcds2['inc04'];
   fcds['mon5']:=fcds2['inc05'];
   fcds['mon6']:=fcds2['inc06'];
   fcds['mon7']:=fcds2['inc13'];
   fcds['mon8']:=fcds2['inc07'];
   fcds['mon9']:=fcds2['inc12'];
   fcds['mon10']:=fcds2['inc14']+fcds2['inc08']+fcds2['inc09']+fcds2['inc10']+
                  fcds2['inc11']+fcds2['inc15']+
                  fcds2['inc16']+fcds2['inc17'];
   fcds['mon11']:=fcds2['income'];


   fcds['date1']:=d1;
   fcds['date2']:=d2;
   fcds['date4']:=fcds2['vstdate'];
   fcds.post;
     fcds2.next;
   end;

   fcds.datarequest('select * from tempreport where id = "CUSTOM-NK1OPD-PK" ');
   applyupdate_fcds();

end;

end.

-------------------------------------------------------------------------------------------------------------
โรงพยาบาลวังน้อย   พระนครศรีอยุธยา ( รพช.30 เตียง )
Server : ProLiant DL120G6  Xeon X3450  RDIMM 12 Gb  2x256GB SSD Raid 1
OS : CentOS 6.3  DB : Percona 5.5.21

Slave : ProLiant ML110G6  Xeon X3430  UDIMM 8 Gb  2x300GB SAS Raid 1
OS : CentOS 6.3  DB : Percona 5.5.32

HOSxP version  3.57.xx.xx    เริ่มระบบ  เมษายน 2549

ออฟไลน์ iisomi

  • Jr. Member
  • **
  • กระทู้: 59
  • Respect: +1
    • ดูรายละเอียด
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #12 เมื่อ: พฤศจิกายน 10, 2009, 10:57:48 AM »
0
ขอบคุณอาจารย์มากค่ะที่คอยตอบคำถามให้ค่ะ.....

ใช้ได้แล้วค่ะแต่ว่าเพศขึ้นเป็นอักษรแปลกๆค่ะจะพยายามแก้ไขต่อไปค่ะ

ขอบคุณอาจารย์มากจริงๆค่ะ
รพช.บางปลาม้า จ.สุพรรณบุรี
E-Mail   best_life_123@hotmail.com


ขอบคุณอาจารย์และพี่ๆทุกท่านที่เมื่อยามมีปัญหาคอยตอบและให้ความรู้ตลอดค่ะ
"สักวันจะต้องรู้มากกว่าวันนี้ วันพรุ่งนี้ต้องเป็นคนเก่งกว่าวันนี้"

ออฟไลน์ Khuad

  • Hero Member
  • *****
  • กระทู้: 3,778
  • .. นางฟ้า ตัวไม่น้อยแล้ว ..
  • Respect: +10
    • ดูรายละเอียด
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #13 เมื่อ: พฤศจิกายน 10, 2009, 12:59:56 PM »
0

ใช้ได้แล้วค่ะแต่ว่าเพศขึ้นเป็นอักษรแปลกๆค่ะจะพยายามแก้ไขต่อไปค่ะ


... ต้องขอโทษด้วนนะครับลืมดูไปว่าใน script มีให้แสดงเป็นภาษาไทยอยู่อีก ...

... คุณ iisomi ไปแก้ที่ script ของรายงานเลยก็ได้ครับ  ไปดูตรงแถวๆ ที่ผมเพิ่มไปให้  ตรงส่วนของ name7 ครับ

   fcds['name6']:=occu;
   if fcds2['sex']='1' then
     fcds['name7']:='  &ordf;  ' else
     fcds['name7']:='  &shy;  ';
   fcds['num1']:=fcds2['age_y'];
   fcds['name8']:=fcds2['pdx']+' '+fcds2['dx0'];
   fcds['name9']:=fcds2['op0']+' '+fcds2['op1'];
   fcds['name10']:=fcds2['vn'];
   fcds['name11']:=getsqldata('select doctor from ovst where vn = "'+fcds2['vn']+'"');
   fcds['name12']:=getsqldata('select d.name from ovst o,doctor d where o.doctor = d.code  and o.vn = "'+fcds2['vn']+'"');
   fcds['name13']:=getsqldata('select d.licenseno from ovst o,doctor d where o.doctor = d.code  and o.vn = "'+fcds2['vn']+'"');

   จะต้องแก้ 2 จุด ตรงที่เป็นตัวสีน้ำเงิน กับ สีแดง น่ะครับ 
   
   โดยลบตัวอักษรที่เป็นสีน้ำเงิน ออก แล้ว แล้วพิมพ์     เข้าไปแทน(จะเห็นเป็นภาษาแปลกๆ ไม่ได้เป็นตัว  ช  นะครับ)  ส่วนตรงสีแดง ก็ แทนที่ด้วย  ครับ
โรงพยาบาลวังน้อย   พระนครศรีอยุธยา ( รพช.30 เตียง )
Server : ProLiant DL120G6  Xeon X3450  RDIMM 12 Gb  2x256GB SSD Raid 1
OS : CentOS 6.3  DB : Percona 5.5.21

Slave : ProLiant ML110G6  Xeon X3430  UDIMM 8 Gb  2x300GB SAS Raid 1
OS : CentOS 6.3  DB : Percona 5.5.32

HOSxP version  3.57.xx.xx    เริ่มระบบ  เมษายน 2549

ออฟไลน์ iisomi

  • Jr. Member
  • **
  • กระทู้: 59
  • Respect: +1
    • ดูรายละเอียด
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #14 เมื่อ: พฤศจิกายน 10, 2009, 18:28:02 PM »
0
ขอบคุณอาจารย์ขวดอีกครั้งค่ะ
รพช.บางปลาม้า จ.สุพรรณบุรี
E-Mail   best_life_123@hotmail.com


ขอบคุณอาจารย์และพี่ๆทุกท่านที่เมื่อยามมีปัญหาคอยตอบและให้ความรู้ตลอดค่ะ
"สักวันจะต้องรู้มากกว่าวันนี้ วันพรุ่งนี้ต้องเป็นคนเก่งกว่าวันนี้"

ออฟไลน์ onlinelp

  • Full Member
  • ***
  • กระทู้: 163
  • Respect: 0
    • ดูรายละเอียด
    • โรงพยาบาลพระนารายณ์มหาราช
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #15 เมื่อ: มีนาคม 02, 2011, 09:07:40 AM »
0
ขุด 1 ที จึก.... เพื่อขอบคุณคร๊าบ
หาจากพี่ google เจอทันที อิอิ..
โรงพยาบาลพระนารายณ์มหาราช จ.ลพบุรี
HOSxp Version : 3.53.12.8
สำรวย  ช้างจวง (ต๊อก)
MSN : aminoaul@hotmail.com
------------------------------------------------------------------------
KSK Kill >>sality.a  http://www.webphand.com/sality/fix.php

ออฟไลน์ บิ๊กเบิร์ด

  • Full Member
  • ***
  • กระทู้: 203
  • ศรัทธา
  • Respect: +11
    • ดูรายละเอียด
    • http://lo.moph.go.th
Re: ดึงรายงาน ตอบกลับ refer ค่ะ
« ตอบกลับ #16 เมื่อ: พฤศจิกายน 30, 2012, 08:37:52 AM »
0
จขกท. ขอไฟล์ CDS หน่อยได้ไหมครับ
กัมปนาท  บุตรจันทร์  (bigbird)
นวก.คอมพิวเตอร์ @สสจ.เลย
mybigbird1983@gmail.com
blog : http://bigbird1983.blogspot.com/
---------------------------------------------------
วิธีใส่ลายเซ็น เพื่อแนะนำตัวเอง

ขอบคุณ ที่ก