แสดงกระทู้

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 - pop_hosxp

หน้า: 1 ... 4 5 [6] 7 8 ... 62
251
ไม่ได้ map รหัส icd10tm ตรงนั้นครับ การส่งออกจะอาศัยข้อมูลจากตาราง health_med_operation_code
 
ใช้คำสั่งนี้ครับ แล้วทดสอบส่งออกใหม่ดูครับ

update health_med_operation_code set icd10tm=replace(code,"-","")

252
ลองดูในตาราง icd10_nhso ว่ามี 9007712 ไหมครับ

ตารางนี้ผมไม่มีรหัสที่ขึ้นด้วย 9  เลยครับ  ตอนนี้ส่งไม่่ออก  งง อยู่  มีแต่  A-Z  ขอบริจาคหน่อยครับ


icd9 หรือ icd10tm ไม่ต้องใส่ในตาราง icd10_nhso ครับ

253
Report Exchange / Re: รบกวนเพิ่มข้อมูล
« เมื่อ: กุมภาพันธ์ 15, 2013, 17:51:02 PM »
วาง variable ลงไป แล้วใช้คำสั่งนี้

value:=GetSQLDatedata('select firstday from patient '+
' where hn="'+DbPipeline['HN']+'" ');

254
ตารางในภาพคือ drughint ครับ

255
ได้แล้วค่ะ ขอบคุณมากนะค่ะ

ไม่ทราบว่าเกิดจากอะไรค่ะ เพราะลองรันในฟ้าผ่า ก็ออก แต่มารันใน
report กลับไม่ออก

ต้องใส่คำสั่งตรง DetailBeforeGenerate ด้วยครับ และผมแก้ไข Dbpipeline ใหม่เป็น vn แทน hn กับ vstdate ครับ

โค๊ด: Delphi
  1.  ChangeDBPipeLineLink1SQL('select icode,qty,sum(sum_price) as price from opitemrece '+
  2.         'where vn="'+DBPipeLine['vn']+'" '+
  3.         'and icode in ("1510099","1520069","1530124","1540104","1540105","1540106","1540108","1540109","1910031","1910034","1910035","3901751","3901752","3901753","3901664") '+
  4.         'group by icode ');

256
อันนี้ล่ะครับ

257
ลองดูครับ

258
ลอง remote ไปดูแล้ว สั่งพิมพ์ก็ขึ้นหน้าว่าง ๆ รบกวนอาจารย์ชี้แนะให้ด้วยครับ

259
Report Exchange / Re: ปกปิดชื่อโรค HIV
« เมื่อ: กุมภาพันธ์ 11, 2013, 20:49:35 PM »
ลองแบบนี้ดูครับ

if GetSQLIntegerdata('select count(o.vn) from ovstdiag o join icd101 i on i.code=o.icd10 where o.vn="'+DBPipeline['vn']+'" and i.name like "%HIV%" ')>0  then
  begin
  Value:='-';
  end else
  begin
  Value:=DBPipeline['diagnosis_name'];
  end;

ปล. เอาเป็นแนวทางนะครับ เพราะผมไม่รู้ว่ามี DBPipeline อะไรที่กำลังใช้งานอยู่บ้าง

260
ทำตามแล้ว compile ไม่ผ่านครับ รบกวนอาจารย์ MN ช่วยตรวจสอบด้วยครับ

261
ลองดูว่าตัวรายงานเขียนไว้แบบนี้หรือยังครับ

procedure DetailBeforeGenerate;
var cds:tclientdataset;
begin
   cds:=tclientdataset.create(nil);
   cds.HOSxP_GetDataset_ImageServer('select * from opdscan where hn="xxx"');
   cds.AssignDataToPipeLineLink5;
   cds.free;
   
end;

หลังจากที่เขียนเสร็จแล้ว ให้วาง DBImage เอาไว้ใน Band Detail แล้วกำหนด DataPipeLine ไปที่ DBPipeLine5 แล้วเลือกกำหนด Field ให้ชี้ไปยัง Blob field ที่เก็บข้อมูลรูปภาพเอาไว้

