ผู้เขียน หัวข้อ: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ  (อ่าน 14630 ครั้ง)

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

ออฟไลน์ James011

  • Hero Member
  • *****
  • กระทู้: 1,743
  • Respect: +16
    • ดูรายละเอียด
 ;D ;D ;D เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ

1.เป็นรายงาน Doctor review พิมพ์ตอนจำหน่ายผู้ป่วยจากตึกผู้ป่วยใน
2.พิมพ์เสร็จ นำไปเก็บไว้ใน OPDCARD ด้านหลัง ไว้ให้หมอดูประวัติการ Admit เวลาคนไข้มาตรวจผู้ป่วยนอก

3.ติดปัญหาผมต้องการทำ Subreport ที่ Diag โรคให้มันออกทุกโรค ตามรูปครับ เทพReport ช่วยชี้แนะหน่อยครับ

   *******************Code***************************
select concat(pt.pname,pt.fname," ",pt.lname) as ptname,i.an,i.hn,i.admdoctor,i.dchdate,
i.dchstts,ds.name as ds_name,i.dchtime,i.dchtype,dt.name as dt_name,
i.regdate,i.regtime,i.ward,w.name as w_name,
d.name as drugname,d.strength,o.qty,du.shortlist,o.unitprice,o.sum_price,
ig.diagtype,ig.doctor,dc.name as dc_name,ig.icd10,icd.name as icd_name,
im.admday,im.bedno,tr.name as addr,tr.name1 as age,tr.name3 as pttype_n
from ipt i
left outer join opitemrece o on i.an=o.an
left outer join drugitems d on o.icode=d.icode
left outer join drugusage du on o.drugusage=du.drugusage
left outer join dchstts ds on i.dchstts=ds.dchstts
left outer join dchtype dt on i.dchtype=dt.dchtype
left outer join ward w on i.ward=w.ward
left outer join iptdiag ig on i.an=ig.an
left outer join doctor dc on ig.doctor=dc.code
left outer join icd101 icd on ig.icd10=icd.code
left outer join iptadm im on i.an=im.an
left outer join tempreport tr on i.an=tr.reportname and i.an=tr.id
left outer join patient pt on i.hn=pt.hn
where i.an="000000647" and item_type="H"
group by o.icode
order by ig.diagtype asc

******************************************************************



ออฟไลน์ yokyai

  • Hero Member
  • *****
  • กระทู้: 1,462
  • Respect: +9
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #1 เมื่อ: กรกฎาคม 28, 2009, 09:53:13 AM »
0
เป็นคำแนะนำนะคับ มือใหม่เหมือนกัน  ไม่ต้องทำเป็น sub report ก็ได้นะคับ  ลองเพิ่ม script  จากตารางของผู้ป่วยใน (ลองหาดูก่อน) ที่เก็บข้อมูลการ diag แล้วที่ report designer ก็ใช้ DbText แทน ทำเผื่อตาม field ในตาราง คาดว่า 1 คนก็ไม่น่าเกิน 5 diag ไหมคับ ไม่ทราบว่าตรงประเด็นหรือเปล่า เพราะว่าในใบสั่งยาของที่ รพ. ก็ใช้วิธีการแบบนี้อ่ะคับ หมอต้องการเห็น diag อย่างน้อย 3 โรค   ตารางน่าจะอยู่ใน an_stat นะคับที่เก็บข้อมูลทุกอย่าง  ลองดูนะคับผิดถูกยังไงก็ลองดู แบบนี้ไม่น่าจะซับซ้อน
Sakaowrat Choocherd(Administrator) Information Technologist
Bangyai Hospital(30 beds)
HOSxP = 16_May_2008
Master and Slave : DELL-R730 Server Intel Xeon 8Core(2Units)
,Ram64 GB,HDD600(10k)x4,Raid5,CentOS 7.0 64 bit
,MySQL 10.1.10-MariaDB
(3 March 2016) With BMSxTraBackupGUI

ออฟไลน์ James011

  • Hero Member
  • *****
  • กระทู้: 1,743
  • Respect: +16
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #2 เมื่อ: กรกฎาคม 28, 2009, 10:58:47 AM »
0
 ;D ;D ;D มีคู่มือการเพิ่ม Script ป่าวครับ

ออฟไลน์ James011

  • Hero Member
  • *****
  • กระทู้: 1,743
  • Respect: +16
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #3 เมื่อ: กรกฎาคม 28, 2009, 12:13:01 PM »
0
 ;D ;D  ผมลองใช้ Variable เพื่อดึงข้อมูล แต่มันดึงได้ครั้งละ 1 ค่า ตัวใช้ Variable 5 ตัวในการดึง ข้อมูลการวินิจฉัยทั้งหมด 5 ตัวครับ มีวิธีอื่นที่ ดึงครั้งเดียวมาทั้งหมดป่าวครับ

ออฟไลน์ bannok

  • Hero Member
  • *****
  • กระทู้: 764
  • Respect: +8
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #4 เมื่อ: กรกฎาคม 28, 2009, 13:01:44 PM »
0
รอเก็บด้วยคนนะครับ
Somchai  Lenyee  Promkiri Hospital  tel 075396123 ต่อ 165
เมล์ arsan_2005@hotmail.com
server IBM SYSTEM x3650M5  ram 32 G.
server IBM SYSTEM x3500M3  ram 16 G.
 Hosxp 3.63.3.10
