Sunday, August 28, 2022

ยกเลิกบังคับการวินิจฉัยก่อนจ่ายยา

 

เคยเจอหรือไม่ ถ้าไม่วินิจฉัยแล้วไปจ่ายยาไม่ได้ หรือกรณียกเลิกการวินิจฉัย ต้องการบันทึกแต่บันทึกไม่ได้ ติด error ยังไม่ได้บันทึก Diagnosis ICD10


สาเหตุเกิดจากกำหนดการบังคับลงวินิจฉัยไว้  วิธีการแก้ไขปัญหานี้คือ ยกเลิกการบังคับลงวินิจฉัยออก ทำอย่างไรมาดูกัน

1.คลิกที่เมนู Tools >>System >>System Setting >> คลิกห้องตรวจ>> ตรวจสอบบังคับห้องตรวจแพทย์บันทึก Diagnosis ICD10  หรือไม่


ให้ทำการปิดการใช้งาน โดยดับเบิลคลิกที่ห้วข้อนั้น จะมีหน้าต่างขึ้นมา ให้เอาติ๊กถูกหน้าใช่ออก แล้วคลิกบันทึก >> คลิกบันทึกอีกครั้ง



2.คลิกที่เมนู Tools >>OPD >>บุคลากรทางการแพทย์ >> ดับเบิลคลิกที่ชื่อบุคลากรที่ต้องการจะยกเลิกบังคับลงผลวินิจฉัยก่อนสั่งยา >>เอาติ๊กถูกหน้าบังคับลงผลวินิจฉัยก่อนสั่งยาออก>> คลิกบันทึก


3.ทำการทดสอบ

หรือนำคำสั่งไปวางใน SQL ด้านล่างไปวางใน SQL Query >>คลิก Execute

UPDATE doctor SET force_diagnosis='N' WHERE active='Y';

UPDATE sys_var  SET    sys_value = 'N'  WHERE    sys_name = 'FORCE_DOCTOR_DX_ICD10_OR_TEXT';






Thursday, September 12, 2019

ทะเบียนรายชื่อ อสม. พร้อมบ้านที่ดูแล



       รายงานนี้ข้อมูลจะแสดงข้อมูลได้ ต้องเข้าไปทำข้อมูล อสม. กับ บ้านที่ อสม.รับผิดชอบก่อนนะครับถึงจะมีรายงานออก

                  

Wednesday, May 8, 2019

ทำไมส่ง Datacorrect ไปลบใน HDC แล้วข้อมูลถึงไม่ลบออก


ถาม :  ผมได้รับเรื่องจากทั้ง รพสต. และ รพ. ให้ตรวจสอบข้อมูลให้หน่อยว่า ทำไมส่งแฟ้ม Datacorrect ไปลบข้อมูลใน HDC แล้วข้อมูลยังไม่เหมือนเดิม ข้อมูลไม่ถูกลบออก

ตอบ : หลังจากตรวจสอบข้อมูลให้ พบว่าเลขบัตรประชาชนของเจ้าหน้าที่ที่ขอลบ ไม่มีข้อมูลในแฟ้ม Provider ของหน่วยบริการ จึงทำให้ข้อมูลไม่ถูกลบออก


หลักการส่งแฟ้ม Datacorrect จะต้องมีข้อมูลที่เป็นข้อมูลหลัก (Primary key) หรือดูจากโปรแกรม datacorrect ก็ได้จะบอกอยู่แล้วว่าต้องการข้อมูลอะไรบ้าง อันนั้นแหล่ะครับคือข้อมูลหลักของแฟ้มนั้นๆ เช่นแฟ้ม specialpp  คีย์หลักคือ PID , PPSPECIAL , DATE_SERV เป็นต้น ถ้าจะขอลบข้อมูลแฟ้มนี้ต้องมีข้อมูลตามที่บอก และต้องตรงกับข้อมูลบน HDC  ที่สำคัญ CID (เลขบัตรประชาชน) ของเจ้าหน้าที่ที่ขอลบจะต้องมีในแฟ้ม PROVIDER ของหน่วยบริการนั้นๆ

