แสดงกระทู้

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - naj

หน้า: [1] 2 3 ... 48
1
Delphi / Pascal / Re: การใช้งานระบบ Script Program ใน HOSxP XE / PCU XE
« เมื่อ: มีนาคม 18, 2023, 12:21:49 PM »
การส่ง Parameter รหว่าง Form สามารถทำได้เหมือนใน Delphi ใช่ไหมครับ อ.ชัยพร
(Use Unit)

2
ผมยังหาช่องกรอกไม่เจอเหมือนกัน แต่ทำเป็น Tool เข้าไปปรับที่ vercode field ของตาราง ovst_sss_billtran

3
ลองใช้คำสั่งนี้
update drugusage set opi_usage_code="OR1" ,doctor_use = 'Y',
 drugusage_active = 'Y', use_opi_mode2 = 'Y'

4
ทำได้ แต่อยู่ที่ว่าเราต้องการบันทึกค่าอะไรลงในตารางไหน
ตัวอย่าง Script
fcds3.data:=hosxp_getdataset('select vstdate,vsttime from ovst where vn="'+fvn+'"');
fcds3.open;
  if fdepcode<>'' then
  if fcds.recordcount=0 then
  begin
 fcds.insert;
  fcds['yindee_diy_id']:=getserialnumber('yindee_diy_id');
  fcds['vn']:=fvn;
  fcds['loginname']:=fcds2['kskloginname'] ;
  fcds['doctor']:= fdoctor;
  fcds['depcode']:=fdepcode;
  fcds['work_date']:=fcds3['vstdate'];
  fcds['work_time']:=fcds3['vsttime'];
  fcds['computer_name']:=fcds2['servername'] ;
  fcds['ip_computer']:= fcds2['computername'];
  end else
  begin
   fcds.edit;
  fcds['vn']:=fvn;
  fcds['loginname']:=fcds2['kskloginname'] ;
  fcds['doctor']:= fdoctor;
 fcds['depcode']:=fdepcode;
  fcds['edit_date']:=date;
  fcds['edit_time']:=time;
  fcds['computer_name']:=fcds2['servername'] ;
  fcds['ip_computer']:= fcds2['computername'];
  end;
  fcds.post;
    fcds.datarequest('select * from yindee_diy_workload where vn="'+fvn+'" and loginname="'+fcds2.fieldbyname('kskloginname').asstring+'" ');
  ApplyUpdate_fcds(-1);
  end;

5
MySQL / Re: ปัญหาติดตั้ง MySQL MariaDB-10.0.17-TokuDB
« เมื่อ: ตุลาคม 15, 2015, 14:47:37 PM »
ลองเข้าไปดู Hostname.err ที่เครื่อง Server ตาม path /var/lib/mysql/hostname.err
Hostname.err แต่ละที่อาจจะไม่เหมือนกันแล้วแต่จะตั้งนะครับ แต่ถ้าใช้ BMS Tool ในการติดตั้ง Hostname จะเป็น BMS-Restore ดังนั้นจะได้  /var/lib/mysql/BMS-Restore.err ลองดูว่ามันฟ้องเกี่ยวกับ libaio.so หรือเปล่านะครับ ถ้าใช่ก็ให้ติดตั้ง package นี้เพิ่มด้วย
ผมใช้คำสั่ง yum ช่วยครับ
yum install libaio
หลังจากตืดตั้ง pavkage ดังกล่าวก็ตืดตั้ง Maria MySQL ได้นะครับ

6
HOSxP : XE / Re: New UE Concept in HOSxP XE
« เมื่อ: มิถุนายน 05, 2015, 11:02:03 AM »
สวดยอดจริงๆกับ HOSxP V.4  ;D

7
HOSxP : XE / Re: New UE Concept in HOSxP XE
« เมื่อ: มิถุนายน 04, 2015, 15:58:21 PM »
ลองแล้วยังไม่ได้..  :D

8
HOSxP : XE / Re: New UE Concept in HOSxP XE
« เมื่อ: มิถุนายน 04, 2015, 06:13:11 AM »
ลองทดสอบใส่ Event ใน CxGrid เจอ error ตามภาพที่แนบมาครับ
  แต่โดยรวม สวดยอดมากครับ  ;D

9
HOSxP PCU / Re: Too many error:operation abort คืออะไรครับ
« เมื่อ: ตุลาคม 08, 2014, 09:42:06 AM »
ลองปรับค่า max_connections ใน my.ini  ดูครับ

10
สงสัยครับว่าช่องข้อมูล ตามภาพที่แนบมาด้านบน เช่น ช่องมาครั้งสุดท้าย ช่องนัดครั้งถัดไป โปรแกรม มัน auto update ให้หรือเปล่าครับ

11
ของงวด 20140818  :D

