Ignore:
Timestamp:
Oct 14, 2012, 4:06:20 PM (12 years ago)
Author:
Sam Habiel
Message:

Updated routines with changes for patch 1 and 5. Patch 5 fixes several bugs:
Vitals date range now includes today's date.
Empty lists are now created in advance for Outpatient Measures.
Inverse date display for visit was incorrect. That is fixed.
Outpatient Quality Measure Set in Parameters is now used; before it was ignored.
In C0QUPDT, (all previous are in C0QMU12), the variable C0QNALT is newed. This variable is a flag to indicate whether a measure uses the reminders package or uses the quality measures package for a patient list. Previously, if not newed it adversely affects subsequenet processing of lists, as the counts of the patients depends on the value of the flag. For example, a measurement set that mixes quality measures with performance measures will calculate wrong counts for the quality measures.

Patch 1 adds support for real-data MU ERx Measure based on data from the eRx vendor.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • qrda/C0Q/trunk/p/C0QMU12.m

    r1501 r1572  
    1 C0QMU12 ;JJOH/ZAG/GPL - Patient Reminder List ; 7/31/12 12:34pm
    2         ;;1.0;C0Q;;May 21, 2012;Build 63
     1C0QMU12 ;JJOH/ZAG/GPL - Patient Reminder List ; 10/10/12 11:28am
     2        ;;1.0;QUALITY MEASURES;**1**;May 21, 2012;Build 32
    33        ;
    44        ;2011 Zach Gonzales<zach@linux.com> - Licensed under the terms of the GNU
     
    7878        K C0QLIST
    7979        S C0QLIST(ZYR_"HasDemographics")=""
    80         S C0QLIST(ZYR_"Patient")=""
     80        S C0QLIST(ZYR_"Patient")="" ; VEN/SMH - Is this needed? Not used in EP.
    8181        S C0QLIST(ZYR_"HasProblem")=""
    8282        S C0QLIST(ZYR_"HasAllergy")=""
    8383        S C0QLIST(ZYR_"HasMed")=""
     84        S C0QLIST(ZYR_"HasERX")="" ; VEN/SMH C0Q*1*5
     85        S C0QLIST(ZYR_"HasMedRecon")="" ; VEN/SMH C0Q*1*5
    8486        S C0QLIST(ZYR_"HasVitalSigns")=""
    8587        S C0QLIST(ZYR_"HasMedOrders")=""
     
    224226        D DT^DILF(,"JULY 3,2011",.C0QSDT) ; START DATE
    225227        D DT^DILF(,"T",.C0QEDT) ; END DATE TODAY
     228        S C0QEDT=C0QEDT+.999999 ; Move to the end of the day! VEN/SMH C0Q*1*5
    226229        D VITALS^ORQQVI(.VITRSLT,DFN,C0QSDT,C0QEDT) ; CALL FAST VITALS
    227230        I $D(VITRSLT) D  ;ZWR VITRSLT B  ;
     
    347350        S ZI="" ; BEGIN AT LATEST DATE FOR THIS LOC IN VISIT FILE
    348351        F  S ZI=$O(^AUPNVSIT("AHL",ULOC,ZI)) Q:(ZI="")!(ZI>IDTE)  D  ; FOR EACH DATE
    349         . W !,$$FMTE^XLFDT(9999999-ZI) ;B  ;
     352        . N C0QDATE S C0QDATE=9999999-$P(ZI,".")_"."_$P(ZI,".",2) ; VEN/SMH *5
     353        . W !,$$FMTE^XLFDT(C0QDATE) ; VEN/SMH *5
    350354        . I ZI="" Q  ;
    351355        . N ZJ S ZJ=""
     
    389393        S DFN=""
    390394        S ZYR=ZYR_"EP-"
     395        D INITCLST ; VEN/SMH - Initialize Empty Lists just in case we don't have
     396                   ; any. C0Q*1*5
    391397        F  S DFN=$O(C0QLIST(ZYR_"ALL-PATIENTS",DFN)) Q:DFN=""  D  ; EACH PATIENT
    392398        . D DEMO^C0QMU122
     
    398404        . D VITALS
    399405        D FILE ; FILE THE PATIENT LISTS
    400         N C0QCIEN
    401         S ZI=""
     406        ;
     407        ; Now process eRx MU measures for these patients
     408        ; Check for eRx template and code first; if they exist, run the code
     409        I $D(^C0PX("B","GETMEDS6")),$L($T(SOAP^C0PWS2)) DO
     410        . N C0QDEBUG S C0QDEBUG=1 ; This causes the code to print out data;
     411        . D EN^C0QMUERX($$PATLN^C0QMU12(ZYR_"HasERX")) ; Pass the eRx patient list
     412        ;
     413        N ZI S ZI=""
    402414        F  S ZI=$O(C0QPARM(ZI)) Q:ZI=""  D  ;
    403         . S C0QCIEN=C0QPARM(ZI,"EPMeasurementSet") ; ien of measurement set
    404         . D UPDATE^C0QUPDT(.G,C0QCIEN) ; UPDATE THE MU MEASUREMENT SET
     415        . N C0QDEBUG S C0QDEBUG=1 ; This causes the code to print out data;
     416        . D UPDATE^C0QUPDT(.G,C0QPARM(ZI,"EPMeasurementSet")) ; UPDATE THE MU MEASUREMENT SET
     417        . ; VEN/SMH -- Quality Set missing for Outpatient -- adding
     418        . D UPDATE^C0QUPDT(.G,C0QPARM(ZI,"EPQualitySet")) ; C0Q*1*5
    405419        Q
    406420        ;
Note: See TracChangeset for help on using the changeset viewer.