ผู้เขียน หัวข้อ: ท่านพี่ครับน้องจะถามเรื่องเทคนิคการเขียนรายงาน  (อ่าน 6013 ครั้ง)

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

ออฟไลน์ yossak

  • Sr. Member
  • ****
  • กระทู้: 428
  • Respect: 0
    • ดูรายละเอียด
    • www.tpphosp.com
พี่ครับเราสามารถเขียนเลือกรายการเป็น List  เช่น หน่วยงาน หรือสิทธิ์ เหมือนฟั่งชั่น GetPickupList ใน hosxp Repost Designer แต่เขียนใน sql ได้เลยเปล่าครับ เหมือน วันที่ อะครับ เพราะต้องการที่จะเลือกตอนที่เรียกรายงานออกมาเป็น Excel ก่อนเข้าสู่หน้าจอรายงานสำเร็จรูป (มันมีปัญหาก็เลยต้องการออกที่เป็นExcel เลย เพราะเขียนสำเร็จรูปแล้วเรียกออกเป็น Excelc ตารางออกมั่วไปหมดไม่รู้ตารางไหนเป็นตารางไหน) ก็เลยอยากจะรู้ว่าจะใช้คำสั่งไหนที่จะเรียกรายการใน sql เลย เหมือน  between อะครับท่านพี่
ยศศักดิ์   น้อยประสิทธิ์  โรงพยาบาลทองผาภูมิ ขนาด 90 เตียง
Server HP ML350 G6 / Hdd scis 3 TB. / Ram 16 GB./ Centos 6.4 / Mysql 5.5.26/ Hosxp 3.57.2.x
ขึ้นระบบ 2549  จากทีม BMS และขอขอบพี่กิจ สสจ.กจ  คุณ พีบอย ด่านมะขามเตี้ย   พี่นาจ รพ.หลวงพ่อเปิ่น, พี่อ๊อด รพ.ไทรโยค, และที่ให้ความรู้และคำแนะนำ เว็บไซค์โรงพยาบาล  www.tpphosp.com

ออฟไลน์ udomchok

  • Hero Member
  • *****
  • กระทู้: 8,358
  • Respect: +589
    • ดูรายละเอียด
    • ร.พ.สมเด็จพระสังฆราช องค์ที่ 17
0
ถ้าต้องใช้ฟั่งชั่น เช่น GetPickupList เพื่อดึงข้อมูล ก็ไม่สามารถทำแบบนี้ได้ครับ
ต้องไปใช้วิธี print to file ครับ
ทำด้วยหัวใจร.พ.สมเด็จพระสังฆราช องค์ที่ 17 อ.สองพี่น้อง จ.สุพรรณบุรี
อบรมโดย BMS Team เมื่อ พ.ย. 49 ขึ้นระบบห้องบัตรเมื่อ X'Mas 2007
2008 : X-Ray กายภาพบำบัด แพทย์แผนไทย กิจกรรมบำบัด OPD ตา
2009 : ทันตกรรม ห้องตรวจตา OPD (พยาบาลและห้องตรวจแพทย์บางห้อง)

ออฟไลน์ songkranm005

  • Newbie
  • *
  • กระทู้: 2
  • Respect: 0
    • ดูรายละเอียด
0
ออก excel แล้ว ข้อมูล ไม่เหมือนกับฟอร์มเลย งง เหมือนกัน ครับ
ผมจะสั่งพิมพ์  แล้วเลือก Export file เป็น excel ครับ

Thanks: ฝากรูป
« แก้ไขครั้งสุดท้าย: กรกฎาคม 20, 2011, 20:36:03 PM โดย songkranm005 »
 

ออฟไลน์ Khuad

  • Hero Member
  • *****
  • กระทู้: 3,778
  • .. นางฟ้า ตัวไม่น้อยแล้ว ..
  • Respect: +10
    • ดูรายละเอียด