สาเหตุที่ยังไม่มีข้อมูลของเจ้าหน้าที่ที่ขอลบ หรือ แฟ้ม PROVIDER ของเจ้าหน้าที่คนนั้นไม่ถูกส่งออกมาจาก HOSXP  อาจเป็นเพราะบันทึกข้อมูลไม่ครบถ้วน ลองมาดูโครงสร้างแฟ้ม PROVIDER กันครับ


ให้ดูที่คอลัมน์ NOT NULL ถ้ามีตัวอักษร Y หมายถึง ข้อมูลนั้นห้ามมีค่าว่าง จากรูปจะเห็นว่า ข้อมูลที่ห้ามว่างคือ
1.รหัสสถานบริการ  (โปรแกรมจะส่งออกมาเอง)
2. เลขที่ผู้ให้บริการ (โปรแกรมจะส่งออกมาเอง)
3. เลขที่บัตรประชาชน (ต้องบันทึกหน้าต่างแพทย์/พยาบาล)
4. ชื่อ (ต้องบันทึกหน้าต่างแพทย์/พยาบาล)
5. นามสกุล (ต้องบันทึกหน้าต่างแพทย์/พยาบาล)
6. เพศ (ต้องบันทึกหน้าต่างแพทย์/พยาบาล)
7. วันเกิด (ต้องบันทึกหน้าต่างแพทย์/พยาบาล)
8. รหัสประเภทบุคคล (ต้องบันทึกหน้าต่างแพทย์/พยาบาล)
9. วันที่เริ่มปฏิบัติงาน (ต้องบันทึกหน้าต่างแพทย์/พยาบาล)
10. วันที่ปรับข้อมูล (โปรแกรมจะส่งออกมาเอง)

ที่นี้มาดูหน้าต่างแพทย์/พยาบาล กันบ้าง อยู่ตรงไหนใน HOSXP
1. ไปที่เมนู tools
2. คลิกที่ system setting
3. คลิกที่เมนูแพทย์/พยาบาล
4. คลิกเลือกคนที่จะทำการตรวจสอบ
5. คลิกที่แก้ไข ตรวจดูในกรอบสี่เหลี่ยม (ห้ามว่าง)  อย่าลืมติ๊กถูกหน้า Active Doctor ด้วยครับ นั่นหมายถึงเจ้าหน้าที่คนนั้นยังทำงานอยู่


ตรวจสอบโดยใช้คำสั่ง sql
select code,pname,fname,lname,sex,birth_date,start_date,active,cid,provider_type_code from doctor
where (cid is null or fname is null or lname is null or sex is null or birth_date is null or start_date is null or provider_type_code is null)
and active='Y'


copy คำสั่ง ไปวางใน sql query แล้วคลิกปุ่ม RUN   ถ้ามีรายชื่อขึ้นมาแสดงว่ามีข้อมูลที่บันทึกไม่ครบ(ในกรอบสี่เหลี่ยมตามภาพ)  ก้อหาข้อมูลมาลงให้ครบแล้วส่งแฟ้ม provider โดยคลิกเลือก person ทุกคน ส่งออกและนำเข้า hdc ใหม่อีกรอบ







Monday, May 6, 2019

ทะเบียนผู้ป่วยเบาหวาน(คลินิก) พร้อมผล A1C ในรอบปี


    เช้านี้มี รพสต. ขอให้ดึงรายชื่อผู้ป่วยเบาหวานพร้อมผลการตรวจ LAB HbA1C ในรอบปีมาให้ดูเพื่อเปรียบเทียบหน่อย นึกอยู่นานว่าจะออกแบบยังงัยดี เอาตามนี้ละกันนะครับ