ที่มา
http://hosxp.net/joomla25/index.php/2012-06-06-06-33-25/bms-learning-center/46-learningcenterimageserverreport

262
แบบนี้ได้ไหมครับ

procedure Variable35OnCalc(var Value: Variant);
begin

  if (DBPipeline['egfr']='')  then s:='0.00';
    Value := strtofloat(s);

end;

263
ดึงข้อมูลเป็นช่วงที่ถี่กว่านี้ครับ เช่น ทุกเดือน ทุกไตรมาศ ทุก 6 เดือน ครับ

264
change log 3.56.1.30

- Support for PostgreSQL 9.2
- USB Key Login Support (for Data center authentication)
- Merge ระบบงานจิตเวช (สำหรับ รพ.จิตเวช) Alpha 1

265
รบกวนอาจารย์ MN ส่งออก icd10tm ของการบันทึกแพทย์แผนไทยผู้ป่วยใน ออก 12 แฟ้มให้ด้วยครับ

266
การคีย์ข้อมูลแพทย์แผนไทยผู้ป่วยใน เวลาส่งออก 12 แฟ้มมี icd10tm ส่งออกมาให้ไหมครับ

267
ลองดึงข้อมูลจากตาราง person_vaccine_list อาจารย์ MN ทำสรุปรวมประวัติการฉีดวัคซีนไว้หมดแล้วครับ
::) ??? อ.ป๊อบ ครับ ยังรวมไม่หมดครับ ยังขาดในส่วนที่คีย์จาก one stop service ระบบจะบันทึก ovst_vaccine ทำให้รายงานยังไม่ครับ อ.ป๊อบ เขียน รวม 2 แฟ้มนี้หน่อยครับ  ;D

หรือฝาก อ.MN ให้บันทึกลงไปที่ person_vaccine_list ด้วยจะดีมากครับ จะได้ง่ายในการทำรายงาน

ให้อาจารย์ทำสรุปรวมน่าจะดีกว่า ขอปุ่ม Recalc ด้วยนะครับ  ;D ;D

268
ลองดึงข้อมูลจากตาราง person_vaccine_list อาจารย์ MN ทำสรุปรวมประวัติการฉีดวัคซีนไว้หมดแล้วครับ

269
พบปัญหาในแฟ้ม chronic ระบบส่งออกผู้ป่วยที่ไม่อยู่ในคลินิกที่ต้องส่ง สปสช ออกมาด้วย
ซึ่งจากภาพจะสังเกตุเห็นว่า datedx ไม่อยู่ในช่วงเดือนที่ส่งออกและระบบส่งออกผู้ป่วยที่ไม่มีรหัสวินิจฉัยโรคใน field chronic ออกมาครับแม้ว่าเราเลือกให้ตรวจสอบ chronic ของ Local repository แล้วก็ตาม

วันนี้พึ่งได้มีเวลามาดูกระทู้ของ อ.กอล์ฟ ผมว่าคงต้องแยกปัญหาเป็น

1. ปัญหาระบบส่งออกผู้ป่วยที่ไม่อยู่ในคลินิกเรื้อรังที่ต้องส่ง สปสช. ออกมา เข้าใจว่า อ.กอล์ฟ คงมีทะเบียนผู้ป่วยโรคเรื้อรังที่ไม่ต้อง สปสช. อยู่ ผมว่าน่าจะแก้ไขปัญหาได้ด้วยการติ๊ก ไม่ต้องส่งข้อมูล 21 แฟ้มครับ

