BMS-HOSxP Community
HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: Bluebird ที่ มกราคม 18, 2016, 16:35:13 PM
-
พอดี พี่พยาบาลเค้าต้อง เลขที่คิวล่วงหน้าที่ออกในใบนัด ผมไม่รู้จะดึงจาก เลขตารางไหน เพราะ ปกติ คิวรับบริการจะดึงจาก ตาราง ovst แต่กรณีนี้ ต้องการให้เลขที่คิวออก ณ วันที่ลงนัด ซึ่งยังไม่มีข้อมูลในตารา่ง OVST อีก ช่วยคิดทีครับ
-
สงสัยคงต้องส่งตรวจล่วงหน้าครับ ถ้าอยากได้เลข QN
-
พอดี พี่พยาบาลเค้าต้อง เลขที่คิวล่วงหน้าที่ออกในใบนัด ผมไม่รู้จะดึงจาก เลขตารางไหน เพราะ ปกติ คิวรับบริการจะดึงจาก ตาราง ovst แต่กรณีนี้ ต้องการให้เลขที่คิวออก ณ วันที่ลงนัด ซึ่งยังไม่มีข้อมูลในตารา่ง OVST อีก ช่วยคิดทีครับ
ถ้าออกคิวนัดคนแรก แต่พอถึงวันนัดจริง มาเป็นคนที่ 10 จะให้เป็นคิวที่ 1 เลยไหมครับ
กลับกันคนที่นัดเป็นคนที่ 10 บังเอิญมาแต่เช้า ได้ลำดับที่ 2 ของวัน จะให้ไปรอเป็นคิวที่ 10 ไหมครับ
ลองถามพยาบาลอีกที
-
ถ้าออกคิวนัดคนแรก แต่พอถึงวันนัดจริง มาเป็นคนที่ 10 จะให้เป็นคิวที่ 1 เลยไหมครับ
กลับกันคนที่นัดเป็นคนที่ 10 บังเอิญมาแต่เช้า ได้ลำดับที่ 2 ของวัน จะให้ไปรอเป็นคิวที่ 10 ไหมครับ
ลองถามพยาบาลอีกที
ใช่ครับ พยาบาลต้องการแบบนั้นครับ เพื่อ ต้องการ ให้คนไข้จะได้ให้ความสำคัญกับ คิวนัดหมาย เพราะ ถ้า เค้ามา ผิดนัด ก็ จะเป็น คนไข้ คิว ปกติ ทันทีครับ
ไม่ว่า เค้า จะมาช้า กว่าเคส คิวปกติ ถ้า เค้าใบนัดคิวแรก ก็จะได้ ซักประวัติก่อน คิวปกติ ยกเว้นแต่เคสที่ ความเร่งด่วน
ซึ่งที่ผมทำไว้ ตอนนี้ ใบนัด จะดึงจาก ลำดับ oapp_id เป็นลำดับคิว
แต่ ใบนำทางตอน Visit (ส่งตรวจล่วงหน้า) นับจาก ลำดับ vn
-
พอดี พี่พยาบาลเค้าต้อง เลขที่คิวล่วงหน้าที่ออกในใบนัด ผมไม่รู้จะดึงจาก เลขตารางไหน เพราะ ปกติ คิวรับบริการจะดึงจาก ตาราง ovst แต่กรณีนี้ ต้องการให้เลขที่คิวออก ณ วันที่ลงนัด ซึ่งยังไม่มีข้อมูลในตารา่ง OVST อีก ช่วยคิดทีครับ
ถ้าออกคิวนัดคนแรก แต่พอถึงวันนัดจริง มาเป็นคนที่ 10 จะให้เป็นคิวที่ 1 เลยไหมครับ
กลับกันคนที่นัดเป็นคนที่ 10 บังเอิญมาแต่เช้า ได้ลำดับที่ 2 ของวัน จะให้ไปรอเป็นคิวที่ 10 ไหมครับ
ลองถามพยาบาลอีกที
อยากได้แบบนี้ ของคลีนิค คับ
-
a := GetSQLStringData('select oapp_id from oapp where nextdate="'+FormatDateTime('yyyy-mm-dd',DBPipeline['nextdate'])+'" '+
' and clinic="'+DBPipeline['clinic']+'" '+
' order by oapp_id limit 1 ');
Value := GetSQLStringData('select count(oapp_id) as cc from oapp where '+
' nextdate="'+FormatDateTime('yyyy-mm-dd',DBPipeline['nextdate'])+'" '+
' and clinic="'+DBPipeline['clinic']+'" and oapp_id between "'+a+'" and "'+DBPipeline['oapp_id']+'" '+
' order by oapp_id ');
-
ปัญหานี้ทาง bms เคยได้ออกแบบ flow การทำงานมาช่วยโดยใช้ระบบ Previsit queue ครับ
1. คนไข้มา รพ.
2. ตรวจสอบประเภทคนไข้ (นัด , ธรรมดา , อื่นๆ ) และออกคิวตามประเภท
3. ติดต่อห้องบัตรตามลำดับ และประเภทที่ได้รับ
4. รับบริการตามจุดที่ส่งตรวจ