ตรงคอลัมน์การบันทึก
service หมายถึง ผล lab นั้นเกิดจากการเปิด visit ให้บริการ จะมีเลขที่ VN ของการบริการนั้นให้
coverage หมายถึง การเก็บค่าผล lab จากที่อื่นมาบันทึกหน้าบัญชี 1


จะมีผล lab ให้เลือกได้ ต้องไปใส่รหัส lab 7 หลัก ในตาราง lab_items ฟิล์ด provis_labcode ก่อนนะครับ


รายงานอยู่ในหมวดรายงานท่ามะกา



Monday, April 29, 2019

รายงานตรวจสอบการให้บริการวัคซีน(บัญชี3) ก่อนอายุ



      จากการที่เขตบริการที่ 5 ได้กำหนด QOF62 ในเรื่องของการให้บริการวัคซีนหัดในเด็กต่ำกว่า 1 ปี แล้วมีการกำหนดว่าควรจะอยู่ในช่วงที่กำหนด และผมได้ลองเปิดคู่มือมาตรฐานวัคซีนไปอ่านเจอมาว่าการให้บริการวัคซีนก่อนอายุที่ควรจะได้ จะไม่เกิดภูมิคุ้มกัน เช่น การให้วัคซีนหัด ควรจะให้หลังอายุ 9 เดือนเป็นต้นไป ไม่ควรให้ก่อน 9 เดือน เป็นต้น  ผมเลยทำรายงานตัวนี้มาให้ตรวจสอบกันครับ


แต่ก่อนที่จะใช้รายงานต้องไปกำหนดอายุเริ่มต้นในตาราง wbc_vaccine ก่อนครับ ยกตัวอย่างเช่น
DTPHB1  เด็กควรจะได้รับวัคซีนตั้งแต่ 2 เดือน
DTPHB2  เด็กควรจะได้รับวัคซีนตั้งแต่ 4 เดือน
DTPHB3  เด็กควรจะได้รับวัคซีนตั้งแต่ 6 เดือน เป็นต้น
ทั้งนี้ให้ดูตามคู่มือมาตรฐานวัคซีนประกอบนะครับ


รายงานจะอยู่ในหมวดรายงานท่ามะกา


Sunday, April 21, 2019

รายชื่อผู้ที่ได้รับการคัดกรองมะเร็งลำไส้ (ความครอบคลุม)


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



ให้ดูตรงคอลัมน์หมายเหตุ 
onestop หมายถึงให้บริการผ่านหน้า onestop service หรือบันทึกหน้าจอให้บริการ
บัญชี 1 หมายถึงมีการเก็บความครอบคลุมการตรวจมะเร็งลำไส้แล้วบันทึกที่ปุ่ม ppspecial หรือ CF หน้าบัญชี 1

ดาวน์โหลดรายงานคลิกที่นี่

Tuesday, April 16, 2019

SQL ตอนที่ 1 ทำความรู้จัก