12
HOSxP PCU / Re: แก้หรือยังครับ Error hosxp_pcu.get_stock
« เมื่อ: กรกฎาคม 02, 2014, 22:40:03 PM »
ลองนำคำสังนี้ไป run
update  stock_item_unit   set item_unit_status = 1
 :) :) :) :)

13
สำหรับคนที่ยังไม่ได้ Upgrade HOSxP เป็นเวอร์ชันปัจจุบัน(3.57.6.xx)
เอาคำสั่งนี้ไปสร้างในฐานข้อูล HOSxP
CREATE TABLE `xe_application` (
`xe_application_id` int(11) NOT NULL,
`xe_application_name` varchar(200) NOT NULL,
`xe_application_update_type_id` int(11) DEFAULT NULL,
`xe_application_version_id` int(11) DEFAULT NULL,
PRIMARY KEY (`xe_application_id`),
UNIQUE KEY `ix_xe_application_name` (`xe_application_name`)
) ENGINE=MyISAM DEFAULT CHARSET=tis620

15
ไม่แน่ใจเหมือนกันครับ ส่วนใหญ่ที่ผมทำก็จะทดสอบโดยการใช้ Showmessage() ไปวางใน Event นั้นๆแล้วดูลำดับของการทำงานอีกที  :)

17
พบปัญหาในการทำรายงานระยะเวลารอคอยเฉลี่ย ก็เลยเพิ่งสังเกตว่าการใช้ SEC_TO_TIME function และ  TIME_TO_SEC function ใน HOSxP ส่งค่ามาแปลกๆครับ
เลยลองใช้คำสัง
SELECT SEC_TO_TIME(-2),SEC_TO_TIME(103.5678),TIME_TO_SEC('-00:00:01')
ไปทดสอบใน Navicat MySQL เปรียบเทียบกับ ใน HOSxP ค่าที่ได้เป็นดีงภาพ ทำให้รายงานระยะเวลารอคอยออกมาเป็น 0 หมดเลยครับ  :)

18
มนรานงานที่แนบมาด้านบน ผม upload รายงานตัวที่แก้ไข Code ให้แล้วครับ  :)

19
ลืมใส่เครื่องหมาย >=  ;D

20
ตามเงื่อนไข ระยะที่ 1 GFR เริ่มลดลง อยู่ระหว่าง 120-90 mL/min

ระยะที่ 2 GFR ลดลงต่อจากระยะที่ 1 อยู่ระหว่าง 90-60 mL/min

ระยะที่ 3 GFR อยู่ระหว่าง 60-30 mL/min

ระยะที่ 4 GFR ลดลงจนมาอยู่ที่ 30-10 mL/min

ระยะที่ 5 หรือที่เรียกกันว่าไตวายระยะสุดท้าย (End-Stage Renal Disease, ESRD) ค่า GFR จะลดลงจน <10 mL/min

 :)

21
เงื่อนไข ดึงเฉพาะผู้ป่วยคลินิกเบาหวาน ความดัน(clinic,001,002) ที่มีผล ckd-epi ล่าสุด ในช่วงวันที่กำหนดแยกตาม Stage 1-5

22
lab_items_doctor,lab_items_visible

23
จากการตรวจสอบ ปัญหาเกิดจากมีช่องว่างระหว่างคำสั่ง count กับ (o.vn)

24
เพราะถึงแม้จะปกปิด visit ได้ด้วย การกำหนด ICD10 และ user ที่สามารถเข้าถึงได้ แต่ถ้ายังแสดงให้เห็นชื่อคลินิกให้เห็นได้ด้วย ...