2. ปัญหาวันที่ datedx ไม่ได้ส่งออกมาตามช่วงเวลาที่ส่งออก ผมไปดูแล้วปรากฎว่าเป็นวันที่ขึ้นทะเบียนโรคเรื้อรัง แต่ถ้าดูตาม flow ของ สปสช. ก็ไม่ได้ระบุว่าต้องเป็นการ diag ในช่วง กค.55-มิย.56 เพราะฉะนั้นผมว่าน่าจะถูกแล้วนะครับ แต่ก็งงเหมือนกันว่าบางคนก็น่าจะถูกส่งไปแล้ว แต่ก็พึ่งถูกส่งออกมา และก็ไม่ซ้ำซ้อนด้วย


271
Development / Re: Staff จาก OVSt หรืออื่นๆ
« เมื่อ: มกราคม 09, 2013, 11:43:05 AM »
ผมว่าเอาแค่เลข 4-5 หลักสุดท้ายของบัตรประชาชน แทน login ด้วยเลข 13 หลัก น่าจะสะดวกต่อ user กว่านะครับ

272
ใช้ vn ตอนที่เป็นสถานะผู้ป่วยนอกของวันที่ admit ก็น่าจะได้นะครับ

273
แบบนี้ได้ไหมครับ

โค๊ด: SQL
  1. SELECT p.pttype, p.name AS pttype_name, LEFT(a.pdx,1) AS diag_group, COUNT(a.an) AS an_count
  2. FROM an_stat a
  3. JOIN pttype p ON p.pttype=a.pttype
  4. WHERE a..dchdate BETWEEN "2012-01-01" AND "2012-01-31"
  5. GROUP BY a.pttype, LEFT(a.pdx,1)

274
การ update ตาราง person
1.
update person p
inner join temp_chronic_death t on t.cid=p.cid
set p.death_date=t.death_date

2.
update person
set death="Y"
where death_date is not null
and (death is null or death="N")

การ update ตาราง person_chronic
1.
update person_chronic pc
inner join person p on p.person_id=pc.person_id
set pc.clinic_member_status_id=3
where p.death="Y"

275
ผมใช้วิธีแบบนี้ครับ
1. เปิด xml ด้วย excel
2. save ไฟล์ในข้อ 1 เป็น excel file
3. นำ excel file ในข้อ 2 นำเข้าเป็น table ใน MS Access โดยให้ cid เป็น text และ death_date เป็น datetime
4. ส่งออก table ที่นำเข้าได้ไปเข้า HOSxP database ผ่าน ODBC โดยผมตั้งชื่อเป็น temp_chronic_death

ลองดูครับ  ;)

276

ต้องเอา death_date จากไฟล์ที่ได้มา มาใส่ใน deathday ใน patient พร้อมกับกำหนด death=Y ด้วยครับ

ขอตัวอย่างคำสั่งด้วยครับจารย์ pop แบบว่ายังมือใหม่เรื่องนี้อยู่ครับ
ผมเอาไฟล์ xml ที่ได้จาก op.nhso.go.th/op นำเข้าไปเป็นตาราง temp_chronic_death แล้วใช้คำสั่ง 3 อันนี้ตามลำดับ โดยการนำเข้าผมกำหนด field cid ให้เป็น string ส่วน death_date ให้เป็น datetime ครับ

1.
update patient p
inner join temp_chronic_death t on t.cid=p.cid
set p.deathday=t.death_date
where p.deathday is null

2.
update patient
set death="Y"
where deathday is not null
and (death is null or death="N")

แล้วหลังจากนั้นก็ไป update ตาราง clinicmember โดยใช้คำสั่ง

3. update clinicmember c
inner join patient p on p.hn=c.hn
set c.clinic_member_status_id=3
where p.death="Y"

แล้วตามด้วยการ update ตาราง person ให้มีสถานะเป็นเสียชีวิต และวันที่เสียชีวิต คล้ายกันกับคำสั่งที่ 1 และ 2 ครับ

277
อ.ครับ ไม่ทราบว่าตรงวันที่ date_serv ดึงมาจากตารางไหนครับเข้าไปดูในการคัดกรองผู้ป่วยรายนี้แล้วไม่ได้คัดกรองเรื่องเท้ากับตาเลยครับ ดังภาพที่แนบครับ