ตอนที่ 1 ทำความรู้จัก   

    ในปัจจุบัน การเก็บข้อมูลสุขภาพต่างๆในงานสาธารณสุข จะถูกเก็บไว้ด้วยโปรแกรมคอมพิวเตอร์ สำเร็จรูป ซึ่งจะถูกส่งออกให้อยู่ในรูปของ 43แฟ้ม และถูกส่งไปยัง HDC (Health Data Center) ของจังหวัด ซึ่งเจ้าหน้าที่สาธารณสุขในปัจจุบันต้องดำเนินการในทุกๆเดือน แต่ข้อมูลสุขภาพเหล่านี้กลับไม่ถูกนำมาใช้ ประโยชน์ได้อย่างเต็มที่ ทั้งๆที่ข้อมูลสุขภาพเหล่านี้มีคุณค่าและประโยชน์อย่างยิ่ง หากเจ้าหน้าที่สาธารณสุข สามารถนำมาใช้ในการวางแผน, เฝ้าระวัง, แก้ไขปัญหาสุขภาพในพื้นที่ จะทำให้การทำงานสาธารณสุขในพื้นที่ ทำได้ง่ายยิ่งขึ้น ส่วนสาเหตุที่เจ้าหน้าที่สาธารณสุขไม่สามารถนำข้อมูลเหล่านี้มาใช้ได้อย่างเต็มที่ เนื่องจากยังขาดทักษะการนำข้อมูลต่างๆมาใช้งาน สำหรับโปรแกรมฐานข้อมูลสุขภาพที่เจ้าหน้าที่สาธารณสุขใช้งานเป็น ประจำ ได้แก่ โปรแกรม Hosxp PCU, โปรแกรม JHCIS ซึ่งโปรแกรมเหล่านี้ใช้ฐานข้อมูลชนิด MySQL ดังนั้น ถ้าต้องการนำข้อมูลสุขภาพออกมาใช้งาน เราจำเป็นจะต้องเรียนรู้การเขียนคำสั่งในภาษา SQL นั่นเอง

1.1 ทำความรู้จักชื่อตาราง (Tables)
          ในฐานข้อมูล(database) 1 ฐาน จะประกอบไปด้วยตารางหลายๆ ตาราง บางตารางเก็บข้อมูล บางตารางเก็บรหัส ซึ่งทุกตารางจะเกี่ยวข้องกับฐานข้อมูลชุดนี้เช่น ฐาน hosxppcu จะประกอบไปด้วยตารางมากกว่า 1000 ตาราง (ซึ่งเราใช้ไม่หมด)




1.2 ทำความรู้จักชื่อฟิล์ด (Fields)
            หมายถึง ที่ซึ่งใช้เก็บข้อมูลเฉพาะในโปรแกรมประเภทการจัดการฐานข้อมูล โดยจัดแบ่งให้แต่ละเขตเก็บข้อมูลแต่ละ เรื่อง เช่น แบ่งเป็นเขต ชื่อ นามสกุล ที่อยู่ หมายเลขโทรศัพท์ อายุ เพศ ฯ ถ้าเรานำเขตข้อมูลเหล่านี้ หลาย ๆ เขตมารวมกัน จะเรียกว่า "ระเบียน" (record) ยกตัวอย่างใน hosxppcu ตาราง person ประกอบด้วยหลายฟิล์ด เช่น pname (เก็บคำนำหน้าชื่อ), fname(เก็บชื่อ) ,lname(เก็บนามสกุล), birthdate(เก็บ วดป.เกิด) เป็นต้น

1.3 ทำความรู้จักคีย์หลัก (Primary key)
               คือเป็นกำหนดไม่ให้ฟิล์ดนั้นมีข้อมูลซ้ำ เช่น การกำหนด person_id ในตาราง person เป็น primary key หมายถึงในตาราง person จะไม่มีเลขซ้ำในฟิล์ดของ person_id ยกตัวอย่างเช่น person_id เป็นเลข 1  ถ้ามีการบันทึกเลข 1 เข้ามาซ้ำของเดิม ระบบจะไม่ให้บันทึก หรือการเตือนว่ามีเลขบัตรประชาชนนี้อยู่แล้วในฐานข้อมูล 


SQL คืออะไร
                 คือ ภาษาคอมพิวเตอร์ ที่ใช้ในการจัดการกับฐานข้อมูลโดยเฉพาะ เช่น สร้างฐานข้อมูล เพิ่มข้อมูล แก้ไขข้อมูล ลบข้อมูล เป็นต้น ภาษา SQL เป็นภาษามาตรฐานสำหรับระบบฐานข้อมูล เป็นภาษาที่พัฒนาขึ้นมาโดยบริษัท IBM ภาษา SQL นี้ได้รับความนิยมอย่างสูง เพราะง่ายต่อความเข้าใจ โดยใช้ภาษาอังกฤษในการสื่อในเวลาเขียน คำสั่ง ดังนั้นหากเราแปลภาษาอังกฤษไปด้วยเวลาเขียนคำสั่ง ก็ทำให้เราเข้าใจภาษา SQL ได้ไม่ยาก


