BMS-HOSxP Community
HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: k_toedkiets ที่ มกราคม 17, 2012, 13:53:52 PM
-
ทางทีม Audit เวชระเบียนสอบถามมาว่าทำไมตอนที่พิมพ์ opd card ตรงช่องการแพ้ยา กับประวัติการแพ้ยาถึงไม่สอดคล้องกัน และบางทีก็ไม่มีข้อมูลขึ้น เช่น
1. ถ้าตรงช่องประวัติการแพ้ยา มีชื่อยาที่แพ้ แต่ทำไมตรงช่อง การแพ้ยา ถึงว่างไว้ ทั้งที่พยาบาลเลือกเป็น มีประวัติการแพ้ยาแล้ว (มีประวัติแพ้ยาแล้ว กับ มีอาการแพ้ยา) ต่างกันอย่างไรครับ...
-
อันนี้ต้องฝากพี่ขวดแล้วครับ เพราะต้องให้เจ้าของงานเพิ่มคำสั่งนิดหน่อย อิๆๆ หรือถ้าแก้ไขเองได้ ก็เพิ่มคำสั่งไปได้เลยครับ มันอยู่ใน SubReport 1 ครับ ถ้าผมดูไม่ผิดน่ะ ผมเองก็เพิ่งสงเกตุเห็นเหมือนกัน ถ้ามียาที่แพ้มันต้องขึ้น ""มีประวัติแพ้ยาแล้ว"" ลองแก้ไขดูก่อนก็ได้
-
... เดี๋ยวคงต้องรอ อ.พี่เกื้อ หรือ อ.ป๋าพี่โก้ หรือ อ. ท่านอื่นๆ ที่พออธิบายเรื่องนี้ได้ มาอธิบายเรื่อง การบันทึกข้อมูล ในเรื่องประวัติการแพ้ยาใน HOSxP อีกทีนะครับ
คือผมไม่ค่อยถนัดเรื่อง ทางวิชาการเท่าไร นะครับ ;D ....
... ที่พอบอกได้เบื้องต้นคือ ข้อมูลประวัติการแพ้ยา ที่อยู่ในใบตรวจรักษาผู้ป่วยนอก ตามรูปที่ 2 นั้น ทั้ง 2 จุดมีที่มาของข้อมูลต่างกันครับ ... :D ....
-
... ตรงประวัติการแพ้ยา อันบน ที่เห็นมีรายการยาที่แพ้อยู่ เป็นข้อมูลของยาที่แพ้ที่มีการบันทึกไว้ใน HOSxP ของผู้ป่วยรายนี้ครับ
ส่วน การแพ้ยาที่อยู่ในส่วน ซักประวัติทั่วไป จะนำมาจาก หน้าต่างซักประวัติ จาก การแพ้ยา ตามรูปที่ 1 ที่แนบมานั่นแหละครับ ซึ่งก็คือข้อมูลจาก found_allergy ในตาราง opdscreen นั่นแหล่ะครับ
อันนี้เป็นข้อมูลตาม visit ครับ ... :D ...
-
... ส่วนเรื่องคำสั่งนำข้อมูลประวัติการแพ้ยา ประจำตัวของผู้ป่วยมาแสดงนั้น แต่เดิมผมไปนำข้อมูลมาจากตาราง patient ครับ
แต่ก็มีเพื่อนสมากชิกพบปัญหา หากมีการพิมพ์ใบตรวจรักษานี้ย้อนหลัง ตามกระทู้ที่ผมแนบไว้ด้านล่างครับ
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=24314.0
เลยอยากให้ปรับคำสั่งใหม่ด้วยครับ โดยเอาคำสั่งที่ผมโพสต์ไว้ในกระทู้ที่แจ้งปัญหานี้แหล่ะครับ ไปแทนที่คำสั่งของเดิมด้วยครับ ... :D ....
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=24314.msg207452#msg207452
-
แก้ variable ตัวไหนครับ...
... ส่วนเรื่องคำสั่งนำข้อมูลประวัติการแพ้ยา ประจำตัวของผู้ป่วยมาแสดงนั้น แต่เดิมผมไปนำข้อมูลมาจากตาราง patient ครับ
แต่ก็มีเพื่อนสมากชิกพบปัญหา หากมีการพิมพ์ใบตรวจรักษานี้ย้อนหลัง ตามกระทู้ที่ผมแนบไว้ด้านล่างครับ
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=24314.0
เลยอยากให้ปรับคำสั่งใหม่ด้วยครับ โดยเอาคำสั่งที่ผมโพสต์ไว้ในกระทู้ที่แจ้งปัญหานี้แหล่ะครับ ไปแทนที่คำสั่งของเดิมด้วยครับ ... :D ....
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=24314.msg207452#msg207452
แล้ว (มีประวัติแพ้ยาแล้ว กับ มีอาการแพ้ยา) ต่างกันอย่างไรครับ
-
... ตามที่ท่าน k_toedkiets บอกว่าพยาบาลเลือกเป็น มีประวัติการแพ้ยาแล้ว แต่ไม่แสดงในใบตรวจรักษา พอเข้าใจแล้วครับ
เมื่อสักครู่ก็ได้ไปเปิดดู form คิดว่าเจอปัญหาแล้วครับ ยังงัยเดี๋ยวช่วงดึกจะกลับมาดูให้นะครับ
พอดีว่าวันนี้ ทาง รพ.เป็นเจ้าภาพงานสวดพระอภิธรรม ของครอบครัว จนท.โรงพยาบาลน่ะครับ ต้องไปร่วมงานก่อนครับ ... :D ...
-
แก้ variable ตัวไหนครับ...
... ตอนนี้คงต้องแก้ทั้ง 2 ตัวครับ ... :D ....
... แต่ที่ตอบไว้ก่อน ว่าให้ไปดูที่กระทู้ http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=24314.0
ใช้แก้คำสั่งตัวที่อยู่ด้านบนตามรูปที่ 2 ครับ
เป็นข้อมูลการแพ้ยาประจำตัวของผู้ป่วยครับ ... :D ....
-
ไม่เป็นไรครับ...รอได้ครับ..
-
... ในส่วนของ การแพ้ยา ที่อยู่ในซักประวัติทั่วไป ซึ่งเป็นการบันทึกข้อมูลตามราย visit ต้องไปแก้ไขคำสั่งใน variable ที่ดึงข้อมูล ในตัว form ใบตรวจรักษา โดยจะอยู่ที่ส่วนของ SubReport1 ครับ
ให้เปลี่ยนไปใช้คำสั่งที่ไปเทียบนำเอาชื่อมาจาก found_allergy_type_name ของตาราง found_allergy_type ครับ
copy คำสั่งข้างล่าง ไปวางแทนคำสั่งของ variable เดิมได้เลยครับ ... :D ....
----------------------------------------------------------------------------------------------------------
Value := GetSQLStringData('select f.found_allergy_type_name from opdscreen o '+
'left outer join found_allergy_type f on f.found_allergy = o.found_allergy '+
'where o.vn = "'+DBPipeline['vn']+'" ');
----------------------------------------------------------------------------------------------------------
-
แก้ variable ตัวไหนครับ...
... ตอนนี้คงต้องแก้ทั้ง 2 ตัวครับ ... :D ....
... แต่ที่ตอบไว้ก่อน ว่าให้ไปดูที่กระทู้ http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=24314.0
ใช้แก้คำสั่งตัวที่อยู่ด้านบนตามรูปที่ 2 ครับ
เป็นข้อมูลการแพ้ยาประจำตัวของผู้ป่วยครับ ... :D ....
report ตัวนี้สามารถแก้ได้แล้วครับ
-
... ในส่วนของ การแพ้ยา ที่อยู่ในซักประวัติทั่วไป ซึ่งเป็นการบันทึกข้อมูลตามราย visit ต้องไปแก้ไขคำสั่งใน variable ที่ดึงข้อมูล ในตัว form ใบตรวจรักษา โดยจะอยู่ที่ส่วนของ SubReport1 ครับ
ให้เปลี่ยนไปใช้คำสั่งที่ไปเทียบนำเอาชื่อมาจาก found_allergy_type_name ของตาราง found_allergy_type ครับ
copy คำสั่งข้างล่าง ไปวางแทนคำสั่งของ variable เดิมได้เลยครับ ... :D ....
----------------------------------------------------------------------------------------------------------
Value := GetSQLStringData('select f.found_allergy_type_name from opdscreen o '+
'left outer join found_allergy_type f on f.found_allergy = o.found_allergy '+
'where o.vn = "'+DBPipeline['vn']+'" ');
<เข้าไปแก้ตรงไหนครับ>
----------------------------------------------------------------------------------------------------------
แก้ตรงไหนครับ เพราะหาที่แก้ไม่เจอ
-
olor]
แก้ตรงไหนครับ เพราะหาที่แก้ไม่เจอ
... คลิ๊กเลือกที่แท็ป SubRepor1 ก่อนครับ ตามรูป ... :D ....
-
ส่งฟอร์มของ รพ.ที่ท่านต้องการขึ้นมาบนบอร์ด แห่งนี้..แล้ว ให้ อ.ขวดสอน Online หรือ ทำให้ไปเลยครับ.
อ.ขวดใจดีมาก ๆ สำหรับหนุ่ม ๆ หน้าตาดี..Chisukaจัง..บอกไว้เช่นนั้น.. ;D ;D ;D ;D ;D ;D ;D
-
olor]
แก้ตรงไหนครับ เพราะหาที่แก้ไม่เจอ
... คลิ๊กเลือกที่แท็ป SubRepor1 ก่อนครับ ตามรูป ... :D ....
ต่อเลยครับ
-
ต่อเลยครับ
... นึกว่าแก้ได้แล้ว ;D ...
... ก็ พอเลือกไปที่แท็ป SubRepor1 แล้ว ก็จะเห็น varible ที่ใช้ดึงข้อมูลแล้วครับ ก็เข้าไปแก้คำสั่งของ varible นี้ได้เลยครับ
อยู่แถวๆ มุมบนขวา ของแท็ป SubRepor1 ครับ ... :D ....
-
อ.ขวดใจดีมาก ๆ สำหรับหนุ่ม ๆ หน้าตาดี..Chisukaจัง..บอกไว้เช่นนั้น.. ;D ;D ;D ;D ;D ;D ;D
... ถูกต้องครับ พี่เกื้อ ทุกวันนี้ผมเลยต้อง ใจดี กับ ตัวเอง ตลอด 555
ลำบากเหมือนกันครับ เกิดเป็นคนหน้าตาดี 555555++ ... ;D ;D ;D ...
-
ต่อเลยครับ
... นึกว่าแก้ได้แล้ว ;D ...
... ก็ พอเลือกไปที่แท็ป SubRepor1 แล้ว ก็จะเห็น varible ที่ใช้ดึงข้อมูลแล้วครับ ก็เข้าไปแก้คำสั่งของ varible นี้ได้เลยครับ
อยู่แถวๆ มุมบนขวา ของแท็ป SubRepor1 ครับ ... :D ....
หมายถึง varible 6 ใช่ไหมครับ ถ้าใช่เดี๋ยวตอนบ่ายค่อนแก้ไขครับ...
-
อ.ขวดครับผมลอง import form ที่อ.ส่งมาให้แล้วลองสั่งดูยังขึ้น error แบบนี้ครับ...ในส่วนแพ้ยาของผู้ป่วยแผ่น 2 ช่องบนครับ...
-
Teamviewer ID+Password อ.ขวดจะได้เข้าไปช่วยหาปลาในบ่อครับ... :D :D
-
ที่บ้านไม่ได้เลี้ยงปลาครับ เลี้ยงแต่......บนหัวครับ... 8) 8) 8)
-
อ.ขวดครับผมลอง import form ที่อ.ส่งมาให้แล้วลองสั่งดูยังขึ้น error แบบนี้ครับ...ในส่วนแพ้ยาของผู้ป่วยแผ่น 2 ช่องบนครับ...
... เวอร์ชั่นของ HOSxP ที่ท่าน k_toedkiets ใช้อยู่ตอนนี้คงเก่าเกินไปครับ ในตัว Report เลยยังไม่มี function ReplaceStr ตัวนี้อยู่ครับ
ซึ่ง function ReplaceStr นี่ผมก็ไม่แน่ใจเหมือนกันครับ ว่า อ.mn ได้กรุณาเพิ่มไว้ในตัว ReportBuilder ของ HOSxP เวอร์ชั่นไหน
พอดีวันก่อนที่มีบางท่านแจ้งปัญหาเข้ามา ตอนผมแก้ไขตัวฟอร์ม พอดีเห็นว่ามี function นี้อยู่ เลยใส่เข้ามาด้วยครับ
คือ เวลาที่เราใช้ function GetSQLSubQueryData ในรายงาน เราจะได้เจ้าตัว ' ติดมาในข้อมูลหรือข้อความที่ได้ด้วย
ผมเลยใช้ function ReplaceStr เพื่อเปลี่ยนเจ้าตัว ' ให้เป็นช่องไฟว่างๆแทน เพื่อให้การแสดงข้อความในตัวรายงานดูเรียบร้อยสวยงามขึ้นครับ ... :D ....
-
... ยังงัย ถ้าท่าน k_toedkiets ยังไม่ต้องการปรับเวอร์ชั่นของ HOSxP ก็ลองตัด function นี้ออกไปจากคำสั่งก่อนแล้วกันครับ
ใช้คำสั่งด้านล่างแทนนะครับ ...
-----------------------------------------------------------------------------------------------------------------
if GetSQLIntegerData('select count(*) as cc from opd_allergy where hn = "'+DBPipeline['hn']+'" '+
'and report_date <= "'+FormatDateTime('yyyy-mm-dd',DBPipeline['vstdate'])+'" ') > 0 then
Value := 'ประวัติการแพ้ยา : '
+GetSQLSubQueryData('select agent from opd_allergy where hn = "'+DBPipeline['hn']+'" '+
'and report_date <= "'+FormatDateTime('yyyy-mm-dd',DBPipeline['vstdate'])+'" ')
else
Value := '***ไม่มีประวัติการแพ้ยา';
-----------------------------------------------------------------------------------------------------------------
... แบบนี้คงจะไม่ error แล้วครับ ... :D ...
-
... หรือถ้าต้องการให้ข้อความแพ้ยาที่ได้ ไม่มีตัว ' อยู่ด้วย แล้วก็ยังไม่ต้องการปรับเวอร์ชั่น
ก็รอสักพักนะครับ เดี๋ยวผมจะใส่ function ที่ทำให้ไม่มีตัว ' ในข้อความแพ้ยา ในตัวฟอร์ม OPD Card ให้ครับ
รอสักครู่ครับ ... :D ...
-
อ.ขวดครับ ผมเข้าใจแล้วว่าเกิดจาก V ที่ใช้เก่าเกินไป เพราะผมลองไปนำ คำสั่งที่ อ.โพสมาให้แล้วทำตามที่อ. บอก ใน V 3.54.12.7 ก็สามารถออกมาได้อย่างสวยงามครับ...ถ้าเป็นอย่างนั้น อ.ขวดไม่ต้องปรับอะไรแล้วครับเพราะที่รพ.ผมกำลังจะปรับเวอร์ชั่น เป็น 3.54.12.7 ทั้งระบบ พอดีครับ....ขอบคุณสำหรับคำแนะนำดี ดี ครับ...
-
รอพี่ขวดครับ จะได้ศึกษาการใช้ ReplaceStr ด้วยคนครับ
-
รอพี่ขวดครับ จะได้ศึกษาการใช้ ReplaceStr ด้วยคนครับ
... ใน Report Designer เวอร์ชั่นใหม่ อ.mn ใส่ฟังชั่น ReplaceStr ไว้แล้ว กอล์ฟ การนำไปใช้ก็ตามชื่อเลย คือให้แทนที่ ค่าอะไร ด้วยค่าอะไร ประมาณนี้แหล่ะครับ ดูจาก Difinition จะอธิบายไว้ว่า
function ReplaceStr(SourceString,StringToReplace,ReplaceToString:string): string;
การนำไปใช้ ก็ เช่น สมมุติว่า วาง variable ในรายงาน 1 ตัว แล้วใช้คำสั่งเป็น
Value := 'abcabcabc';
ผลที่ได้เวลาสั่งประมวลผลก็คือ abcabcabc
แต่ถ้าเราต้องการเปลี่ยนค่า a ให้เป็น X- แทน ก็สามารถใช้ฟังชั่น ReplaceStr มาช่วยได้ โดยคำสั่งจะเป็น
Value := ReplaceStr('abcabcabc', 'a', 'X-');
ผลที่ได้เวลาสั่งประมวลผลก็จะกลายเป็น X-bcX-bcX-bc แทน abcabcabc ครับ
คร่าวๆ ประมาณนี้แหล่ะ กอล์ฟ ... :D .....
-
รอพี่ขวดครับ จะได้ศึกษาการใช้ ReplaceStr ด้วยคนครับ
... แต่ถ้าในเวอร์ชั่นเก่า ที่ไม่มีฟังชั่น ReplaceStr เราก็สามารถสร้างเองได้ครับ ตัวอย่างตามฟอร์มใบตรวจรักษาด้านล่างเลย กอล์ฟ
ให้ดูที่ tab Calc ตรง Programs จะเห็นคำสั่งสร้างฟังชั่น ที่ชื่อ ReplaceStr1 อยู่ ส่วนการนำไปใช้ก็ดูที่คำสั่งของ Variable12 ได้เลยครับ
อันนี้ ผมยกให้เป็นเครดิตของ อ.นาจ แห่งลุ่มน้ำนครชัยศรี เลยครับ อ.นาจ แกเคยสอนวิธีสร้างฟังชั่นตัวนี้ไว้นานแล้วครับ
สอนอยู่ใน webboard นี้แหล่ะ แต่ผมจำกระทู้ไม่ได้แล้ว ... :D ....
-
อยากให้ script ใน UE สามารถใช้ ReplaceStr ได้ด้วยครับ ตอนนี้ลองใช้แล้ว error ครับ