ผมเข้าใจว่า หลังจากที่แฟ้ม chronicfu สปสช เปลี่ยนเกณฑ์ใหม่เป็นทุกโรคเรื้อรัง (ที่ สปสช. กำหนด) ไม่จำเป็นต้องเป็นการตรวจเท้า หรือตา ขอให้เป็น visit ที่มารับบริการคลินิกโรคเรื้อรังก็พอครับ

278
จากการที่หน่วยบริการ ได้รับข้อมูลการตายจาก สปสช. ตามนี้ http://op.nhso.go.th/op/news/NewsDetailAction.do?id=89 หรือหน่วยงานอื่นๆ
และไม่สามารถหารายละเอียดการตายมากรอกได้ อยากให้ท่านอาจารย์ได้ช่วยพิจารณาให้ด้วยครับ
   แทงจำหน่าย  death= Y ในตาราง patient+d_update  ไม่ต้องทำแฟ้มdeath  เพราะไม่ได้ตายหรือนำมาชันสูตรที่ รพ  ครับ  อย่าคิดมาก  และส่วนใหญ่ตายก่อน  กค  2555 ไม่เข้าเงื่อนไขชดเชยครับ  op_pp individual  แค่ปรับปรุงข้อมูลกลุ่มฟโรคเรื้องรังอและเน้นบัญชี 1 หมู่บ้านในเขตรับผิดชอบ
ปัญหาคือ เวลาที่ทำหลังบ้านแล้ว หน้าบ้านมันไม่ยอมมีเครื่องหมายถูกให้อ่ะครับ และจารย์เกื้อครับ ขอเงื่อนไขที่จะ up ฟิวล์ last_update ให้ในฐานเป็นแบบ 11/05/2554 10:25:06 นี้หน่อยครับ

ต้องเอา death_date จากไฟล์ที่ได้มา มาใส่ใน deathday ใน patient พร้อมกับกำหนด death=Y ด้วยครับ

279
ต้องเขียนใน Event OnCreate ลองดูนะครับ

โค๊ด: Delphi
  1. var
  2. date1, date2:tdatetime;
  3. ds1, ds2, doctor:string;
  4.  
  5. GetDateRangeDialog(Date1, Date2);
  6. ds1:=formatdatetime(date1,"yyyy-mm-dd");
  7. ds2:=formatdatetime(date2,"yyyy-mm-dd");
  8.  
  9. doctor:=GetPickupList('select name from doctor order by name');
  10. doctor:=GetSQLStringData('select code from doctor where name="'+doctor+'" ');
  11.  
  12. ChangeReportSQL('select aaa from bbb where vstdate between "'+ds1+'" and "'+ds2+'" and doctor="'+doctor+'" ');

280
ฝากอีกครั้งใน 3.55.12.25f ครับ (รออีกประมาณครึ่งชม. นะครับ)

ส่งเรียบร้อยแล้วครับ Chronicfu ไม่มีซ้ำซ้อนซักราย ขอบคุณอาจารย์มากครับ สุขสันต์วันปีใหม่นะครับ

