ผู้เขียน หัวข้อ: สอนทำ scrip เตือนยานอกบัญชี หน่อยครับ  (อ่าน 3376 ครั้ง)

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

ออฟไลน์ yossak

  • Sr. Member
  • ****
  • กระทู้: 428
  • Respect: 0
    • ดูรายละเอียด
    • www.tpphosp.com
สอนทำ scrip เตือนยานอกบัญชี หน่อยครับ
« เมื่อ: พฤษภาคม 19, 2011, 11:45:15 AM »
0
ท่านพี่ครับ  :D :D จะ ทำscrip เตือนยานอกบัญชี ทำยังไงครับ คือพี่นาจเคยสอนแต่ไม่ได้ใช้ลืมไปแล้วครับ อิอิ สอนน้องหน่อยครับน้องลืมไปแล้ว พอดีเข้าให้โจทย์มา แล้วลืมวิธีการทำ สอนน้องหน่อย ขอบคุณครับ ??? ??? ;D
ยศศักดิ์   น้อยประสิทธิ์  โรงพยาบาลทองผาภูมิ ขนาด 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

ออฟไลน์ naj

  • Hero Member
  • *****
  • กระทู้: 2,449
  • Respect: +10
    • ดูรายละเอียด
    • http://www.luangphopern-hospital.com
Re: สอนทำ scrip เตือนยานอกบัญชี หน่อยครับ
« ตอบกลับ #1 เมื่อ: พฤษภาคม 19, 2011, 14:09:31 PM »
0
จริงใช้ Notify ผมว่าง่ายกว่านะครับ
แต่ถ้าต้องการใช้ ผมมีตัวอย่าง Code
var fonlineid,fvn,fcomputername,fdepcode:string;
begin
  fonlineid:=get_onlineid;
  fvn:= GetGlobalValue('VN');
  fcomputername := getsqldata('select servername from onlineuser where onlineid="'+fonlineid+'"');
  fdepcode := getsqldata('select depcode from onlineuser o '+
  'left outer join kskdepartment b on o.department=b.department '+
  'where onlineid="'+fonlineid+'" '+
  'and b.depcode in("019","020","021")');

  //showmessage('OnlineID = '+fonlineid+' , Current VN = '+fvn+'  , ComputerName = '+fcomputername+' ,   Department  = '+fdepcode);
   if fdepcode='' then  exit;
   if Getsqldata('select count(d.drugaccount)as cd from opitemrece o '+
      ' left outer join drugitems d on d.icode=o.icode'+
      ' where o.vn="'+fvn+'" and o.icode like "1%" and d.drugaccount="" '+
      'and o.pttype in("20","21")  and o.paidst in("01","02")')>0   then
      begin
      showmessage('¼Ùé»èÇÂÁÕÃÒ¡ÒÃÂҹ͡ºÑ­ªÕÂÒËÅÑ¡áËè§ªÒµÔ ¨Óà»ç¹µéͧ¾ÔÁ¾ìãºÃѺÃͧÂҹ͡ºÑ­ªÕ'+#13
      +'à¾×èÍãËé¼Ùé»èǹÓä»»ÃСͺ¡ÒÃàºÔ¡¤èÒÃÑ¡ÉÒ´éǹФÐ'+#13+'***** ¢Íº¤Ø³¤Ð *****');
     PrintReportToPrinterWithParam('CUSTOM-˹ѧÊ×ÍÃѺÃͧÂҹ͡ ¼Ùé»èǹ͡',fvn,'','','','','','','','','','Printing....')
      end;
   end;
Yindee And Tan

ออฟไลน์ Khuad

  • Hero Member
  • *****
  • กระทู้: 3,778
  • .. นางฟ้า ตัวไม่น้อยแล้ว ..
  • Respect: +10
    • ดูรายละเอียด
Re: สอนทำ scrip เตือนยานอกบัญชี หน่อยครับ
« ตอบกลับ #2 เมื่อ: พฤษภาคม 19, 2011, 14:23:11 PM »
0

... เห็นด้วยกับ อ.นาจ ครับ ที่ว่าใช้ Notify จะดีกว่า 
    HOSxP จะได้ไม่ต้องไปประมวลผลคำสั่งเพิ่มอีกครับ ...  :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

ออฟไลน์ naj

  • Hero Member
  • *****
  • กระทู้: 2,449
  • Respect: +10
    • ดูรายละเอียด
    • http://www.luangphopern-hospital.com
Re: สอนทำ scrip เตือนยานอกบัญชี หน่อยครับ
« ตอบกลับ #3 เมื่อ: พฤษภาคม 19, 2011, 14:39:39 PM »
0
ถ้าต้องการจะลองเขียน ผมแนบตัวอย่างมาให้แล้วครับ ลองทดสอบดู
โค๊ด: Delphi
  1. var fonlineid,fvn,fcomputername,fdepcode:string;
  2. begin
  3.   fonlineid:=get_onlineid;
  4.   fvn:= GetGlobalValue('VN');
  5.   //ShowMessage(fvn);
  6.   fcomputername := getsqldata('select servername from onlineuser where onlineid="'+fonlineid+'"');
  7.   fdepcode := getsqldata('select depcode from onlineuser o '+
  8.   'left outer join kskdepartment b on o.department=b.department '+
  9.   'where onlineid="'+fonlineid+'" '+
  10.   'and b.depcode in("019","020","021")');//กำหนดหน่วยงานหรือแผนกให้แสดงข้อความเตือน
  11.  
  12.   //showmessage('OnlineID = '+fonlineid+' , Current VN = '+fvn+'  , ComputerName = '+fcomputername+' ,   Department  = '+fdepcode);
  13.    if fdepcode='' then  exit;
  14.    if Getsqldata('select count(d.drugaccount)as cd from opitemrece o '+
  15.       ' left outer join drugitems d on d.icode=o.icode'+
  16.       ' where o.vn="'+fvn+'" and o.icode like "1%" and d.drugaccount="" ')>0   then
  17.       begin
  18.       showmessage('¼Ùé»èÇÂÁÕÃÒ¡ÒÃÂҹ͡ºÑ­ªÕÂÒËÅÑ¡áËè§ªÒµÔ ¨Óà»ç¹µéͧ¾ÔÁ¾ìãºÃѺÃͧÂҹ͡ºÑ­ªÕ'+#13
  19.       +'à¾×èÍãËé¼Ùé»èǹÓä»»ÃСͺ¡ÒÃàºÔ¡¤èÒÃÑ¡ÉÒ´éǹФÐ'+#13+'***** ¢Íº¤Ø³¤Ð *****');
  20.       end;
  21.    end;
เอา code นี้ไปวางตามรูปที่ 4 แล้ว save เป็นชื่อ SYS_VN_SCRIPT ครับ จากนั้นให้ไปกำหนดใน system setting ตามรูปที่ 2
« แก้ไขครั้งสุดท้าย: พฤษภาคม 19, 2011, 14:46:46 PM โดย naj »
Yindee And Tan