OS:centos 7 mysql 10.1.10 MariaDB

ออฟไลน์ James011

  • Hero Member
  • *****
  • กระทู้: 1,743
  • Respect: +16
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #5 เมื่อ: กรกฎาคม 28, 2009, 15:47:00 PM »
0
 ;D ;D ;D ทำเสร็จ Up ให้ครับ ไม่นานเกินรอครับ

ออฟไลน์ pongsa

  • Sr. Member
  • ****
  • กระทู้: 482
  • Respect: +1
    • ดูรายละเอียด
    • http://www.nonghan.com
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #6 เมื่อ: กรกฎาคม 28, 2009, 18:20:44 PM »
0
พอดีอยากให้ได้รายงานยากลับบ้านให้คนไข้ถือด้วยครับ  ฝ่ายเภสัชเขาขอมา  เพิ่มวิธีรับประทานด้วยน่ะครับ
   
นายพงศธร  คำบ่อเศร้า  (ไสว พงศธร  เวชสถิติรุ่น 12)  รพ.หนองหาน  อ.หนองหาน จ.อุดรธานี  TEL- 088-3576847 เว็บส่วนตัว (http://www.nonghan.com)
โทร. 088-3576847    <<<< Mail :  sawainonghan@hotmail.com  >>>>   MSN khambosao@hotmail.com  เริ่ม  1 พฤษภาคม 2550 ขึ้นระบบโดยอ.สุชัย/น้องอ้อ/น้องสุเทพ  อ.โด้ เดชา/อ.อาร์ม จากรพร.ด่านซ้าย  อ.ชัยพร  ที่ปรึกษา Data-Centerและอีกหลายรพ.เกือบ 50 รพ.ได้   (ได้มิตรภาพที่ดี  จาก Hosxp เยอะมาก )
*******************************************
คนเราเกิดมาแล้วชาติหนึ่ง  หากมีสิ่งดีๆจงรีบทำ  ก่อนที่แสงสว่างของชีวิตจะดับลง !  http://www.youtube.com/watch?v=p0dRVAWWptY

ออฟไลน์ James011

  • Hero Member
  • *****
  • กระทู้: 1,743
  • Respect: +16
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #7 เมื่อ: กรกฎาคม 29, 2009, 07:58:10 AM »
0
 ;D ;D ;D เสร็จแล้วครับ Up เลยครับ  diag โรค ใช้ Variable ครับ  ;D

ออฟไลน์ Khuad

  • Hero Member
  • *****
  • กระทู้: 3,778
  • .. นางฟ้า ตัวไม่น้อยแล้ว ..
  • Respect: +10
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #8 เมื่อ: กรกฎาคม 29, 2009, 11:05:09 AM »
0

... ตรงส่วนของการ diag บางครั้ง  บาง diagtype  อาจมีมากกว่า 1 รายการก็ได้ครับ  ทำให้การใช้ function GetSQLStringData ใน variable แสดงข้อมูลได้ไม่ครบครับ(ได้แค่รายการเดียว) ...

... ท่าน  เจมส์@ศูนย์อนามัยที่ 11  ลองใช้การวาง Memo ขึ้นมาใหม่ 1 ตัว   แล้วใช้ variable ไปดึงข้อมูลจาก iptdiag โดยใช้  function  GetListFromQuery  แล้วจึงส่งค่าที่ได้นี้ ไปแสดงผลที่  Memo  ที่เราสร้างไว้แทน   ลองๆ ทดลองทำดูครับ ...  :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

ออฟไลน์ James011

  • Hero Member
  • *****
  • กระทู้: 1,743
  • Respect: +16
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #9 เมื่อ: กรกฎาคม 29, 2009, 15:19:00 PM »
0
 ;D ;D แจ่มครับ ขอบคุณครับ ขอลองก่อนนะครับ

ออฟไลน์ Svl2Nuk3

  • Hero Member
  • *****
  • กระทู้: 793
  • Respect: 0
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #10 เมื่อ: กรกฎาคม 29, 2009, 16:10:14 PM »
0
เกือบเสร็จแล้วสิครับ  สู้ ๆ คับ  ^_^
มาแนะนำเผื่อยังทำไม่เสร็จ   แต่ถ้าทำเสร็จแล้วก็ข้ามไปได้เลยคับ

สร้าง Memo  และ Variable  ขึ้นมาอย่างละตัวครับ
สมมุติว่า  Memo  ชื่อ Memo1   สร้างแล้วให้กำหนดขนาดตามต้องการ

ใน Variable ใส่โค้ดเป็น
Memo1.text := GetListFromQuery('select concat(ic.code,"  ",ic.name) from iptdiag ip,icd101 ic '+
'where ip.icd10=ic.code and ip.an="'+DBPipeLine['an']+'"');

ปล.  คอมไพล์ code ดูก่อนนะคับไม่รู้จะ error หรือเปล่า

===========================================================
แต่ถ้าอยากใช้ subreport
1. เพิ่ม code ใน event oncreate
ChangeDBPipeLineLink1SQL('select  ic.code,ic.name from iptdiag ip,icd101 ic '+
'where ip.icd10=ic.code and ip.an="'+DBPipeLine['an']+'"');
ก็จะได้ข้อมูลการวินิจฉัยอยู่ใน DBPipeLineLink1

2.  สร้าง subreport  จัดตำแหน่งให้เรียบร้อยแล้วเปลี่ยน  ตรง DataPipeLine  ให้เปลี่ยนเป็น  DBPipeLineLink1

3.  ใน Subreport  ก็เอา DBText  ดึงข้อมูลเหมือนปกติครับ


ผลลัพธ์ใกล้เคียงกันครับ   แต่ sub report  สามารถจัดรหัสโรค  กับชื่อโรคให้ตรงกันได้
อาจจะมีวิธีใช้ Memo  ที่แสดงรหัสโรคและชื่อโรคตรงกัน  แต่ผมไม่เคยทำคับ  ^_^
« แก้ไขครั้งสุดท้าย: กรกฎาคม 29, 2009, 16:17:50 PM โดย Imnuke »
I'm nuke (นุ๊ก)
My Blog  : http://www.codenuke.net
อดีต นวก.คอมฯ รพช.พรหมพิราม => 1 พ.ค. 52 - 30 ก.ย. 54
ปัจจุบัน : Software Engineer บริษัทแห่งหนึ่ง

ออฟไลน์ pongsa

  • Sr. Member
  • ****
  • กระทู้: 482
  • Respect: +1
    • ดูรายละเอียด
    • http://www.nonghan.com
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #11 เมื่อ: กรกฎาคม 29, 2009, 17:09:07 PM »
0
ลองทำไฟล์ตัวอย่างได้ไหมครับ
นายพงศธร  คำบ่อเศร้า  (ไสว พงศธร  เวชสถิติรุ่น 12)  รพ.หนองหาน  อ.หนองหาน จ.อุดรธานี  TEL- 088-3576847 เว็บส่วนตัว (http://www.nonghan.com)
โทร. 088-3576847    <<<< Mail :  sawainonghan@hotmail.com  >>>>   MSN khambosao@hotmail.com  เริ่ม  1 พฤษภาคม 2550 ขึ้นระบบโดยอ.สุชัย/น้องอ้อ/น้องสุเทพ  อ.โด้ เดชา/อ.อาร์ม จากรพร.ด่านซ้าย  อ.ชัยพร  ที่ปรึกษา Data-Centerและอีกหลายรพ.เกือบ 50 รพ.ได้   (ได้มิตรภาพที่ดี  จาก Hosxp เยอะมาก )
*******************************************
คนเราเกิดมาแล้วชาติหนึ่ง  หากมีสิ่งดีๆจงรีบทำ  ก่อนที่แสงสว่างของชีวิตจะดับลง !  http://www.youtube.com/watch?v=p0dRVAWWptY

ออฟไลน์ James011

  • Hero Member
  • *****
  • กระทู้: 1,743
  • Respect: +16
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #12 เมื่อ: กรกฎาคม 29, 2009, 20:18:33 PM »
0
เกือบเสร็จแล้วสิครับ  สู้ ๆ คับ  ^_^
มาแนะนำเผื่อยังทำไม่เสร็จ   แต่ถ้าทำเสร็จแล้วก็ข้ามไปได้เลยคับ

สร้าง Memo  และ Variable  ขึ้นมาอย่างละตัวครับ
สมมุติว่า  Memo  ชื่อ Memo1   สร้างแล้วให้กำหนดขนาดตามต้องการ

ใน Variable ใส่โค้ดเป็น
Memo1.text := GetListFromQuery('select concat(ic.code,"  ",ic.name) from iptdiag ip,icd101 ic '+
'where ip.icd10=ic.code and ip.an="'+DBPipeLine['an']+'"');

ปล.  คอมไพล์ code ดูก่อนนะคับไม่รู้จะ error หรือเปล่า

===========================================================
แต่ถ้าอยากใช้ subreport
1. เพิ่ม code ใน event oncreate
ChangeDBPipeLineLink1SQL('select  ic.code,ic.name from iptdiag ip,icd101 ic '+
'where ip.icd10=ic.code and ip.an="'+DBPipeLine['an']+'"');
ก็จะได้ข้อมูลการวินิจฉัยอยู่ใน DBPipeLineLink1

2.  สร้าง subreport  จัดตำแหน่งให้เรียบร้อยแล้วเปลี่ยน  ตรง DataPipeLine  ให้เปลี่ยนเป็น  DBPipeLineLink1

3.  ใน Subreport  ก็เอา DBText  ดึงข้อมูลเหมือนปกติครับ


ผลลัพธ์ใกล้เคียงกันครับ   แต่ sub report  สามารถจัดรหัสโรค  กับชื่อโรคให้ตรงกันได้
อาจจะมีวิธีใช้ Memo  ที่แสดงรหัสโรคและชื่อโรคตรงกัน  แต่ผมไม่เคยทำคับ  ^_^


 ;D ;D ;D  thank ครับ  Share Value ดีครับ

ออฟไลน์ atit

  • Hero Member
  • *****
  • กระทู้: 1,233
  • ขออภัย ความรู้ไม่มาก
  • Respect: +3
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #13 เมื่อ: กรกฎาคม 29, 2009, 22:25:23 PM »
0
รอเก็บครับ
"-"           รู้อะไรไม่สู้รู้วิชา รู้จักหาในบอร์ดเป็นยอดคน                   tel 081-3202497 
ความรู้เพียงเล็กน้อย อาจช่วยคนเป็นร้อยแก้ปัญหา
เพราะฉะนั้น อย่ากลัวที่จะบอกสิ่งที่คุณรู้กับคนอื่น แม้จะเป็นเรื่องพื้นๆ ก็ตาม
cen-os 64 bit ,ram 4 g ,my sql 5.1.33
วิธีแนะนำตัวเอง  http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=4413.0
ก่อนตั้งกระทู้ใหม่ ลองหาดูกระทู่เก่าก่อนดีบ่? อาจได้คำตอบเร็วกว่าเด้อ   http://hosxp.net/index.php?option=com_smf&Itemid=28&action=search
วิธีขอบคุณผู้ที่ตอบคำถามถูกใจ   http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=8180.0
การเปิดใช้ Server แยก เก็บรูปภาพ/log http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=10169.0
การติดตั้ง mysql http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=11513.0
sql วันละคำกับคุณperjer http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=4007.0
8)ยินดีต้อนรับสู่สังคมแห่งการแบ่งปัน- การแบ่งปันทำให้สังคมน่าอยู่- ;Dขอขอบคุณ
- อ.mn ผู้เขียนโปรแกรมดีๆและช่วยขึ้นระบบ
- อ.อ๊อด,อ.นาจ,อ.ขวด,อ.โก้,อ.nutawut,อ.ตั๊ก,อ.JD,อ.กิจ...ที่คอยช่วยเหลือและให้ความรู้
- ทุกท่านที่ช่วย review โปรแกรมทำให้เราได้ใช้โปรแกรมที่สุดยอด(อยากให้เป็นโปรแกรมระดับประเทศเร็วๆจังจะได้ไม่ต้องง้อ สปสช 5555 :D)

ออฟไลน์ James011

  • Hero Member
  • *****
  • กระทู้: 1,743
  • Respect: +16
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #14 เมื่อ: กรกฎาคม 30, 2009, 08:09:26 AM »
0
 ;D ;D ;D  เสร็จแล้วครับ UP  Version ใหม่ ตามคำขอ
      1.เปลี่ยนจาก Variable เป็น Subreport
      2.เพิ่มรายการยาที่แพ้ (จัดให้ตามคำขอ)
      3.แก้ Bug ให้สามารถ print ใน Med profile  คลิกขวาเลือก Document (จัดให้ตามคำขอ) 

ออฟไลน์ James011

  • Hero Member
  • *****
  • กระทู้: 1,743
  • Respect: +16
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #15 เมื่อ: กรกฎาคม 30, 2009, 22:29:36 PM »
0
 ;D ;D เพิ่ม ราคา ราคารวม  วิธิการใช้ยาแบบเต็ม(ตามคำขอ)

ออฟไลน์ James011

  • Hero Member
  • *****
  • กระทู้: 1,743
  • Respect: +16
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #16 เมื่อ: กรกฎาคม 31, 2009, 07:20:54 AM »
0
 ;D ;D ;D ท่านที่โหลดไปแล้วช่วย ทดสอบให้หน่อยครับ  ว่า
  ที่อยู่ สิทธิ  อายุ  ว่าออกครบหรือป่าว ครับ แต่ผมทดสอบแล้วออกครับ
  แต่คุณ pongsa  เอาไปใช้แล้ว  ที่อยู่ สิทธิ  อายุ ไม่ออกครับ
  ข้อมูล ที่อยู่ สิทธิ  อายุ  ผมจะดึงจาก tempreport  ฐานข้อมูลผมมีข้อมูลครบ
  แต่ของคุณ pongsa ที่อยู่ สิทธิ อายุ ในตาราง tempreport ไม่มี  งงง
  ท่านผู้รู้ช่วยอธิบายหลัการทำงาน ของ tempreport หน่อยครับ

ออฟไลน์ pongsa

  • Sr. Member
  • ****
  • กระทู้: 482
  • Respect: +1
    • ดูรายละเอียด
    • http://www.nonghan.com
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #17 เมื่อ: กรกฎาคม 31, 2009, 09:09:46 AM »
0
อ.ขวด  ช่วยออกความคิดเห็นหน่อยครับ
นายพงศธร  คำบ่อเศร้า  (ไสว พงศธร  เวชสถิติรุ่น 12)  รพ.หนองหาน  อ.หนองหาน จ.อุดรธานี  TEL- 088-3576847 เว็บส่วนตัว (http://www.nonghan.com)
โทร. 088-3576847    <<<< Mail :  sawainonghan@hotmail.com  >>>>   MSN khambosao@hotmail.com  เริ่ม  1 พฤษภาคม 2550 ขึ้นระบบโดยอ.สุชัย/น้องอ้อ/น้องสุเทพ  อ.โด้ เดชา/อ.อาร์ม จากรพร.ด่านซ้าย  อ.ชัยพร  ที่ปรึกษา Data-Centerและอีกหลายรพ.เกือบ 50 รพ.ได้   (ได้มิตรภาพที่ดี  จาก Hosxp เยอะมาก )
*******************************************
คนเราเกิดมาแล้วชาติหนึ่ง  หากมีสิ่งดีๆจงรีบทำ  ก่อนที่แสงสว่างของชีวิตจะดับลง !  http://www.youtube.com/watch?v=p0dRVAWWptY

ออฟไลน์ border

  • Full Member
  • ***
  • กระทู้: 183
  • Respect: 0
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #18 เมื่อ: มิถุนายน 21, 2010, 22:51:26 PM »
0
ขอบคุณครับ อ.เจมส์ จะสมบูรณ์มากขึ้นครับ ถ้าเพิ่ม CC , vital sign, PE , วันนัด F/U ตามแบบ discharg summary ของ MRA ของ สปสช. (เอาไว้ข้างบน วินิจฉัยก็ได้ครับ)
Kabchoeng hospital surin
Begin : 1 April 2007
Main : Linux Centos 5  Backup : Linux Redhat Enterprise
Mysql 5.0.22
HP Proliant ML150G3 Server
Intel Xeon 5130 Dual Core Processor 2 GHz
HDD 160 GB RAM 2 GB

ออฟไลน์ SBR10993

  • Full Member
  • ***
  • กระทู้: 182
  • อะจ๊ากกก..ย่ะ ย่ะ..
  • Respect: +1
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #19 เมื่อ: มิถุนายน 22, 2010, 04:02:27 AM »
0
;D ;D ;D ท่านที่โหลดไปแล้วช่วย ทดสอบให้หน่อยครับ  ว่า
  ที่อยู่ สิทธิ  อายุ  ว่าออกครบหรือป่าว ครับ แต่ผมทดสอบแล้วออกครับ
  แต่คุณ pongsa  เอาไปใช้แล้ว  ที่อยู่ สิทธิ  อายุ ไม่ออกครับ
  ข้อมูล ที่อยู่ สิทธิ  อายุ  ผมจะดึงจาก tempreport  ฐานข้อมูลผมมีข้อมูลครบ
  แต่ของคุณ pongsa ที่อยู่ สิทธิ อายุ ในตาราง tempreport ไม่มี  งงง
  ท่านผู้รู้ช่วยอธิบายหลัการทำงาน ของ tempreport หน่อยครับ
tempreport เป็นแค่ตารางที่เอาไว้พักข้อมูลชั่วคราวครับสำหรับทำรายงาน ณ เมื่อเราเรียกรายงานนั้น ๆ ที่ส่วนใหญ่ค่อนข้างซับซ้อน(ซึ่งจะต้องมีการเขียน script สำหรับ insert ข้อมูลแนบเอาไว้ในรายงานนั้นๆด้วย) การที่ข้อมูลมีเหลืออยู่ในตารางนี้ก็แสดงว่า ข้อมูลเดิมจากการเรียกรายงานครั้งที่แล้วยังไม่ถูกลบ โดยปกติ ก่อนที่จะยัดข้อมูลที่เป็นรายงานใหม่ ๆ จะต้องลบของเก่าออกก่อนเสมอ เช่น zquery.sql.text:='delete from tempreport where id = "'+onlineid+'" '; อาจจะเป็น ฟิลด์ใดฟิลด์หนึ่งของtempreport ก็ได้ที่อ้างอิงถึงรายงานนั้น  ลอง select * from tempreport ดู ชื่อฟิลต่าง ๆ บางทีก็ไม่สำพันธ์กับค่า เป็นแค่ที่พักข้อมูลเอาไว้ทำรายงานเฉย ๆ ครับ การที่เลือกดึงข้อมูลจากตารางนี้ไม่เวิร์คครับ   ลองดูจากรายงานเก่า ๆ ที่มีในเครื่องครับที่มี select t1.name1 ... t1.namexxx โดยทั่วไปจะประมาณนี้ หรือ คำสั่งธรรมดา อย่าง select * from xxx แต่การที่ทำงานะอยู่ตรง tab script ครับ ดูจากตัวอย่างรายงานนี้ก็ได้นะ CUSTOM-Finance หนังสือรับรองเพื่อประกอบการเบิกจ่ายยานอกบัญชียาหลักแห่งชาติจะเห็นการทำงานของ tempreport ได้ไม่ยาก  ไม่ได้ encode อะไรไว้ พอแกะได้ครับ คงพอเข้าใจนะครับ รีบเปี่ยนเป็น vn_stat หรือตารางอื่นที่แน่นอนกว่าดีกว่าครับ ข้างล่างคือตัวอย่างแบบง่าย ๆ ครับเลือกคิวรี่ข้อมูลได้ recordset จากนั้นก็ทำลูปจับยัดเข้า tempreport

unit MyIPDReport;

procedure main;
var d1,d2:tdatetime;i:integer;
begin

   if not getdaterange() then exit;
   d1:=date_result1();
   d2:=date_result2();
   
   fonlineid:=report_value(1);
   setstatuslabel('Processing...');
   ds1:=formatdatetime('yyyy-mm-dd',d1);
   ds2:=formatdatetime('yyyy-mm-dd',d2);
  //delete old data from tempreport
   zquery.sql.text:='delete from tempreport where id = "CUSTOM-stupid" ';
   zquery.execsql;
   fcds.close;
   fcds.datarequest('select * from tempreport where id = "CUSTOM-stupid" ');
   fcds.open;

   i:=0;                 
   zquery.close;
   zquery.sql.text :='select concat(pt.pname,pt.fname,''  '',pt.lname) as ptname,pt.cid,v.age_y as age,op.bw, '+
   ' pt.sex,pt.informaddr,oh.cc_persist_disease as history_ill,l.lab_items_name,o.lab_order_result,h.hn,v.vstdate '+
   ' from lab_order o '+
   ' left outer join lab_head h on o.lab_order_number = h.lab_order_number '+
   ' left outer join ovst o1 on h.vn = o1.vn '+
   ' left outer join patient pt on h.hn = pt.hn '+
   ' inner join lab_items l on l.lab_items_code =  o.lab_items_code and  o.lab_items_code in (''199'',''100'',''109'',''155'')'+
   ' inner join opdscreen op on op.vn = o1.vn '+
   ' inner join vn_stat v on v.vn = o1.vn '+
   ' left outer join opd_ill_history  oh on oh.hn=op.hn '+                                                             
   ' where h.order_date between "'+ds1+'" and "'+ds2+'" ';
   zquery.open;
   zquery.first;
   while not zquery.eof do
   begin 
   i:=i+1; 
   //start insert data into tempreport
   fcds.insert;
   fcds['id']:=get_onlineid;
   fcds['reportname']:='CUSTOM-stupid';
   fcds['name']:=zquery.fields[0].asstring;
   fcds['name1']:=zquery.fields[1].asstring;
   fcds['name2']:=zquery.fields[2].asstring;
   .....
   fcds['name8']:=zquery.fields[8].asstring;
   fcds['name9']:=zquery.fields[9].asstring;
    ...
   zquery.next;
   end;
   fcds.post; 
   fcds.datarequest('select * from tempreport where id = "CUSTOM-stupid" ');
   applyupdate_fcds();
   setstatuslabel('Done.');
end;
end.
« แก้ไขครั้งสุดท้าย: มิถุนายน 22, 2010, 04:37:22 AM โดย SBR10993 »
Mr.kanchit Pinitmontree
NongBualamphu Prov.Pub.Health
implimented on 14-07-2006 individual

ออฟไลน์ Knott

  • Hero Member
  • *****
  • กระทู้: 889
  • Respect: +1
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #20 เมื่อ: มิถุนายน 22, 2010, 09:46:18 AM »
0
;D ;D ;D ท่านที่โหลดไปแล้วช่วย ทดสอบให้หน่อยครับ  ว่า
  ที่อยู่ สิทธิ  อายุ  ว่าออกครบหรือป่าว ครับ แต่ผมทดสอบแล้วออกครับ
  แต่คุณ pongsa  เอาไปใช้แล้ว  ที่อยู่ สิทธิ  อายุ ไม่ออกครับ
  ข้อมูล ที่อยู่ สิทธิ  อายุ  ผมจะดึงจาก tempreport  ฐานข้อมูลผมมีข้อมูลครบ
  แต่ของคุณ pongsa ที่อยู่ สิทธิ อายุ ในตาราง tempreport ไม่มี  งงง
  ท่านผู้รู้ช่วยอธิบายหลัการทำงาน ของ tempreport หน่อยครับ

ของผม ข้อมูลสิทธิ อายุ ที่อยู่ไม่ออกครับ เหมือนของคุณ pongsa เลยครับ
รพช.วัดโบสถ์ จ.พิษณุโลก
ขึ้นระบบ 1 เมษายน 2551 (ขึ้นระบบเอง)
Server : IBM x3250 M2, RAM 4 GB, FreeBSD 7.2, Mysql 5.1.30
HOSxP Version 3.56.1.15

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

  • Hero Member
  • *****
  • กระทู้: 12,611
  • Respect: +169
    • ดูรายละเอียด
    • โรงพยาบาลปากท่อ
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #21 เมื่อ: มิถุนายน 22, 2010, 10:04:46 AM »
0
;D ;D ;D ท่านที่โหลดไปแล้วช่วย ทดสอบให้หน่อยครับ  ว่า
  ที่อยู่ สิทธิ  อายุ  ว่าออกครบหรือป่าว ครับ แต่ผมทดสอบแล้วออกครับ
  แต่คุณ pongsa  เอาไปใช้แล้ว  ที่อยู่ สิทธิ  อายุ ไม่ออกครับ
  ข้อมูล ที่อยู่ สิทธิ  อายุ  ผมจะดึงจาก tempreport  ฐานข้อมูลผมมีข้อมูลครบ
  แต่ของคุณ pongsa ที่อยู่ สิทธิ อายุ ในตาราง tempreport ไม่มี  งงง
  ท่านผู้รู้ช่วยอธิบายหลัการทำงาน ของ tempreport หน่อยครับ

ของผม ข้อมูลสิทธิ อายุ ที่อยู่ไม่ออกครับ เหมือนของคุณ pongsa เลยครับ

เหมือนกันเลยครับ...ไม่ออกที่อยู่้  อายุ  สิทธิ
Implement  HOSxP  Start 2548 ---> NOW!
Station : 140 Client   V.3 Version  3.67.7.8
Server  : CENTOS 7 +MySQL maria 10.x.x

ออฟไลน์ aphirat

  • Full Member
  • ***
  • กระทู้: 165
  • Respect: 0
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #22 เมื่อ: มิถุนายน 22, 2010, 12:01:47 PM »
0
;D ;D ;D ท่านที่โหลดไปแล้วช่วย ทดสอบให้หน่อยครับ  ว่า
  ที่อยู่ สิทธิ  อายุ  ว่าออกครบหรือป่าว ครับ แต่ผมทดสอบแล้วออกครับ
  แต่คุณ pongsa  เอาไปใช้แล้ว  ที่อยู่ สิทธิ  อายุ ไม่ออกครับ
  ข้อมูล ที่อยู่ สิทธิ  อายุ  ผมจะดึงจาก tempreport  ฐานข้อมูลผมมีข้อมูลครบ
  แต่ของคุณ pongsa ที่อยู่ สิทธิ อายุ ในตาราง tempreport ไม่มี  งงง
  ท่านผู้รู้ช่วยอธิบายหลัการทำงาน ของ tempreport หน่อยครับ
tempreport เป็นแค่ตารางที่เอาไว้พักข้อมูลชั่วคราวครับสำหรับทำรายงาน ณ เมื่อเราเรียกรายงานนั้น ๆ ที่ส่วนใหญ่ค่อนข้างซับซ้อน(ซึ่งจะต้องมีการเขียน script สำหรับ insert ข้อมูลแนบเอาไว้ในรายงานนั้นๆด้วย) การที่ข้อมูลมีเหลืออยู่ในตารางนี้ก็แสดงว่า ข้อมูลเดิมจากการเรียกรายงานครั้งที่แล้วยังไม่ถูกลบ โดยปกติ ก่อนที่จะยัดข้อมูลที่เป็นรายงานใหม่ ๆ จะต้องลบของเก่าออกก่อนเสมอ เช่น zquery.sql.text:='delete from tempreport where id = "'+onlineid+'" '; อาจจะเป็น ฟิลด์ใดฟิลด์หนึ่งของtempreport ก็ได้ที่อ้างอิงถึงรายงานนั้น  ลอง select * from tempreport ดู ชื่อฟิลต่าง ๆ บางทีก็ไม่สำพันธ์กับค่า เป็นแค่ที่พักข้อมูลเอาไว้ทำรายงานเฉย ๆ ครับ การที่เลือกดึงข้อมูลจากตารางนี้ไม่เวิร์คครับ   ลองดูจากรายงานเก่า ๆ ที่มีในเครื่องครับที่มี select t1.name1 ... t1.namexxx โดยทั่วไปจะประมาณนี้ หรือ คำสั่งธรรมดา อย่าง select * from xxx แต่การที่ทำงานะอยู่ตรง tab script ครับ ดูจากตัวอย่างรายงานนี้ก็ได้นะ CUSTOM-Finance หนังสือรับรองเพื่อประกอบการเบิกจ่ายยานอกบัญชียาหลักแห่งชาติจะเห็นการทำงานของ tempreport ได้ไม่ยาก  ไม่ได้ encode อะไรไว้ พอแกะได้ครับ คงพอเข้าใจนะครับ รีบเปี่ยนเป็น vn_stat หรือตารางอื่นที่แน่นอนกว่าดีกว่าครับ ข้างล่างคือตัวอย่างแบบง่าย ๆ ครับเลือกคิวรี่ข้อมูลได้ recordset จากนั้นก็ทำลูปจับยัดเข้า tempreport

unit MyIPDReport;

procedure main;
var d1,d2:tdatetime;i:integer;
begin

   if not getdaterange() then exit;
   d1:=date_result1();
   d2:=date_result2();
   
   fonlineid:=report_value(1);
   setstatuslabel('Processing...');
   ds1:=formatdatetime('yyyy-mm-dd',d1);
   ds2:=formatdatetime('yyyy-mm-dd',d2);
  //delete old data from tempreport
   zquery.sql.text:='delete from tempreport where id = "CUSTOM-stupid" ';
   zquery.execsql;
   fcds.close;
   fcds.datarequest('select * from tempreport where id = "CUSTOM-stupid" ');
   fcds.open;

   i:=0;                 
   zquery.close;
   zquery.sql.text :='select concat(pt.pname,pt.fname,''  '',pt.lname) as ptname,pt.cid,v.age_y as age,op.bw, '+
   ' pt.sex,pt.informaddr,oh.cc_persist_disease as history_ill,l.lab_items_name,o.lab_order_result,h.hn,v.vstdate '+
   ' from lab_order o '+
   ' left outer join lab_head h on o.lab_order_number = h.lab_order_number '+
   ' left outer join ovst o1 on h.vn = o1.vn '+
   ' left outer join patient pt on h.hn = pt.hn '+
   ' inner join lab_items l on l.lab_items_code =  o.lab_items_code and  o.lab_items_code in (''199'',''100'',''109'',''155'')'+
   ' inner join opdscreen op on op.vn = o1.vn '+
   ' inner join vn_stat v on v.vn = o1.vn '+
   ' left outer join opd_ill_history  oh on oh.hn=op.hn '+                                                             
   ' where h.order_date between "'+ds1+'" and "'+ds2+'" ';
   zquery.open;
   zquery.first;
   while not zquery.eof do
   begin 
   i:=i+1; 
   //start insert data into tempreport
   fcds.insert;
   fcds['id']:=get_onlineid;
   fcds['reportname']:='CUSTOM-stupid';
   fcds['name']:=zquery.fields[0].asstring;
   fcds['name1']:=zquery.fields[1].asstring;
   fcds['name2']:=zquery.fields[2].asstring;
   .....
   fcds['name8']:=zquery.fields[8].asstring;
   fcds['name9']:=zquery.fields[9].asstring;
    ...
   zquery.next;
   end;
   fcds.post; 
   fcds.datarequest('select * from tempreport where id = "CUSTOM-stupid" ');
   applyupdate_fcds();
   setstatuslabel('Done.');
end;
end.
ขอบคุณครับ
รพ.เกษตรวิสัย 30 เตียง
implimented on 10-10-2006
Server : Double XEON 3.2 G. Ram 2 G. SCSI 147 G : OS CentOS 6.2

ออฟไลน์ Knott

  • Hero Member
  • *****
  • กระทู้: 889
  • Respect: +1
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #23 เมื่อ: มิถุนายน 22, 2010, 13:35:07 PM »
0
ผมลองแก้แล้วครับ ช่วยทดสอบด้วยครับว่าขึ้นหรือป่าว ตัดตรงที่อยู่ อายุ และสิทธิดึงจาก an_stat แทนครับ
รพช.วัดโบสถ์ จ.พิษณุโลก
ขึ้นระบบ 1 เมษายน 2551 (ขึ้นระบบเอง)
Server : IBM x3250 M2, RAM 4 GB, FreeBSD 7.2, Mysql 5.1.30
HOSxP Version 3.56.1.15

ออฟไลน์ วีระวัฒน์ (เอก)

  • Hero Member
  • *****
  • กระทู้: 1,368
  • ให้ก้าวไปข้างหน้าก่อนผู้อืนอย่างน้อย 1 ก้าวเสมอ
  • Respect: +7
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #24 เมื่อ: มิถุนายน 22, 2010, 17:46:54 PM »
0
ลองเอาตัวนี้ไปปรับใช้ดูนะครับ
รพ.จอมทอง เชียงใหม่ ขนาด 120 เตียง  เริ่มใช้ HOSxP 1 ต.ค 2557 ขึ้นระบบโดย BMS
วีระวัฒน์ ใจอินผล  081-9609614 AIS  Email weerawatjaiinpol@gmail.com  Facebook วีระวัฒน์ ใจอินผล
Server: Xeon 4 core 2.27 GHz, CentOS 7.1 , RAM : 32 GB , HD SAS :300 GBx4 R5, MySQL MariaDB 10.0.20 64 bit

ออฟไลน์ vinaisena

  • Hero Member
  • *****
  • กระทู้: 615
  • งานสนุกทุกอย่างก็สุข
  • Respect: 0
    • ดูรายละเอียด
    • http://www.senahosp.net
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #25 เมื่อ: มิถุนายน 22, 2010, 22:18:54 PM »
0
ขอโทษครับ ท่านอาจารย์ รายงานนี้พิมพ์และเอาไปใช้ตอนไหนครับ
vinai supopoj
เจ้าพนักงานเวชสถิติ รุ่น 12
รพ.เสนา จ.พระนครศรีอยุธยา 180 เตียง
เริ่มระบบ OPD กุมภาพันธ์ 2551
เริ่มระบบ IPD 15 ธันวาคม 2551
ทีม อ.นาจ อ.กัมพล
server IBM x Series 3400 Intel Xeon Quad-Core E5430 2.66 GHz/1333 MHZ RAID 0 RAM 9 GB HD 146 GB
Master database 3.54.7.30
Hosxp 3. 54.8.8 เครื่องที่ผมทำงานอยู่
นอกนั้น หลากหลาย เก่าสุด 52.11.11 LAB
ใช้งานเต็มที่ 60+ Station
Cent OS 5.2
ทำ server image work แล้ว อยู่ๆ ก็เดี๊ยงอีกมีปัญหาตอนไฟกระชาก ให้ Server image ล่ม restart ใหม่ แล้ว server วิ่งหา Imge server ไม่เจอะ หน้างานที่ถ่ายรูปห้องบัตร ถ่ายรูปไม่ได้

ออฟไลน์ border

  • Full Member
  • ***
  • กระทู้: 183
  • Respect: 0
    • ดูรายละเอียด
Re: เพิ่งทำเสร็จเมื่อคืน เทพReport ชี้แนะหน่อยครับ
« ตอบกลับ #26 เมื่อ: มิถุนายน 23, 2010, 00:28:06 AM »
0

[quo
ขอโทษครับ ท่านอาจารย์ รายงานนี้พิมพ์และเอาไปใช้ตอนไหนครับ

แนบ chart ผู้ป่วยใน หลัง discharge ครับ
Kabchoeng hospital surin
Begin : 1 April 2007
Main : Linux Centos 5  Backup : Linux Redhat Enterprise
Mysql 5.0.22
HP Proliant ML150G3 Server
Intel Xeon 5130 Dual Core Processor 2 GHz
HDD 160 GB RAM 2 GB