281
อยากให้การกำหนดสิทธิ "ตั้งค่าการเชื่อมต่อฐานข้อมูล" ทำได้เฉพาะผู้มีสิทธิเหมือนกับโปรแกรม
BMSHOSxPInventory เพราะเจอปัญหา user ลองดีไปเปลี่ยนค่าแล้วมีปัญหามากกว่าจะหาเจอ
บางครั้งไปเปลี่ยน IP เชื่อมกับ slave พอหมอสั่งยาไปคนไข้รอรับยาทั้งวันก็ไม่ได้ยาซักที
และอีกครั้งเครื่องการเงินออกใบเสร็จใน slave พอเวรบ่ายห้องยาออกใบเสร็จจาก com อีกเครื่องใน server
เกิดปัญหา finance number ซ้ำกัน อีกปวดหัวจริงๆ ตอนนี้ยังจับไม่ได้เลยว่าใครไปเปลี่ยน IP การเงินให้ไป
เชื่อมกับ slave
 >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:(


ตั้ง password ไว้ที่หน้า connection setting ได้นะครับ จะได้ไม่สามารถแก้ไขได้ ถ้าไม่รู้ password ครับ

282
SQL Syntax Error ครับ อาจารย์ MN  :'(

283
อ้าว.. ผม ฟัง pop บอกทางโทรศัพท์เป็นตาราง labfu ก็เลยไม่ได้อ่านที่ pop post ว่าเป็นตาราง chronicfu ผมแก้ไขให้ใหม่แล้วครับใน 3.55.12.25e

ปล. กำลัง upload นะครับ อีกประมาณครึ่ง ชม.

3.55.12.25e มาแล้ว กำลัง download ครับ เดี๋ยวจะแจ้งผลให้ทราบครับ

284
ตอนแรกผมคิดว่าเกิดจาก field vstdate เป็นค่าว่าง ตอนนี้ผมแก้ไขให้ใหม่แล้วครับ แต่ โปรแกรมจะตรวจสอบความซ้ำซ้อนของ Labfu จาก pid+labtest ในครั้งที่ส่งครั้งนั้นๆ นะครับ ถ้าส่งเฉพาะในช่วงเดือนเดียวก็จะสามารถตัดความซ้ำซ้อนออกได้ครับ

ฝากทดสอบใน 3.55.12.25d ครับ

แฟ้ม Chronicfu นะครับที่มีปัญหาซ้ำซ้อน ส่วน Labfu OK ส่งออกมาได้อย่างถูกต้องอยู่แล้วครับ คงต้อง group by pid หรือ cid แล้วเอา visit สุดท้ายของช่วงที่ส่งข้อมูล 21 แฟ้มออกมาครับ

285
ทดสอบดูแล้วยังเป็นเหมือนเดิมครับอาจารย์ MN  :-\

286
ผมได้ส่งออก 21 แฟ้ม โดยใช้ 3.55.12.25b แฟ้ม Chronicfu ส่งข้อมูลออกทุกคนที่อยู่ในคลินิกโรคเรื้อรังแล้วนะครับ (ไม่ใช่เฉพาะเบาหวาน และความดัน) แต่ติดปัญหาเรื่องการส่งออกซ้ำซ้อน เพราะ สปสช.ให้ส่งแค่ 1 visit ต่อเดือน (ในกรณีที่ผู้ป่วยมา รพ.หลายครั้ง) และติดปัญหาเรื่องข้อมูลใน field d_update ส่วนใหญ่จะเป็นตัวเลข 18991230000000 (น่าจะหมายถึงค่าว่าง) ตอนนี้อาจารย์ ชัยพร สุรเตมีย์กุล กำลังแก้ไขอยู่ครับ อดใจรออีกสักนิดก่อนส่งข้อมูลการให้บริการเดือนพฤศจิกายน 2555 ครับ

287
Report Exchange / Re: ช่วยดูรายงานให้หน่อยครับ
« เมื่อ: ธันวาคม 26, 2012, 16:28:01 PM »
ผมแก้เฉพาะ column แรกให้เป็นตัวอย่าง  ที่ต้องตรวจสอบคือ calc order ว่าจะให้คำนวณอะไรก่อน อะไรหลัง ลองไปแก้ไขต่อนะครับ

288
MySQL / Re: ขอคำสั่งครับ
« เมื่อ: ธันวาคม 19, 2012, 10:30:38 AM »
service mysql restart

289
ต้องดู error log ครับว่า mysql แสดง error อะไรไว้ครับ

290
ใช้ตามคำสั่งที่ให้ไว้ได้เลยครับ

291
ลองดูครับ

select *
from dt_main d
join vn_stat v on v.vn=d.vn
where v.vstdate between "2012-12-01" and "2012-12-12"
and v.count_in_year=0

292
ไม่ต้องลบครับ เพราะข้อมูลนี้ต้องไปผูกกับหัตถการของห้องต่าง ๆ เช่น หัตถการ er, ผู้ป่วยใน, ทันตกรรม ถ้าไม่อยากใช้หัตถการตัวไหน ให้ไปกำหนดที่ active_status ของตาราง er_oper_code, dttm, ipt_oper_code ให้เป็น N ก็จะเป็นการทำให้ user ไม่สามารถ key เพิ่มได้อีก และไม่มีผลต่อข้อมูลเดิมด้วยครับ

293
1. sa อันแรกเป็น user ส่วน sa อันที่สองเป็น password (หลัง identified by)
2. ใช้คำสั่งใน terminal โดยต้องเข้าใช้คำสั่งเหล่านี้ผ่านโปรแกรม mysql

294
grant all on *.* to sa@'%' identified by 'sa' with grant option;
grant all privileges on  *.* to sa@'%' identified by 'sa' with grant option;
flush previleges;

เปลี่ยน sa เป็น user และ password ที่ต้องการด้วยนะครับ

295
grant สิทธิ์ใหม่ครับ แล้วจดไว้ในที่ลับสุดยอด ;D

296
รบกวนอาจารย์อีกรอบครับ เนื่องจากในตาราง hospcode ตรง hosptype จะเป็น "โรงพยาบาลส่งเสริมสุขภาพตำบล" เลยไม่มีรายชื่อให้เลือก คงต้องรบกวนอาจารย์อีกรอบครับ

select e.hospcode ,h.hosptype,h.name  from online_etl e,hospcode h  where e.hospcode = h.hospcode   and (h.hosptype like "%สอ%"  or h.hosptype like "%สต%"    or h.hosptype like "%ส.ต.%"   or h.hosptype like "%สต.%" ) order by e.hospcode

297
แจ้งปัญหา / ขอความช่วยเหลือ / Re: สอบถามครับ
« เมื่อ: ธันวาคม 07, 2012, 09:02:11 AM »
ลองใช้คำสั่งนี้เป็นแนวทางดูครับ

select r.loginname, o.name, r.report_name, r.access_date_time
from report_access_log r
join opduser o on o.loginname=r.loginname
where r.access_date_time between "2012-12-07 00:00:00" and "2012-12-07 23:59:59"
order by r.loginname, r.report_name


298
ผมส่งออกจาก 3.55.11.20 พบว่ามีการส่งออกเด็กที่มีอายุมากกว่า 60 เดือน ซึ่งทำให้เกิด error NU9242 รบกวนอาจารย์ช่วยตรวจสอบด้วยครับ

299
Report Exchange / Re: ขอทราบคำสั่ง SQL หญิงตั้งครรภ์
« เมื่อ: พฤศจิกายน 27, 2012, 19:22:15 PM »
ตาม อ.เกื้อ ครับ ถ้าีมีข้อมูลใน person_anc_service ก็ต้องเคยมีการลงทะเบียนในบัญชี 2 แล้ว ตอนค้นหาได้ ติ๊กตรงช่อง "แสดงทุกคน" หรือเปล่าครับ เผื่อคนที่ต้องการหานั้น d/c ไปแล้ว ทำให้หาไม่เจอครับ

300
เพิ่มเป็นแบบนี้ครับ

select s.hn, s.vstdate, s.vsttime, s.service7 as finishexam,
sec_to_time(time_to_sec(service7)-time_to_sec(service3)) as timefromvsttime2finishexam
from service_time s
where s.vstdate between '2012-06-11'and '2012-06-18'
and s.service3 is not null
and s.service7 is not null
and s.vsttime >= "08:00:00" and s.service7 <= "16:00:00"
and s.vn in(select vn from ovst where main_dep ='002')
and s.service7>s.service3

หน้า: 1 ... 4 5 [6] 7 8 ... 62