25
หลังจากที่ทดลองใช้ไปสักพักเจองานเข้าครับ เพราะชื่อ Clinic นี้ไปแสดงในหน้า Patient EMR ด้วย  :-[

26
เนื่องมาจาก ต้องการ Lock การเข้าถึงของคลินิกพิเศษให้กับเจ้าหน้าที่ที่เกี่ยวข้องเท่านั้น เลยลองไปค้นในกระทู้ของ HOSxP  เจอว่า อ.mn ได้เพิ่มความสามารถนี้ไว้ให้นานแล้ว  :D
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=7414.0

27
ได้ทราบข่าวเมื่อเช้านี้ เรื่องการเสียชีวิตอย่างกระทันของท่านผู้อำนวยการโรงพยาบาลขนอม  อ.ขนอม จ.นครศรีธรรมราช จากพี่หัวหน้ากลุ่มการพยาบาล(พี่ขวัญเรือน ขออนุญาตเอ่ยนามครับ) ท่านเป็นผู้อำนวยการที่มีส่วนสำคัญในการผลักดันเรื่องการพัฒนาระบบไอทีของสาธารณสุขไทยอีกท่านหนึ่ง
 ขอแสดงความเสียใจและอาลัยจากการจากไปของท่านก่อนวัยอันควร ใน ณ ที่นี้ดวยครับ

28
ต้องตามไปลบในตาราง opitemrece_trx,opd_ipd_transfer

29
แจ้งข้อผิดพลาดการทำงานของ HOSxP V3 / HOSxP 56.8.21c
« เมื่อ: สิงหาคม 28, 2013, 14:54:18 PM »
เจอ ตอน login เข้าโปรแกรม

30
HOSxP PCU / Re: ปรึกษาเรื่องการส่งตรวจใน HOSxP PCU
« เมื่อ: สิงหาคม 21, 2013, 12:10:10 PM »
หรือถ้าเป็นไปได้ ถ้าให้โปรแกรมเพิ่มการเก็บ hn ที่ส่งตรวจลงในตาราง vn_insert ด้วยก็จะดีมากเลยครับ

31
HOSxP PCU / ปรึกษาเรื่องการส่งตรวจใน HOSxP PCU
« เมื่อ: สิงหาคม 21, 2013, 11:31:53 AM »
สืบเนื่องจากจังหวัดนครปฐมจะทำเรื่องการคัดกรองบุหรี่ โดยปีนี้จะให้ รพสต. ร่วมด้วยครับ เดิม Script ที่ผมใช้เขียนใน  Custom Form รพ    จะอ้าง vn และ hn ใน ตาราง ovst ที่ได้จากการส่งตรวจผู้ป่วยก่อน  (ตอนแรกคิดจะทำเป็น UE ) แล้วเก็บข้อมูลนี้ลงในตารางที่ได้เตรียมไว้ แต่ในกรณีที่เป็น HOSxP PCU จะต่างกันเล็กน้อยครับ ถึงแม้จะส่งตรวจแล้ว แต่ถ้าไม่มีการบันทึกในหน้า One Stop Service  ก่อน ข้อมูลจะยังไม่ถูกบันทึกลงในตาราง ovst ทำให้ เมื่อใช้กับ Script ที่ผมเขียน มีปัญหาเล็กน้อยว่า hn ไม่ได้ถูกบันทึกมาด้วย(เนื่องจากผมยังไม่รุ้ว่าจะหาทางดึง hn มาจากตารางไหน เพราะเดิมดึงมาจาก ovst table  :D :D :D )  ดังนั้นทำให้ผู้ใช้งานต้องบันทึกใน one stop service ก่อน จึงค่อยเรียก CF ขึ้นมาใหม่อีกครั้งแล้วบันทึกข้อมูลการคัดกรอง  ตอนนี้เลยชั่งใจว่าจะเอายังงัยต่อดี เพราะถ้าได้ hn มาด้วยนี่จะแหล่มเลยครับ  ;D ;D ;D ;D ;D

32
ถ้า Upgrade HOSxP PCU แล้วช้า แนะนำให้ Drop Trigger ทิ้งก่อนแล้วค่อย Upgrade ใหม่อีกครั้งครับ

33
จริงๆไม่ต้องเอาออกก็ได้ครับ ทำตามที่ อ. mn ได้ post ไว้ที่  link http://hosxp.net/index.php?option=com_smf&topic=19130
นานๆมาทำทีนี่ เล่นเอาออกทะเลไปเลย  ;D

34
 ได้แล้วครับ ลืมเอาเครื่องหมายถูกออก :)

35
ไม่ทราบว่า Function GetFormInputValue(x) และ  Procedure SetFormInputValue(x,i) ใน  Event Script ใน UE ได้หรือไม่ครับ ผมลองแล้ว ERROR แต่ถ้าเป็น UE ที่สร้างด้วย version เก่าๆ(53.x.x) สามารถใช้งานได้

36
ถ้าใช้กับ MySQL 5.5.25-MariaDB(กรณีใช้ windows เป็น Sever ) จะ Upgrade ได้ปกติครับ แต่ถ้าเป็น Linux Server และใช้ MySQL Percona 5.1.x  จะ error ตามภาพที่แนบมา :)

37
UPGrade HOSxP PCU 56.7.25 แล้ว error ตามภาพที่แนบมาครับ

38
Delphi / Pascal / Re: cxGrid
« เมื่อ: กรกฎาคม 09, 2013, 13:37:17 PM »
โค๊ด: Delphi
  1. procedure TFormDepartment.cxGrid1DBTableView1Column1GetDataText(
  2.   Sender: TcxCustomGridTableItem; ARecordIndex: Integer; var AText: string);
  3. begin
  4. AText:=inttostr(ARecord.Index+1);
  5. end;
  6.  

 :)

39
ยินดีต้อนรับ / Re: ตาราง pq_screen,pq_doctor,pq_rxorder
« เมื่อ: กรกฎาคม 03, 2013, 11:10:52 AM »
ตอนนี้ใช้วิธีเขียน Scriptในการบันทึกข้อมูลของ User ใน SYS_VN_SCRIPT โดยกำหนดให้ Script นี้ run เฉพาะในแผนกที่กำหนด (ไป Focus ที่ปุ่ม Save ของเมนูงานคัดกรอง ER และห้องตรวจแพทย์ )   :)