สิ่งที่ควรรู้ก่อนเริ่มเขียนคำสั่ง

1.รู้จักชื่อของตาราง เช่น ตาราง person, ตาราง sex
2.รู้จักว่าตารางไหน เก็บข้อมูลอะไร เช่น ตาราง person เก็บข้อมูลประชากรแต่ละคน ซึ่งมีรายละเอียดต่างๆ เช่น เพศ, สถานะสมรส ฯลฯ
3.รู้จักชื่อ Column ของตาราง เช่น ตาราง person มี Column ชื่อ fname เก็บข้อมูลชื่อของประชากร, lname เก็บข้อมูลนามสกุลของประชากร, sex เก็บข้อมูลเพศของประชากร เป็นต้น
4.รู้จักชนิดของข้อมูลที่ถูกเก็บในแต่ละ Column เช่น Column ชื่อ fname เก็บข้อมูลเป็นแบบตัวอักษร, sex เก็บข้อมูลเป็นตัวเลข 1 กับ 2 , birthdate เก็บข้อมูลเป็นวันที่ '2013-08-25' เป็นต้น
5.รู้จักใช้เครื่องมือ/โปรแกรม ที่เราจะป้อนคำสั่ง SQL เช่น Navicat, SQL Query ใน Hosxp PCU เป็นต้น 

ตารางที่ใช้บ่อยในการเขียนคำสั่ง
ทะเบียนรายชื่อ     : person ,patient
บ้าน : house ,patient
หมู่บ้าน : village
คลินิก : clinic
ทะเบียนโรคเรื้อรัง : person_chronic, clinicmember
เกี่ยวกับประวัติการรักษา : ovst, vn_stat, opitemrece
เกี่ยวกับดูแลช่องปาก : dental_care
เกี่ยวกับหัตถการทันตฯ : dtmain ,dttm
ตารางยา  : drugitems  
ตารางค่าบริการ : nondrugitems
ตารางหัตถการ : er_oper_code
ตาราง แพทย์ พยาบาล : doctor
ตารางหัตถการแผนไทย : health_med_operation_code
ตาราง icd10tm : icd10tm_operation
ตารางรหัสโรค : icd101
ตารางชื่อโรค506 : name506
ตารางเก็บ vital sign : opdscreen
ตารางเก็บรหัสการให้บริการในชุมชน :ovst_community_service, ovst_community_service_type
ตารางเก็บรหัสการให้บริการส่งเสริมฯ รายบุคคล:Pp_special ,pp_special_type
ทะเบียนเก็บรายชื่อหญิงตั้งครรภ์ : person_anc
ทะเบียนตรวจภาวะแทรกซ้อน : person_dmht_
ทะเบียนเก็บรายชื่อเด็ก epi 1+(บัญชี 4) : person_epi
ทะเบียนภาวะโภชนาการ 1+ (บัญชี 4) : person_epi_nutrition
ทะเบียนเก็บรายชื่อเด็ก epi ต่ำกว่า 1 ปี (บัญชี 3) : person_wbc
ทะเบียนภาวะโภชนาการ<1 ปี (บัญชี 3) : person_wbc_nutrition
ทะเบียนหญิงคลอด : person_labour
ทะเบียนวัคซีนหน้า onestop : ovst_vaccine
ตารางรหัสวัคซีน : wbc_vaccine(บัญชี 3) ,epi_vaccine(บัญชี 4)
,person_vaccine(หน้า onestop และวัคซีนทั้งหมด), student_vaccine(บัญชี 5),women_vaccine (หญิงตั้งครรภ์)
งานอนามัยโรงเรียน : village_school