0
ออก excel แล้ว ข้อมูล ไม่เหมือนกับฟอร์มเลย งง เหมือนกัน ครับ
ผมจะสั่งพิมพ์  แล้วเลือก Export file เป็น excel ครับ

... การใช้ print to file ให้ออกเป็น excel  ต้องระวังนิดนึงครับ

    คือ ในแต่ละแถวของข้อมูลในรายงาน ต้องไม่มีช่องที่มีข้อมูลเป็น null ครับ  เพราะเมื่อใช้ print to file ให้ออกเป็น excel  ช่องที่เป็น null จะไม่นำไปเป็น 1 เซลล์ใน excel ครับ
    โดย จะเลื่อนเอาข้อมูลในช่องถัดไปทางขวามือที่ข้อมูลไม่เป็น null มาแทน  คือมีการเลื่อนเซลล์ไปทางซ้ายนั่นแหละครับ  ก็จะทำให้ข้อมูลออกมาไม่ถูกต้อง ไม่ตรงกับในรายงานครับ

    การแก้ไข ในกรณีที่ต้องดึงข้อมูลจากฐานข้อมูลที่อาจมีค่าเป็น null   ก็ให้เราใช้การวาง variable เพื่อดึงข้อมูลแทนครับ 
    เพราะจะทำให้ค่าที่เป็น null จากฐานข้อมูลจะกลายเป็นค่าว่างในรายงานแทนครับ พอออกเป็น excel ช่องที่เป็นค่าว่างนี้ก็จะแสดงเป็น 1 เซลล์ใน excell ได้ครับ 
    ข้อมูลใน excell ที่ได้ก็จะเหมือนในตัวรายงานครับ ...  :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

ออฟไลน์ yossak

  • Sr. Member
  • ****
  • กระทู้: 428
  • Respect: 0
    • ดูรายละเอียด
    • www.tpphosp.com
0
อย่างพี่ Khuad ว่าครับผมทำ print to file ส่งไปเป็น Excel แล้วมันแว่ง ตารางไหนเป็นอันไหนไม่รู้ เลยมีปัญหาก็เลยคิดว่า ถ้าเรียกเป็น Excel ก่อนที่เข้าถึงรายงานที่สำเร็จรูป โดยเราจัดการเรียงข้อมูลใน sql ที่เราตั้งการเช่น เรียง Hn ก่อน  ชื่อ  เลข13หลัก สิทธิ์ เป็นต้น เราก็ copy ไปว่าง Excel ที่เราจัดฟอร์มไว้แล้ว แต่ต้องเลือกแผนก นี้สิคือปัญหา เลยต้องถามท่านพี่ว่าจะใช้เทคนิคไหนดี  สรุปว่าไม่ได้คงต้องทำตัวเดียวแต่หลายแผนก w1  w2  LR  ER OPD รายงานเดียวแต่ 5ตัวอืมมันเยอะอะ ครับ
ยศศักดิ์   น้อยประสิทธิ์  โรงพยาบาลทองผาภูมิ ขนาด 90 เตียง
Server HP ML350 G6 / Hdd scis 3 TB. / Ram 16 GB./ Centos 6.4 / Mysql 5.5.26/ Hosxp 3.57.2.x
ขึ้นระบบ 2549  จากทีม BMS และขอขอบพี่กิจ สสจ.กจ  คุณ พีบอย ด่านมะขามเตี้ย   พี่นาจ รพ.หลวงพ่อเปิ่น, พี่อ๊อด รพ.ไทรโยค, และที่ให้ความรู้และคำแนะนำ เว็บไซค์โรงพยาบาล  www.tpphosp.com

ออฟไลน์ pop_hosxp

  • Hero Member
  • *****
  • กระทู้: 3,138
  • Respect: +40
    • ดูรายละเอียด
    • Phanomphrai Hospital
0
ใช้ function GetPickupList ได้ครับ
ตัวอย่าง