40
ยินดีต้อนรับ / Re: ตาราง pq_screen,pq_doctor,pq_rxorder
« เมื่อ: กรกฎาคม 03, 2013, 02:33:58 AM »
จะดึงข้อมูลไปทำรายงาน workload  ครับ   :)

41
ยินดีต้อนรับ / ตาราง pq_screen,pq_doctor,pq_rxorder
« เมื่อ: กรกฎาคม 03, 2013, 02:28:47 AM »
เดิมผมเข้าใจว่า HOSxP จะเก็บข้อมูลที่ถูกบันทึกแยกให้ในแต่ละ user ของการใช้งาน เมนูคัดกรอง ตรวจรักษา และ ER ยกตัวอย่างเช่น คนไข้คนเดียวกัน แต่มี user คัดกรองหรือตรวจรักษามากกว่า 1 คน แล้วโปรแกรมจะแยกเก็บข้อมูลแยกตาม user ที่บันทึกข้อมูล ตามตาราง pq_screen,pq_doctor,pq_rxorder จากการทดสอบโปรแกรมไม่ได้เก็บแยกให้ครับ  แต่จะไป update user แทน user เดิมใน vn เดียวกันแทน

42
ขอบคุณมากครับ  :)

43
เปิดพร้อมกันก้ยัง error ตามที่ได้แจ้งไปครับ  :)

44
ลองใช้ GetMultipleList Function ตอนที่ออกแบบแล้วลอง Preview โปรแกรมฟ้อง error ตามภาพครับ แต่ถ้าเรียก Report Designer ผ่านโปรแกรม HOSxP  ไม่ error ครับ แต่ถ้าเปิดโปรแกรม Report Designer โดยตรงจะ error

45
เดิมจะใช้เมนูนี้เหมือนกัน เพื่อเก็บ Workload ของงานเภสัช แต่มีข้อจำกัดในการบันทึกที่ไม่สามารถบันทึกมากกว่า 1 ครั้งได้ ใน 1 vn เนื่องจากห้องยาแจ้งมาว่า ใน 1 ใบสั่งยาอาจจะมีการจ่ายยามากกว่า 1 ครั้ง(กรณีสั่งเพิ่ม เนื่องจากที่ รพ ไม่ได้ออกใบสั่งยาใบใหม่ ใช้ vn เดิม ) และที่สำคัญยังหาเมนูที่รองรับในส่วนของคนในยังไม่ได้ด้วย เลยใช้ UE เก้บแทนครับ   :)

47
กรณีที่เป็นผู้ป่วยนอก พบว่าถ้าหัตถการของงานกายภาพ ที่ตั้งราคาเป็น 0 (เป็นกิจกรรมที่เก็บ workload) หลังจากที่บันทึกในระบบห้องตรวจแพทย์ เมนูเวชศาสตร์ฟื้นฟู แล้ว รายการไม่ link มาแสดงในหน้าสั่งเวชภัณฑ์ ทั้งที่ได้ map ค่าใช้จ่ายไว้แล้ว โดยโปรแกรมจะ link เฉพาะหัตถการที่ราคามากกว่า 0 เท่านั้น ผมว่าถ้าได้ทำการ map โปรแกรมควรที่จะแสดงด้วยนะครับ  :)

49
ผมไม่แน่ใจว่าในคำสั่งที่ใช้สร้างรายงานนี้ได้ join กับตาราง patient ไว้ด้วยหรือเปล่า ถ้า join ไว้แล้ว และได้ระบุให้แสดง field drugallergy ใน sql ที่ใช้ ก็ใช้ code ที่ผม post ได้เลย แต่ ถ้าไม่ได้ join ไว้ให้ใช้คำสั่งนี้
โค๊ด: Delphi
  1. if GetSQLStringData('select drugallergy '
  2. +' from patient pt'
  3. +' where pt.hn="'+DBPipeline['hn']+'"')=''  Then
  4. Value:='ไม่แพ้ยา'  ELSE
  5. Value:=ReplaceStr(GetSQLStringData('select drugallergy '
  6. +' from patient pt'
  7. +' where pt.hn="'+DBPipeline['hn']+'"'),'''','');
  8.  
  9.  

50
ลองใช้คำสั่งนี้ ไปวางไว้ใน Variable ครับ
 
โค๊ด: Delphi
  1.  IF   DBPipeline['drugallergy']='' THEN
  2.  Value :='ไม่แพ้ยา'  Else
  3. Value:= ReplaceStr(  DBPipeline['drugallergy'],'''','');
  4.  

หน้า: [1] 2 3 ... 48