โค๊ด: Delphi
  1. var
  2. ReferPoint:string;
  3.  
  4. ReferPoint:=GetPickupList('select * from refer_point_list');
  5.  
  6. ChangeReportSQL('select * from referout where refer_point="'+ReferPoint+'" ');
pop434241@gmail.com
รพ.พนมไพร จ.ร้อยเอ็ด https://pnphos.moph.go.th/hosweb/

ออฟไลน์ มนตรี บอยรักยุ้ยคนเดียว

  • Hero Member
  • *****
  • กระทู้: 5,369
  • Respect: +12
    • ดูรายละเอียด
    • โรงพยาบาลชุมชน ด่านมะขามเตี้ย
0
ถ้าต้องใช้ฟั่งชั่น เช่น GetPickupList เพื่อดึงข้อมูล ก็ไม่สามารถทำแบบนี้ได้ครับ
ต้องไปใช้วิธี print to file ครับ

แล้วถ้าเป็น tempreport น่าจะง่ายกว่านะครับ

ผมลองทำแล้วออก Excel เลย

สามารถแยกแผนกได้เหมือนกัน

ใช้ function GetPickupList ได้ครับ
ตัวอย่าง

โค๊ด: Delphi
  1. var
  2. ReferPoint:string;
  3.  
  4. ReferPoint:=GetPickupList('select * from refer_point_list');
  5.  
  6. ChangeReportSQL('select * from referout where refer_point="'+ReferPoint+'" ');

แบบนี้ก็อีกทางเลือก
เริ่ม11พย.2548OPD-Paperlessพร้อมHOSxPลดโลกร้อน
IPD-Lesspaper1ตค2560ระบบDmsByNeoNetwork
IPD-Paperless1พ.ค2562ระบบHOSxPXE4
MT-Oracle9.3+MariaDB-10.4.xx,SL-Oracle9.3+MariaDB-11.0.xx
LOG=MySQL-8.4.xx,INV=PostgreSQL11

ออฟไลน์ มนตรี บอยรักยุ้ยคนเดียว

  • Hero Member
  • *****
  • กระทู้: 5,369
  • Respect: +12
    • ดูรายละเอียด
    • โรงพยาบาลชุมชน ด่านมะขามเตี้ย
0
อย่างพี่ Khuad ว่าครับผมทำ print to file ส่งไปเป็น Excel แล้วมันแว่ง ตารางไหนเป็นอันไหนไม่รู้ เลยมีปัญหาก็เลยคิดว่า ถ้าเรียกเป็น Excel ก่อนที่เข้าถึงรายงานที่สำเร็จรูป โดยเราจัดการเรียงข้อมูลใน sql ที่เราตั้งการเช่น เรียง Hn ก่อน  ชื่อ  เลข13หลัก สิทธิ์ เป็นต้น เราก็ copy ไปว่าง Excel ที่เราจัดฟอร์มไว้แล้ว แต่ต้องเลือกแผนก นี้สิคือปัญหา เลยต้องถามท่านพี่ว่าจะใช้เทคนิคไหนดี  สรุปว่าไม่ได้คงต้องทำตัวเดียวแต่หลายแผนก w1  w2  LR  ER OPD รายงานเดียวแต่ 5ตัวอืมมันเยอะอะ ครับ

เลือกแผนกได้นะครับ ใช้กรองขั้นสูง พยาบาลโรงพยาบาลผมใช้กรองรายงานกันบ่อย

เริ่ม11พย.2548OPD-Paperlessพร้อมHOSxPลดโลกร้อน
IPD-Lesspaper1ตค2560ระบบDmsByNeoNetwork
IPD-Paperless1พ.ค2562ระบบHOSxPXE4
MT-Oracle9.3+MariaDB-10.4.xx,SL-Oracle9.3+MariaDB-11.0.xx
LOG=MySQL-8.4.xx,INV=PostgreSQL11