KIDS Distribution saved on Oct 22, 2012@17:41:17 FRDGHJKLFGHJKL **KIDS**:C0Q*1.0*6^ **INSTALL NAME** C0Q*1.0*6 "BLD",7920,0) C0Q*1.0*6^QUALITY MEASURES^0^3121022^y "BLD",7920,1,0) ^^6^6^3121022^ "BLD",7920,1,1,0) Created by Sam Habiel on 22nd of October, 2012 CE. "BLD",7920,1,2,0) "BLD",7920,1,3,0) Adds support for using "Model" Quality and Performance Measure Sets, "BLD",7920,1,4,0) which will get copied by the software for making a new measure set. "BLD",7920,1,5,0) "BLD",7920,1,6,0) Rest of documentation todo. "BLD",7920,4,0) ^9.64PA^1130580001.401^1 "BLD",7920,4,1130580001.401,0) 1130580001.401 "BLD",7920,4,1130580001.401,2,0) ^9.641^1130580001.401^1 "BLD",7920,4,1130580001.401,2,1130580001.401,0) C0Q PARAMETER (File-top level) "BLD",7920,4,1130580001.401,2,1130580001.401,1,0) ^9.6411^6.2^2 "BLD",7920,4,1130580001.401,2,1130580001.401,1,6.1,0) MODEL PERFORMANCE MEASURE SET "BLD",7920,4,1130580001.401,2,1130580001.401,1,6.2,0) MODEL QUALITY MEASURE SET "BLD",7920,4,1130580001.401,222) y^n^p^^^^n^^n "BLD",7920,4,1130580001.401,224) "BLD",7920,4,"APDD",1130580001.401,1130580001.401) "BLD",7920,4,"APDD",1130580001.401,1130580001.401,6.1) "BLD",7920,4,"APDD",1130580001.401,1130580001.401,6.2) "BLD",7920,4,"B",1130580001.401,1130580001.401) "BLD",7920,6.3) 1 "BLD",7920,"KRN",0) ^9.67PA^779.2^20 "BLD",7920,"KRN",.4,0) .4 "BLD",7920,"KRN",.401,0) .401 "BLD",7920,"KRN",.402,0) .402 "BLD",7920,"KRN",.402,"NM",0) ^9.68A^1^1 "BLD",7920,"KRN",.402,"NM",1,0) C0Q EDIT OUPATIENT PARMS FILE #1130580001.401^1130580001.401^0 "BLD",7920,"KRN",.402,"NM","B","C0Q EDIT OUPATIENT PARMS FILE #1130580001.401",1) "BLD",7920,"KRN",.403,0) .403 "BLD",7920,"KRN",.5,0) .5 "BLD",7920,"KRN",.84,0) .84 "BLD",7920,"KRN",3.6,0) 3.6 "BLD",7920,"KRN",3.8,0) 3.8 "BLD",7920,"KRN",9.2,0) 9.2 "BLD",7920,"KRN",9.8,0) 9.8 "BLD",7920,"KRN",9.8,"NM",0) ^9.68A^2^2 "BLD",7920,"KRN",9.8,"NM",1,0) C0QMU12^^0^B351357107 "BLD",7920,"KRN",9.8,"NM",2,0) C0QMU123^^0^B4142401 "BLD",7920,"KRN",9.8,"NM","B","C0QMU12",1) "BLD",7920,"KRN",9.8,"NM","B","C0QMU123",2) "BLD",7920,"KRN",19,0) 19 "BLD",7920,"KRN",19.1,0) 19.1 "BLD",7920,"KRN",101,0) 101 "BLD",7920,"KRN",409.61,0) 409.61 "BLD",7920,"KRN",771,0) 771 "BLD",7920,"KRN",779.2,0) 779.2 "BLD",7920,"KRN",870,0) 870 "BLD",7920,"KRN",8989.51,0) 8989.51 "BLD",7920,"KRN",8989.52,0) 8989.52 "BLD",7920,"KRN",8994,0) 8994 "BLD",7920,"KRN","B",.4,.4) "BLD",7920,"KRN","B",.401,.401) "BLD",7920,"KRN","B",.402,.402) "BLD",7920,"KRN","B",.403,.403) "BLD",7920,"KRN","B",.5,.5) "BLD",7920,"KRN","B",.84,.84) "BLD",7920,"KRN","B",3.6,3.6) "BLD",7920,"KRN","B",3.8,3.8) "BLD",7920,"KRN","B",9.2,9.2) "BLD",7920,"KRN","B",9.8,9.8) "BLD",7920,"KRN","B",19,19) "BLD",7920,"KRN","B",19.1,19.1) "BLD",7920,"KRN","B",101,101) "BLD",7920,"KRN","B",409.61,409.61) "BLD",7920,"KRN","B",771,771) "BLD",7920,"KRN","B",779.2,779.2) "BLD",7920,"KRN","B",870,870) "BLD",7920,"KRN","B",8989.51,8989.51) "BLD",7920,"KRN","B",8989.52,8989.52) "BLD",7920,"KRN","B",8994,8994) "FIA",1130580001.401) C0Q PARAMETER "FIA",1130580001.401,0) ^C0Q(401, "FIA",1130580001.401,0,0) 1130580001.401 "FIA",1130580001.401,0,1) y^n^p^^^^n^^n "FIA",1130580001.401,0,10) "FIA",1130580001.401,0,11) "FIA",1130580001.401,0,"RLRO") "FIA",1130580001.401,0,"VR") 1.0^C0Q "FIA",1130580001.401,1130580001.401) 1 "FIA",1130580001.401,1130580001.401,6.1) "FIA",1130580001.401,1130580001.401,6.2) "KRN",.402,1734,-1) 0^1 "KRN",.402,1734,0) C0Q EDIT OUPATIENT PARMS^3121019.1511^@^1130580001.401^^@^3121022 "KRN",.402,1734,"DIAB",1,1,1130580001.4013,0) ALL "KRN",.402,1734,"DIAB",1,1,1130580001.411,0) ALL "KRN",.402,1734,"DR",1,1130580001.401) .01;.02;.03;2;2.1;2.2;2.3;3;6.1;6.2; "KRN",.402,1734,"DR",2,1130580001.4013) .01:.02 "KRN",.402,1734,"DR",2,1130580001.411) .01 "MBREQ") 0 "ORD",7,.402) .402;7;;;EDEOUT^DIFROMSO(.402,DA,"",XPDA);FPRE^DIFROMSI(.402,"",XPDA);EPRE^DIFROMSI(.402,DA,$E("N",$G(XPDNEW)),XPDA,"",OLDA);;EPOST^DIFROMSI(.402,DA,"",XPDA);DEL^DIFROMSK(.402,"",%) "ORD",7,.402,0) INPUT TEMPLATE "PKG",214,-1) 1^1 "PKG",214,0) QUALITY MEASURES^C0Q^Tracks and Prints Quality Measures "PKG",214,20,0) ^9.402P^^ "PKG",214,22,0) ^9.49I^1^1 "PKG",214,22,1,0) 1.0^3120731^3121002^8 "PKG",214,22,1,"PAH",1,0) 6^3121022 "PKG",214,22,1,"PAH",1,1,0) ^^6^6^3121022 "PKG",214,22,1,"PAH",1,1,1,0) Created by Sam Habiel on 22nd of October, 2012 CE. "PKG",214,22,1,"PAH",1,1,2,0) "PKG",214,22,1,"PAH",1,1,3,0) Adds support for using "Model" Quality and Performance Measure Sets, "PKG",214,22,1,"PAH",1,1,4,0) which will get copied by the software for making a new measure set. "PKG",214,22,1,"PAH",1,1,5,0) "PKG",214,22,1,"PAH",1,1,6,0) Rest of documentation todo. "QUES","XPF1",0) Y "QUES","XPF1","??") ^D REP^XPDH "QUES","XPF1","A") Shall I write over your |FLAG| File "QUES","XPF1","B") YES "QUES","XPF1","M") D XPF1^XPDIQ "QUES","XPF2",0) Y "QUES","XPF2","??") ^D DTA^XPDH "QUES","XPF2","A") Want my data |FLAG| yours "QUES","XPF2","B") YES "QUES","XPF2","M") D XPF2^XPDIQ "QUES","XPI1",0) YO "QUES","XPI1","??") ^D INHIBIT^XPDH "QUES","XPI1","A") Want KIDS to INHIBIT LOGONs during the install "QUES","XPI1","B") NO "QUES","XPI1","M") D XPI1^XPDIQ "QUES","XPM1",0) PO^VA(200,:EM "QUES","XPM1","??") ^D MG^XPDH "QUES","XPM1","A") Enter the Coordinator for Mail Group '|FLAG|' "QUES","XPM1","B") "QUES","XPM1","M") D XPM1^XPDIQ "QUES","XPO1",0) Y "QUES","XPO1","??") ^D MENU^XPDH "QUES","XPO1","A") Want KIDS to Rebuild Menu Trees Upon Completion of Install "QUES","XPO1","B") NO "QUES","XPO1","M") D XPO1^XPDIQ "QUES","XPZ1",0) Y "QUES","XPZ1","??") ^D OPT^XPDH "QUES","XPZ1","A") Want to DISABLE Scheduled Options, Menu Options, and Protocols "QUES","XPZ1","B") NO "QUES","XPZ1","M") D XPZ1^XPDIQ "QUES","XPZ2",0) Y "QUES","XPZ2","??") ^D RTN^XPDH "QUES","XPZ2","A") Want to MOVE routines to other CPUs "QUES","XPZ2","B") NO "QUES","XPZ2","M") D XPZ2^XPDIQ "RTN") 2 "RTN","C0QMU12") 0^1^B351357107 "RTN","C0QMU12",1,0) C0QMU12 ;JJOH/ZAG/GPL - Patient Reminder List ; 10/22/12 4:29pm "RTN","C0QMU12",2,0) ;;1.0;QUALITY MEASURES;**1,5,6**;May 21, 2012;Build 1 "RTN","C0QMU12",3,0) ; "RTN","C0QMU12",4,0) ;2011 Zach Gonzales - Licensed under the terms of the GNU "RTN","C0QMU12",5,0) ;General Public License See attached copy of the License. "RTN","C0QMU12",6,0) ; "RTN","C0QMU12",7,0) ; GPL - THIS ROUTINE IS A COPY OF JJOHMU11 THAT HAS BEEN MODIFIED "RTN","C0QMU12",8,0) ; FOR MEANINGFUL USE CALCULATION FOR FISCAL YEAR 2012 AT OROVILLE HOSPITAL "RTN","C0QMU12",9,0) ; "RTN","C0QMU12",10,0) C0QPFN() Q 1130580001.401 ; PARAMETER FILE "RTN","C0QMU12",11,0) C0QPCFN() Q 1130580001.411 ; CLINIC SUBFILE "RTN","C0QMU12",12,0) C0QMFN() Q 1130580001.201 ; FILE NUMBER FOR C0Q MEASUREMENT SET FILE "RTN","C0QMU12",13,0) C0QMMFN() Q 1130580001.2011 ; FN FOR MEASURE SUBFILE "RTN","C0QMU12",14,0) INIT(ZARY,ZTYP) ; INITIALIZE THE PARAMETERS FOR BUILDING PATIENT LISTS "RTN","C0QMU12",15,0) ; ZARY IS PASSED BY NAME "RTN","C0QMU12",16,0) ; ZTYP IS "INP" OR "EP" "RTN","C0QMU12",17,0) N ZMU S ZMU="MU12" ; THIS IS THE ONLY HARD CODED VALUE LEFT "RTN","C0QMU12",18,0) ; TBD - CHANGE IT TO A READ FROM SYSTEM PARAMETERS "RTN","C0QMU12",19,0) K @ZARY ; CLEAR RETURN ARRAY "RTN","C0QMU12",20,0) N ZIEN,ZCNT,ZX "RTN","C0QMU12",21,0) I $O(^C0Q(401,"MUTYP",ZMU,ZTYP,""))="" D Q ; OOPS NO RECORD THERE "RTN","C0QMU12",22,0) . W !,"ERROR, NO PARAMETERS AVAILABLE" "RTN","C0QMU12",23,0) S ZIEN="" "RTN","C0QMU12",24,0) S ZCNT=0 "RTN","C0QMU12",25,0) F S ZIEN=$O(^C0Q(401,"MUTYP",ZMU,ZTYP,ZIEN)) Q:ZIEN="" D ; "RTN","C0QMU12",26,0) . S ZCNT=ZCNT+1 "RTN","C0QMU12",27,0) . S @ZARY@(ZCNT,"IEN")=ZIEN "RTN","C0QMU12",28,0) . S @ZARY@(ZCNT,"MU")=$$GET1^DIQ($$C0QPFN,ZIEN_",",.02) "RTN","C0QMU12",29,0) . S @ZARY@(ZCNT,"TYPE")=$$GET1^DIQ($$C0QPFN,ZIEN_",",.03) "RTN","C0QMU12",30,0) . ; "RTN","C0QMU12",31,0) . ; Inpatient "RTN","C0QMU12",32,0) . S (ZX,@ZARY@(ZCNT,"InpatientMeasurementSet"))=$$GET1^DIQ($$C0QPFN,ZIEN_",",1,"I") "RTN","C0QMU12",33,0) . S @ZARY@(ZCNT,"InpatientBeginDate")=$$GET1^DIQ($$C0QMFN,ZX_",",.02,"I") "RTN","C0QMU12",34,0) . S @ZARY@(ZCNT,"InpatientEndDate")=$$GET1^DIQ($$C0QMFN,ZX_",",.03,"I") "RTN","C0QMU12",35,0) . S @ZARY@(ZCNT,"InpatientQualitySet")=$$GET1^DIQ($$C0QPFN,ZIEN_",",1.1,"I") "RTN","C0QMU12",36,0) . ; "RTN","C0QMU12",37,0) . ; Outpatient "RTN","C0QMU12",38,0) . S (ZX,@ZARY@(ZCNT,"EPMeasurementSet"))=$$GET1^DIQ($$C0QPFN,ZIEN_",",2,"I") "RTN","C0QMU12",39,0) . S @ZARY@(ZCNT,"EPBeginDate")=$$GET1^DIQ($$C0QMFN,ZX_",",.02,"I") "RTN","C0QMU12",40,0) . S @ZARY@(ZCNT,"EPEndDate")=$$GET1^DIQ($$C0QMFN,ZX_",",.03,"I") "RTN","C0QMU12",41,0) . S @ZARY@(ZCNT,"EPQualitySet")=$$GET1^DIQ($$C0QPFN,ZIEN_",",2.1,"I") "RTN","C0QMU12",42,0) . S @ZARY@(ZCNT,"EPModelPerfSet")=$$GET1^DIQ($$C0QPFN,ZIEN_",",6.1,"I") "RTN","C0QMU12",43,0) . S @ZARY@(ZCNT,"EPModelQualitySet")=$$GET1^DIQ($$C0QPFN,ZIEN_",",6.2,"I") "RTN","C0QMU12",44,0) . ; "RTN","C0QMU12",45,0) . D CLEAN^DILF "RTN","C0QMU12",46,0) . D LIST^DIC($$C0QPCFN,","_ZIEN_",",".01I") "RTN","C0QMU12",47,0) . I $D(^TMP("DIERR",$J)) D Q ; ERROR READING CLINIC LIST "RTN","C0QMU12",48,0) . . W !,"ERROR READING CLINIC PARAMETER LIST" "RTN","C0QMU12",49,0) . M @ZARY@(ZCNT,"CLINICS")=^TMP("DILIST",$J) "RTN","C0QMU12",50,0) ; "RTN","C0QMU12",51,0) Q "RTN","C0QMU12",52,0) ; "RTN","C0QMU12",53,0) BUILD ; CALL ALL AND DIS AND BUILD THE GRSLT ARRAY or print or create "RTN","C0QMU12",54,0) ; patient lists "RTN","C0QMU12",55,0) ;N GRSLT ; ARRAY FOR RESULTS "RTN","C0QMU12",56,0) I '$D(C0QSS) S C0QSS=0 ;default don't build spreadsheet array "RTN","C0QMU12",57,0) I '$D(C0QPR) S C0QPR=0 ;default don't print out results "RTN","C0QMU12",58,0) I '$D(C0QPL) S C0QPL=1 ;default do create patient lists "RTN","C0QMU12",59,0) S ZYR="MU12-" "RTN","C0QMU12",60,0) D INITCLST ; initialize C0QLIST "RTN","C0QMU12",61,0) N G1 ; ONE SET OF VALUES - RNF1 FORMAT "RTN","C0QMU12",62,0) N C0QPARM "RTN","C0QMU12",63,0) D INIT("C0QPARM","INP") ; initialize inpatient parms "RTN","C0QMU12",64,0) I $O(C0QPARM(""))="" D Q ; no parms for inpatient "RTN","C0QMU12",65,0) . W !,"No inpatient parameters" "RTN","C0QMU12",66,0) N ZDIV S ZDIV="" "RTN","C0QMU12",67,0) F S ZDIV=$O(C0QPARM(ZDIV)) Q:ZDIV="" D ; for each inpatient division "RTN","C0QMU12",68,0) . D ALL ; all currently admitted patients in the hospital "RTN","C0QMU12",69,0) . D DIS ; all patients discharged since the reporting period began "RTN","C0QMU12",70,0) . I C0QSS D ZWRITE^C0QUTIL("GRSLT") "RTN","C0QMU12",71,0) . ;D ICUPAT ; GENERATE ICU PATIENT LIST "RTN","C0QMU12",72,0) . I C0QPL D ; "RTN","C0QMU12",73,0) . . D FILE ; FILE THE PATIENT LISTS "RTN","C0QMU12",74,0) . . D UPDATE^C0QUPDT(.G,C0QPARM(ZDIV,"InpatientMeasurementSet")) ; "RTN","C0QMU12",75,0) . . D UPDATE^C0QUPDT(.G,C0QPARM(ZDIV,"InpatientQualitySet")) ; "RTN","C0QMU12",76,0) . K C0QLIST "RTN","C0QMU12",77,0) Q "RTN","C0QMU12",78,0) ; "RTN","C0QMU12",79,0) INITCLST ; initialize C0QLIST "RTN","C0QMU12",80,0) ; INITIALIZE LISTS "RTN","C0QMU12",81,0) ; this is done so that if there are no matching patients, the patient list "RTN","C0QMU12",82,0) ; will be zeroed out "RTN","C0QMU12",83,0) ; K C0QLIST - VEN/SMH - Oops, we kill the previous lists!!! "RTN","C0QMU12",84,0) S C0QLIST(ZYR_"HasDemographics")="" "RTN","C0QMU12",85,0) S C0QLIST(ZYR_"Patient")="" ; VEN/SMH - Is this needed? Not used in EP. "RTN","C0QMU12",86,0) S C0QLIST(ZYR_"HasProblem")="" "RTN","C0QMU12",87,0) S C0QLIST(ZYR_"HasAllergy")="" "RTN","C0QMU12",88,0) S C0QLIST(ZYR_"HasMed")="" "RTN","C0QMU12",89,0) S C0QLIST(ZYR_"HasERX")="" ; VEN/SMH C0Q*1*5 "RTN","C0QMU12",90,0) S C0QLIST(ZYR_"HasMedRecon")="" ; VEN/SMH C0Q*1*5 "RTN","C0QMU12",91,0) S C0QLIST(ZYR_"HasVitalSigns")="" "RTN","C0QMU12",92,0) S C0QLIST(ZYR_"HasMedOrders")="" "RTN","C0QMU12",93,0) S C0QLIST(ZYR_"HasSmokingStatus")="" "RTN","C0QMU12",94,0) S C0QLIST(ZYR_"ALL-PATIENTS")="" ; VEN/SMH C0Q*1*5 "RTN","C0QMU12",95,0) Q "RTN","C0QMU12",96,0) ; "RTN","C0QMU12",97,0) ALL ;retrieve active inpatients "RTN","C0QMU12",98,0) N WARD S WARD="" "RTN","C0QMU12",99,0) F D Q:WARD="" "RTN","C0QMU12",100,0) . S WARD=$O(^DIC(42,"B",WARD)) ;ward name "RTN","C0QMU12",101,0) . Q:WARD="" "RTN","C0QMU12",102,0) . N WIEN S WIEN="" "RTN","C0QMU12",103,0) . F S WIEN=$O(^DIC(42,"B",WARD,WIEN)) Q:'WIEN D ;wards IEN "RTN","C0QMU12",104,0) . . S WARDNAME=$P(^DIC(42,WIEN,0),U,2) ;ward name "RTN","C0QMU12",105,0) . . N DFN,RB S DFN="" "RTN","C0QMU12",106,0) . . F S DFN=$O(^DPT("CN",WARD,+DFN)) Q:'DFN D ;DFN of patient on ward "RTN","C0QMU12",107,0) . . . D DEMO^C0QMU122 "RTN","C0QMU12",108,0) . . . D PROBLEM "RTN","C0QMU12",109,0) . . . D ALLERGY "RTN","C0QMU12",110,0) . . . D MEDS4 "RTN","C0QMU12",111,0) . . . D RECON2 "RTN","C0QMU12",112,0) . . . D ADVDIR "RTN","C0QMU12",113,0) . . . D SMOKING "RTN","C0QMU12",114,0) . . . D VITALS "RTN","C0QMU12",115,0) . . . D VTE1 "RTN","C0QMU12",116,0) . . . D COD "RTN","C0QMU12",117,0) . . . D EDTIME "RTN","C0QMU12",118,0) . . . I C0QPR D PRINT^C0QMU121 "RTN","C0QMU12",119,0) . . . I C0QSS D SS^C0QMU121 "RTN","C0QMU12",120,0) . . . I C0QPL D PATLIST^C0QMU121 "RTN","C0QMU12",121,0) Q "RTN","C0QMU12",122,0) ; "RTN","C0QMU12",123,0) PROBLEM ; PATIENT PROBLEMS "RTN","C0QMU12",124,0) D LIST^ORQQPL(.PROBL,DFN,"A") "RTN","C0QMU12",125,0) S PBCNT="" "RTN","C0QMU12",126,0) F S PBCNT=$O(PROBL(PBCNT)) Q:PBCNT="" D "RTN","C0QMU12",127,0) . S PBDESC=$P(PROBL(PBCNT),U,2) ;problem description "RTN","C0QMU12",128,0) I PBDESC["No problems found" S C0QLIST(ZYR_"NoProblem",DFN)="" "RTN","C0QMU12",129,0) E S C0QLIST(ZYR_"HasProblem",DFN)="" "RTN","C0QMU12",130,0) K PROBL "RTN","C0QMU12",131,0) Q "RTN","C0QMU12",132,0) ; "RTN","C0QMU12",133,0) ALLERGY ; ALLERGY LIST "RTN","C0QMU12",134,0) ; WANT TO CHANGE ALLERGIES FOR 2012 TO POPULATE THE C0QLIST DIRECTLY. GPL "RTN","C0QMU12",135,0) D LIST^ORQQAL(.ALRGYL,DFN) "RTN","C0QMU12",136,0) S ALCNT="" "RTN","C0QMU12",137,0) F S ALCNT=$O(ALRGYL(ALCNT)) Q:ALCNT="" D "RTN","C0QMU12",138,0) . S ALDESC=$P(ALRGYL(ALCNT),U,2) ;allergy description "RTN","C0QMU12",139,0) I ALDESC["No Allergy" S C0QLIST(ZYR_"NoAllergy",DFN)="" "RTN","C0QMU12",140,0) E S C0QLIST(ZYR_"HasAllergy",DFN)="" "RTN","C0QMU12",141,0) K ALRGYL "RTN","C0QMU12",142,0) Q "RTN","C0QMU12",143,0) ; "RTN","C0QMU12",144,0) MEDS4 ; USE OCL^PSOORRL TO GET ALL MEDS "RTN","C0QMU12",145,0) ; DELETED MEDS, MEDS2, AND MEDS3 FOR 2012 TO USE ONLY MEDS4 "RTN","C0QMU12",146,0) N BEG,END "RTN","C0QMU12",147,0) S BEG=$$DT^C0QUTIL("JULY 3,2011") "RTN","C0QMU12",148,0) S END=$$DT^C0QUTIL("NOW") "RTN","C0QMU12",149,0) D OCL^PSOORRL(DFN,BEG,END) ;DBIA #2400 "RTN","C0QMU12",150,0) N C0QMEDS "RTN","C0QMU12",151,0) M C0QMEDS=^TMP("PS",$J) ; MEDS RETURNED FROM CALL "RTN","C0QMU12",152,0) N FOUND "RTN","C0QMU12",153,0) N ZI "RTN","C0QMU12",154,0) I '$D(C0QMEDS(1)) D Q ; QUIT IF NO MEDS "RTN","C0QMU12",155,0) . S C0QLIST(ZYR_"NoMed",DFN)="" "RTN","C0QMU12",156,0) E D ; HAS MEDS "RTN","C0QMU12",157,0) . S C0QLIST(ZYR_"HasMed",DFN)="" "RTN","C0QMU12",158,0) S ZI="" S FOUND=0 "RTN","C0QMU12",159,0) F S ZI=$O(C0QMEDS(ZI)) Q:ZI="" D ; FOR EACH MED "RTN","C0QMU12",160,0) . N ZM "RTN","C0QMU12",161,0) . S ZM=$G(C0QMEDS(ZI,0)) ;THE MEDICATION "RTN","C0QMU12",162,0) . I $P($P(ZM,"^",1),";",2)="I" D ; IE 1U;I FOR AN INPATIENT UNIT DOSE "RTN","C0QMU12",163,0) . . S FOUND=1 "RTN","C0QMU12",164,0) I FOUND S C0QLIST(ZYR_"HasMedOrders",DFN)="" ; MET CPOE MEASURE "RTN","C0QMU12",165,0) E S C0QLIST(ZYR_"NoMedOrders",DFN)="" "RTN","C0QMU12",166,0) Q "RTN","C0QMU12",167,0) ; "RTN","C0QMU12",168,0) RECON ; MEDICATIONS RECONCILIATION "RTN","C0QMU12",169,0) ; WANT TO SIMPLIFY MEDS RECON FOR 2012. GPL "RTN","C0QMU12",170,0) ; "RTN","C0QMU12",171,0) I $$HASNTYN^C0QNOTES("MED/SURG NURSING ADMISSION ASSESSMENT",DFN) D ; "RTN","C0QMU12",172,0) . S C0QLIST(ZYR_"XferOfCare",DFN)="" ; transfer of care patient "RTN","C0QMU12",173,0) N HASRECON S HASRECON=0 "RTN","C0QMU12",174,0) N GT,G "RTN","C0QMU12",175,0) S GT(4,"HasMedRecon","MEDICATION RECONCILIATION COMPLET")="" "RTN","C0QMU12",176,0) S GT(5,"HasMedRecon","Medication Reconcilation Complete")="" "RTN","C0QMU12",177,0) I $$TXTALL^C0QNOTES(.G,.GT,DFN) D ; SEARCH ALL NOTES FOR MED RECON "RTN","C0QMU12",178,0) . S HASRECON=1 "RTN","C0QMU12",179,0) ;N ZT "RTN","C0QMU12",180,0) ;S ZT="MEDICATION RECONCILIATION COMPLET" "RTN","C0QMU12",181,0) ;I $$NTTXT^C0QNOTES("ER NURSE NOTE",ZT,DFN) D ; "RTN","C0QMU12",182,0) ;. S HASRECON=1 "RTN","C0QMU12",183,0) ;E D ; "RTN","C0QMU12",184,0) ;. S ZT="Medication Reconcilation Complete" "RTN","C0QMU12",185,0) ;. I $$NTTXT^C0QNOTES("MED/SURG NURSING ADMISSION ASSESSMENT",ZT,DFN) D ; "RTN","C0QMU12",186,0) ;. . S HASRECON=1 "RTN","C0QMU12",187,0) ;I $$HFYN^C0QHF("MEDS HAVE BEEN REVIEWED",DFN) S HASRECON=1 "RTN","C0QMU12",188,0) I HASRECON D ; "RTN","C0QMU12",189,0) . S C0QLIST(ZYR_"HasMedRecon",DFN)="" "RTN","C0QMU12",190,0) E S C0QLIST(ZYR_"NoMedRecon",DFN)="" "RTN","C0QMU12",191,0) Q "RTN","C0QMU12",192,0) ; "RTN","C0QMU12",193,0) RECON2 ; USE HEALTH FACTORS FOR MEDICATION RECONCILIATION "RTN","C0QMU12",194,0) I $$HASNTYN^C0QNOTES("MED/SURG NURSING ADMISSION ASSESSMENT",DFN) D ; "RTN","C0QMU12",195,0) . S C0QLIST(ZYR_"XferOfCare",DFN)="" ; transfer of care patient "RTN","C0QMU12",196,0) I $$HFYN^C0QHF(DFN,"Medication Reconciliation Completed: Yes") D ; "RTN","C0QMU12",197,0) . S C0QLIST(ZYR_"HasMedRecon",DFN)="" "RTN","C0QMU12",198,0) E S C0QLIST(ZYR_"NoMedRecon",DFN)="" "RTN","C0QMU12",199,0) Q "RTN","C0QMU12",200,0) ; "RTN","C0QMU12",201,0) ERX ; FOR EP, WE LOOK AT ERX MEDS "RTN","C0QMU12",202,0) N ZI S ZI="" "RTN","C0QMU12",203,0) N ZERX S ZERX=$NA(^PS(55,DFN,"NVA")) "RTN","C0QMU12",204,0) F S ZI=$O(@ZERX@(ZI)) Q:ZI="" D ; "RTN","C0QMU12",205,0) . ;B "RTN","C0QMU12",206,0) . I $G(@ZERX@(ZI,1,1,0))["E-Rx Web" D ; "RTN","C0QMU12",207,0) . . S C0QLIST(ZYR_"HasMed",DFN)="" "RTN","C0QMU12",208,0) . . S C0QLIST(ZYR_"HasMedOrders",DFN)="" "RTN","C0QMU12",209,0) . . S C0QLIST(ZYR_"HasERX",DFN)="" "RTN","C0QMU12",210,0) . . S C0QLIST(ZYR_"HasMedRecon",DFN)="" "RTN","C0QMU12",211,0) . E D ; "RTN","C0QMU12",212,0) . . S C0QLIST(ZYR_"NoMed",DFN)="" "RTN","C0QMU12",213,0) . . S C0QLIST(ZYR_"NoMedOrders",DFN)="" "RTN","C0QMU12",214,0) . . S C0QLIST(ZYR_"NoERX",DFN)="" "RTN","C0QMU12",215,0) . . S C0QLIST(ZYR_"NoMedRecon",DFN)="" "RTN","C0QMU12",216,0) Q "RTN","C0QMU12",217,0) ; "RTN","C0QMU12",218,0) ADVDIR ; ADVANCE DIRECTIVE "RTN","C0QMU12",219,0) ; "RTN","C0QMU12",220,0) I $$AGE^C0QUTIL(DFN)>64 D ; ONLY FOR PATIENTS 65 AND OLDER "RTN","C0QMU12",221,0) . S C0QLIST(ZYR_"Over65",DFN)="" "RTN","C0QMU12",222,0) . I $$HASNTYN^C0QNOTES("ADVANCE DIRECTIVE",DFN) D ; "RTN","C0QMU12",223,0) . . S C0QLIST(ZYR_"HasAdvanceDirective",DFN)="" "RTN","C0QMU12",224,0) . E D ; "RTN","C0QMU12",225,0) . . S C0QLIST(ZYR_"NoAdvanceDirective",DFN)="" "RTN","C0QMU12",226,0) Q "RTN","C0QMU12",227,0) ; "RTN","C0QMU12",228,0) SMOKING G SMOKING^C0QMU121 "RTN","C0QMU12",229,0) VITALS ; "RTN","C0QMU12",230,0) ; "RTN","C0QMU12",231,0) N C0QSDT,C0QEDT "RTN","C0QMU12",232,0) D DT^DILF(,"JULY 3,2011",.C0QSDT) ; START DATE "RTN","C0QMU12",233,0) D DT^DILF(,"T",.C0QEDT) ; END DATE TODAY "RTN","C0QMU12",234,0) S C0QEDT=C0QEDT+.999999 ; Move to the end of the day! VEN/SMH C0Q*1*5 "RTN","C0QMU12",235,0) D VITALS^ORQQVI(.VITRSLT,DFN,C0QSDT,C0QEDT) ; CALL FAST VITALS "RTN","C0QMU12",236,0) I $D(VITRSLT) D ;ZWR VITRSLT B ; "RTN","C0QMU12",237,0) . I VITRSLT(1)["No vitals found." S C0QLIST(ZYR_"NoVitalSigns",DFN)="" "RTN","C0QMU12",238,0) . E S C0QLIST(ZYR_"HasVitalSigns",DFN)="" "RTN","C0QMU12",239,0) Q "RTN","C0QMU12",240,0) ; "RTN","C0QMU12",241,0) VTE1 ; VTE PROPHYLAXIS WITHIN 24HRS OF ARRIVAL "RTN","C0QMU12",242,0) ; "RTN","C0QMU12",243,0) I $$HFYN^C0QHF(DFN,"VTE PROPHYLAXIS WITHIN 24HRS OF ARRIVAL") D ; "RTN","C0QMU12",244,0) . S C0QLIST(ZYR_"HasVTE24",DFN)="" "RTN","C0QMU12",245,0) E S C0QLIST(ZYR_"NoVTE24",DFN)="" "RTN","C0QMU12",246,0) Q "RTN","C0QMU12",247,0) ; "RTN","C0QMU12",248,0) ; "RTN","C0QMU12",249,0) ; "RTN","C0QMU12",250,0) COD ; TEST FOR PRELIMINARY CAUSE OF DEATH NOTE "RTN","C0QMU12",251,0) I $$HASNTYN^C0QNOTES("PRELIMINARY CAUSE OF DEATH",DFN) D ; "RTN","C0QMU12",252,0) . S C0QLIST(ZYR_"CauseOfDeath",DFN)="" "RTN","C0QMU12",253,0) Q "RTN","C0QMU12",254,0) ; "RTN","C0QMU12",255,0) EDTIME ; CHECK FOR EMERGENCY DEPT TIME FACTORS "RTN","C0QMU12",256,0) N FOUND "RTN","C0QMU12",257,0) S FOUND=0 "RTN","C0QMU12",258,0) I $$HFYN^C0QHF(DFN,"ED ARRIVAL TIME") S FOUND=1 "RTN","C0QMU12",259,0) I '$$HFYN^C0QHF(DFN,"ED DEPARTURE TIME") S FOUND=0 "RTN","C0QMU12",260,0) I '$$HFYN^C0QHF(DFN,"TIME DECISION TO ADMIT MADE") S FOUND=0 "RTN","C0QMU12",261,0) I FOUND D ; "RTN","C0QMU12",262,0) . S C0QLIST(ZYR_"HasEDtime",DFN)="" "RTN","C0QMU12",263,0) E S C0QLIST(ZYR_"NoEDtime",DFN)="" "RTN","C0QMU12",264,0) Q "RTN","C0QMU12",265,0) ; "RTN","C0QMU12",266,0) ICUPAT ; CREATE LIST OF ICU PATIENTS "RTN","C0QMU12",267,0) N ZICU "RTN","C0QMU12",268,0) S ZICU=$O(^SC("B","IC","")) ; IEN OF ICU HOSPITAL LOCATION "RTN","C0QMU12",269,0) N ZI,ZJ,ZP "RTN","C0QMU12",270,0) S ZI="" "RTN","C0QMU12",271,0) F S ZI=$O(^AUPNVSIT("AHL",ZICU,ZI)) Q:ZI="" D ; EACH DATE "RTN","C0QMU12",272,0) . S ZJ="" "RTN","C0QMU12",273,0) . F S ZJ=$O(^AUPNVSIT("AHL",ZICU,ZI,ZJ)) Q:ZJ="" D ; EACH VISIT "RTN","C0QMU12",274,0) . . S ZP=$P(^AUPNVSIT(ZJ,0),"^",5) ; DFN "RTN","C0QMU12",275,0) . . S C0QLIST(ZYR_"ICUPatient",ZP)="" "RTN","C0QMU12",276,0) Q "RTN","C0QMU12",277,0) ; "RTN","C0QMU12",278,0) FILTER ; CALLED AFTER ALL THE PATIENT LISTS HAVE BEEN FILED "RTN","C0QMU12",279,0) ; WILL KILL C0QLIST AND CREATE DERIVATIVE PATIENT LISTS BY FILTERING "RTN","C0QMU12",280,0) K C0QLIST "RTN","C0QMU12",281,0) N ZPAT "RTN","C0QMU12",282,0) S ZPAT=$$PATLN(ZYR_"Patient") ; name of patient list of all patients admitted "RTN","C0QMU12",283,0) ; during the reporting period. used to filter other lists "RTN","C0QMU12",284,0) ; "RTN","C0QMU12",285,0) ; filter ICU patients against ZPAT "RTN","C0QMU12",286,0) N GN,GO,GF "RTN","C0QMU12",287,0) S GN=ZPAT "RTN","C0QMU12",288,0) S GO=$$PATLN(ZYR_"ICUPatient") ; all ICU patient "RTN","C0QMU12",289,0) S GF=$NA(C0QLIST(ZYR_"ICUReporting")) ; the filtered list destination "RTN","C0QMU12",290,0) D AND^C0QSET(GF,GN,GO) ; filter the list with the AND set operation "RTN","C0QMU12",291,0) ; "RTN","C0QMU12",292,0) ; FILTER VTE-2 DENOMINATOR FOR QUALITY MEASURE "RTN","C0QMU12",293,0) ; "RTN","C0QMU12",294,0) S GN=$NA(C0QLIST(ZYR_"ICUReporting")) ; ICU patients admitted inside rpt period "RTN","C0QMU12",295,0) S GO=$$RPATLN("MU VTE-2 DENOM PL") ; TAXONOMY BASED DENOMENATOR "RTN","C0QMU12",296,0) S GF=$NA(C0QLIST(ZYR_"VTE2DEN")) ; NEW DENOMINATOR PL "RTN","C0QMU12",297,0) D AND^C0QSET(GF,GN,GO) ; filter the list with the AND set operation "RTN","C0QMU12",298,0) ; "RTN","C0QMU12",299,0) S GN=ZPAT "RTN","C0QMU12",300,0) S GO=$$RPATLN("MU VTE-3 DENOM PL") ; TAXONOMY BASED DENOMENATOR "RTN","C0QMU12",301,0) S GF=$NA(C0QLIST(ZYR_"VTE3DEN")) ; NEW DENOMINATOR PL "RTN","C0QMU12",302,0) D AND^C0QSET(GF,GN,GO) ; filter the list with the AND set operation "RTN","C0QMU12",303,0) ; "RTN","C0QMU12",304,0) S GN=ZPAT "RTN","C0QMU12",305,0) S GO=$$RPATLN("MU VTE-4 DENOM PL") ; TAXONOMY BASED DENOMENATOR "RTN","C0QMU12",306,0) S GF=$NA(C0QLIST(ZYR_"VTE4DEN")) ; NEW DENOMINATOR PL "RTN","C0QMU12",307,0) D AND^C0QSET(GF,GN,GO) ; filter the list with the AND set operation "RTN","C0QMU12",308,0) ; "RTN","C0QMU12",309,0) S GN=ZPAT "RTN","C0QMU12",310,0) S GO=$$RPATLN("MU VTE-5 DENOM PL") ; TAXONOMY BASED DENOMENATOR "RTN","C0QMU12",311,0) S GF=$NA(C0QLIST(ZYR_"VTE5DEN")) ; NEW DENOMINATOR PL "RTN","C0QMU12",312,0) D AND^C0QSET(GF,GN,GO) ; filter the list with the AND set operation "RTN","C0QMU12",313,0) ; "RTN","C0QMU12",314,0) D FILE ; FILE ALL THE PATIENT LISTS "RTN","C0QMU12",315,0) D UPDATE^C0QUPDT(.G,5) ; UPDATE THE HOS 2011 MEANINGFUL USE measure set "RTN","C0QMU12",316,0) Q "RTN","C0QMU12",317,0) ; "RTN","C0QMU12",318,0) ED1 ; "RTN","C0QMU12",319,0) S ZYR="MU12-" "RTN","C0QMU12",320,0) D DOTIME^C0QMU121("ED DEPARTURE TIME") "RTN","C0QMU12",321,0) Q "RTN","C0QMU12",322,0) ; "RTN","C0QMU12",323,0) ED2 ; "RTN","C0QMU12",324,0) S ZYR="MU12-" "RTN","C0QMU12",325,0) D DOTIME2^C0QMU121("TIME DECISION TO ADMIT MADE") "RTN","C0QMU12",326,0) Q "RTN","C0QMU12",327,0) ; "RTN","C0QMU12",328,0) RPATLN(ZLST) ; EXTRINSIC RETURNS THE GLOBAL NAME OF THE REMINDER PATIENT LIST "RTN","C0QMU12",329,0) ; WHOSE NAME IS ZLST "RTN","C0QMU12",330,0) N ZIEN,ZN "RTN","C0QMU12",331,0) S ZIEN=$O(^PXRMXP(810.5,"B",ZLST,"")) ; ien of patient list "RTN","C0QMU12",332,0) S ZN=$NA(^PXRMXP(810.5,ZIEN,30,"B")) ; GLOBAL NAME IN REMINDER PATIENT LIST "RTN","C0QMU12",333,0) Q ZN "RTN","C0QMU12",334,0) ; "RTN","C0QMU12",335,0) PATLN(ZATTR) ; EXTRINSIC RETURNS THE NAME OF THE PATIENT LIST WITH "RTN","C0QMU12",336,0) ; THE ATTRIBUTE ZATTR "RTN","C0QMU12",337,0) N ZIEN,ZN "RTN","C0QMU12",338,0) S ZIEN=$O(^C0Q(301,"CATTR",ZATTR,"")) ; ien of patient list "RTN","C0QMU12",339,0) S ZN=$NA(^C0Q(301,ZIEN,1,"B")) ; NAME OF PATIENT LIST IN C0Q PATIENT LIST "RTN","C0QMU12",340,0) Q ZN "RTN","C0QMU12",341,0) ; "RTN","C0QMU12",342,0) INLIST(ZLIST,DFN) ; EXTRINSIC FOR IS PATIENT ALREADY IN LIST ZLIST "RTN","C0QMU12",343,0) N ZL,ZR "RTN","C0QMU12",344,0) S ZL=$O(^C0Q(301,"CATTR",ZLIST,"")) ; IEN OF LIST IN C0Q PATIENT LIST FILE "RTN","C0QMU12",345,0) I ZL="" Q 0 ; LIST DOES NOT EXIST "RTN","C0QMU12",346,0) S ZR=0 ; ASSUME NOT IN LIST "RTN","C0QMU12",347,0) I $D(^C0Q(301,ZL,1,"B",DFN)) S ZR=1 ; PATIENT IS IN LIST "RTN","C0QMU12",348,0) Q ZR "RTN","C0QMU12",349,0) ; "RTN","C0QMU12",350,0) LOCPAT(PREFIX,LOC) ;retrieve active outpatients "RTN","C0QMU12",351,0) ; PREFIX WILL GO IN C0XLIST(PREFIX_"-PATIENT",DFN)="" "RTN","C0QMU12",352,0) ; LOC IS HOSPITAL LOCATION "RTN","C0QMU12",353,0) ; Initially, make an empty list (C0Q*1.0*6) "RTN","C0QMU12",354,0) S C0QLIST(PREFIX_"Patient")="" "RTN","C0QMU12",355,0) S ULOC=$O(^SC("B",LOC,"")) ; IEN OF HOSPITAL LOCATION "RTN","C0QMU12",356,0) I ULOC="" D Q ; OOPS "RTN","C0QMU12",357,0) . W !,"HOSPITAL LOCATION NOT FOUND: ",LOC "RTN","C0QMU12",358,0) S IDTE=9999999-DTE ; INVERSE DATE "RTN","C0QMU12",359,0) N ZI "RTN","C0QMU12",360,0) S ZI="" ; BEGIN AT LATEST DATE FOR THIS LOC IN VISIT FILE "RTN","C0QMU12",361,0) F S ZI=$O(^AUPNVSIT("AHL",ULOC,ZI)) Q:(ZI="")!(ZI>IDTE) D ; FOR EACH DATE "RTN","C0QMU12",362,0) . N C0QDATE S C0QDATE=9999999-$P(ZI,".")_"."_$P(ZI,".",2) ; VEN/SMH *5 "RTN","C0QMU12",363,0) . W !,$$FMTE^XLFDT(C0QDATE) ; VEN/SMH *5 "RTN","C0QMU12",364,0) . I ZI="" Q ; "RTN","C0QMU12",365,0) . N ZJ S ZJ="" "RTN","C0QMU12",366,0) . F S ZJ=$O(^AUPNVSIT("AHL",ULOC,ZI,ZJ)) Q:ZJ="" D ; FOR EACH VISIT "RTN","C0QMU12",367,0) . . S DFN=$$GET1^DIQ(9000010,ZJ,.05,"I") ; PATIENT "RTN","C0QMU12",368,0) . . S C0QLIST(PREFIX_"Patient",DFN)="" "RTN","C0QMU12",369,0) Q "RTN","C0QMU12",370,0) ; "RTN","C0QMU12",371,0) EPPAT(ZYR) ; BUILD ALL PATIENT LISTS FOR CLINICS "RTN","C0QMU12",372,0) ; "RTN","C0QMU12",373,0) S DTE=3111000 "RTN","C0QMU12",374,0) S MUYR=ZYR "RTN","C0QMU12",375,0) N ZC,ZN "RTN","C0QMU12",376,0) S ZN=0 "RTN","C0QMU12",377,0) N ZI S ZI=0 "RTN","C0QMU12",378,0) F S ZI=$O(^SC(ZI)) Q:+ZI=0 D ; FOR EVERY HOSPITAL LOCATION "RTN","C0QMU12",379,0) . I $$GET1^DIQ(44,ZI_",",2,"I")'="C" Q ; NOT A CLINIC "RTN","C0QMU12",380,0) . S ZC=$$GET1^DIQ(44,ZI_",",.01) ; NAME OF CLINIC "RTN","C0QMU12",381,0) . S ZCIEN=ZI ; IEN OF CLINIC "RTN","C0QMU12",382,0) . S ZN=ZN+1 ; COUNT OF CLINICS "RTN","C0QMU12",383,0) . S PRE=MUYR_"-EP-"_ZC_"-" "RTN","C0QMU12",384,0) . D LOCPAT(PRE,ZC) "RTN","C0QMU12",385,0) W !,"NUMBER OF CLINICS: ",ZN "RTN","C0QMU12",386,0) D FILE ; CREATE ALL THE EP PATIENT LISTS "RTN","C0QMU12",387,0) Q "RTN","C0QMU12",388,0) ; "RTN","C0QMU12",389,0) DOEP ; DO EP COMPUTATIONS "RTN","C0QMU12",390,0) S ZYR="MU12-" "RTN","C0QMU12",391,0) N C0QPARM,C0QCLNC "RTN","C0QMU12",392,0) D INIT("C0QPARM","EP") ; INITIALIZE PARAMETERS "RTN","C0QMU12",393,0) K C0QLIST ; CLEAR THE LIST "RTN","C0QMU12",394,0) N ZI S ZI="" "RTN","C0QMU12",395,0) F S ZI=$O(C0QPARM(ZI)) Q:ZI="" D ; FOR EACH EP "RTN","C0QMU12",396,0) . S DTE=C0QPARM(ZI,"EPBeginDate") ; beginning of measurement period "RTN","C0QMU12",397,0) . S EDTE=C0QPARM(ZI,"EPEndDate") ; end of measurement period -- tbd use this "RTN","C0QMU12",398,0) . S C0QCLNC=C0QPARM(ZI,"CLINICS",1,1) ; only one clinic for now "RTN","C0QMU12",399,0) . S PRE=ZYR_"EP-"_C0QCLNC_"-" "RTN","C0QMU12",400,0) . D LOCPAT(PRE,C0QCLNC) ; GET THE PATIENTS "RTN","C0QMU12",401,0) . I $D(DEBUG) D ZWRITE^C0QUTIL("C0QLIST") "RTN","C0QMU12",402,0) . M C0QLIST(ZYR_"EP-ALL-PATIENTS")=C0QLIST(PRE_"Patient") "RTN","C0QMU12",403,0) . ; update parameter list with filter list (1.0*6) "RTN","C0QMU12",404,0) . S C0QPARM(ZI,"FilterListName")=PRE_"Patient" "RTN","C0QMU12",405,0) S DFN="" "RTN","C0QMU12",406,0) S ZYR=ZYR_"EP-" "RTN","C0QMU12",407,0) D INITCLST ; VEN/SMH - Initialize Empty Lists just in case we don't have "RTN","C0QMU12",408,0) ; any. C0Q*1*5 "RTN","C0QMU12",409,0) F S DFN=$O(C0QLIST(ZYR_"ALL-PATIENTS",DFN)) Q:DFN="" D ; EACH PATIENT "RTN","C0QMU12",410,0) . D DEMO^C0QMU122 "RTN","C0QMU12",411,0) . D PROBLEM "RTN","C0QMU12",412,0) . D ALLERGY "RTN","C0QMU12",413,0) . ;D MEDS "RTN","C0QMU12",414,0) . D ERX "RTN","C0QMU12",415,0) . D SMOKING "RTN","C0QMU12",416,0) . D VITALS "RTN","C0QMU12",417,0) D FILE ; FILE THE PATIENT LISTS "RTN","C0QMU12",418,0) ; "RTN","C0QMU12",419,0) ; Now process eRx MU measures for these patients "RTN","C0QMU12",420,0) ; Check for eRx template and code first; if they exist, run the code "RTN","C0QMU12",421,0) I $D(^C0PX("B","GETMEDS6")),$L($T(SOAP^C0PWS2)) DO "RTN","C0QMU12",422,0) . N C0QDEBUG S C0QDEBUG=1 ; This causes the code to print out data; "RTN","C0QMU12",423,0) . D EN^C0QMUERX($$PATLN^C0QMU12(ZYR_"HasERX")) ; Pass the eRx patient list "RTN","C0QMU12",424,0) ; "RTN","C0QMU12",425,0) N ZI S ZI="" "RTN","C0QMU12",426,0) F S ZI=$O(C0QPARM(ZI)) Q:ZI="" D ; "RTN","C0QMU12",427,0) . N C0QDEBUG S C0QDEBUG=1 ; This causes the code to print out data; "RTN","C0QMU12",428,0) . I 'C0QPARM(ZI,"EPMeasurementSet"),C0QPARM(ZI,"EPModelPerfSet") D "RTN","C0QMU12",429,0) . . N C0QCLNC S C0QCLNC=C0QPARM(ZI,"CLINICS",1,1) "RTN","C0QMU12",430,0) . . N FLN S FLN=C0QPARM(ZI,"FilterListName") "RTN","C0QMU12",431,0) . . ; "RTN","C0QMU12",432,0) . . ; 1. BUILD New Measure Set from Model Performance Measure Set "RTN","C0QMU12",433,0) . . ; Get IEN back of the newly created measure set. "RTN","C0QMU12",434,0) . . N MSIEN ; Measure Set IEN that gets created "RTN","C0QMU12",435,0) . . S MSIEN=$$CLONE^C0QMU123(C0QPARM(ZI,"EPModelPerfSet"),C0QCLNC,0,FLN) "RTN","C0QMU12",436,0) . . ; "RTN","C0QMU12",437,0) . . ; 2. File Measure Set "RTN","C0QMU12",438,0) . . N C0QFDA S C0QFDA($$C0QPFN(),C0QPARM(ZI,"IEN")_",",2)=MSIEN "RTN","C0QMU12",439,0) . . N C0QERR "RTN","C0QMU12",440,0) . . D FILE^DIE("",$NA(C0QFDA),$NA(C0QERR)) "RTN","C0QMU12",441,0) . . I $D(C0QERR) S $EC=",U1," "RTN","C0QMU12",442,0) . . ; "RTN","C0QMU12",443,0) . . ; 3. Set this IEN to be the one in EPMeasurementSet "RTN","C0QMU12",444,0) . . S C0QPARM(ZI,"EPMeasurementSet")=MSIEN "RTN","C0QMU12",445,0) . . ; DONE "RTN","C0QMU12",446,0) . . ; "RTN","C0QMU12",447,0) . I 'C0QPARM(ZI,"EPQualitySet"),C0QPARM(ZI,"EPModelQualitySet") D "RTN","C0QMU12",448,0) . . N C0QCLNC S C0QCLNC=C0QPARM(ZI,"CLINICS",1,1) "RTN","C0QMU12",449,0) . . N FLN S FLN=C0QPARM(ZI,"FilterListName") "RTN","C0QMU12",450,0) . . ; "RTN","C0QMU12",451,0) . . ; 1. BUILD New Measure Set from Model Performance Measure Set "RTN","C0QMU12",452,0) . . ; Get IEN back of the newly created measure set. "RTN","C0QMU12",453,0) . . N MSIEN ; Measure Set IEN that gets created "RTN","C0QMU12",454,0) . . S MSIEN=$$CLONE^C0QMU123(C0QPARM(ZI,"EPModelQualitySet"),C0QCLNC,1,FLN) "RTN","C0QMU12",455,0) . . ; "RTN","C0QMU12",456,0) . . ; 2. File Measure Set "RTN","C0QMU12",457,0) . . N C0QFDA S C0QFDA($$C0QPFN(),C0QPARM(ZI,"IEN")_",",2.1)=MSIEN "RTN","C0QMU12",458,0) . . N C0QERR "RTN","C0QMU12",459,0) . . D FILE^DIE("",$NA(C0QFDA),$NA(C0QERR)) "RTN","C0QMU12",460,0) . . I $D(C0QERR) S $EC=",U1," "RTN","C0QMU12",461,0) . . ; "RTN","C0QMU12",462,0) . . ; 3. Set this IEN to be the one in EPMeasurementSet "RTN","C0QMU12",463,0) . . S C0QPARM(ZI,"EPQualitySet")=MSIEN "RTN","C0QMU12",464,0) . . ; DONE "RTN","C0QMU12",465,0) . ; "RTN","C0QMU12",466,0) . ; Quit if we still don't have measurement sets "RTN","C0QMU12",467,0) . I 'C0QPARM(ZI,"EPMeasurementSet")&('C0QPARM(ZI,"EPQualitySet")) QUIT "RTN","C0QMU12",468,0) . ; "RTN","C0QMU12",469,0) . D UPDATE^C0QUPDT(.G,C0QPARM(ZI,"EPMeasurementSet")) ; UPDATE THE MU MEASUREMENT SET "RTN","C0QMU12",470,0) . ; VEN/SMH -- Quality Set missing for Outpatient -- adding "RTN","C0QMU12",471,0) . D UPDATE^C0QUPDT(.G,C0QPARM(ZI,"EPQualitySet")) ; C0Q*1*5 "RTN","C0QMU12",472,0) Q "RTN","C0QMU12",473,0) ; "RTN","C0QMU12",474,0) DIS ; "RTN","C0QMU12",475,0) N DFN,DTE,EXDTE S DTE="" "RTN","C0QMU12",476,0) F D Q:DTE="" "RTN","C0QMU12",477,0) . S DTE=$O(^DGPM("B",DTE)) "RTN","C0QMU12",478,0) . Q:'DTE "RTN","C0QMU12",479,0) . ;Q:$P(DTE,".")<3110703 "RTN","C0QMU12",480,0) . Q:$P(DTE,".")<3111000 ; NEW BEGIN DATE FOR FISCAL YEAR 2012 "RTN","C0QMU12",481,0) . S EXDTE=$$FMTE^XLFDT(DTE) "RTN","C0QMU12",482,0) . N PTFM S PTFM="" "RTN","C0QMU12",483,0) . D "RTN","C0QMU12",484,0) . . S PTFM=$O(^DGPM("B",DTE,PTFM)) "RTN","C0QMU12",485,0) . . Q:'PTFM "RTN","C0QMU12",486,0) . . S DFN=$P(^DGPM(PTFM,0),U,3) "RTN","C0QMU12",487,0) . . S C0QLIST(ZYR_"Patient",DFN)="" "RTN","C0QMU12",488,0) . . D DEMO^C0QMU122 "RTN","C0QMU12",489,0) . . D PROBLEM "RTN","C0QMU12",490,0) . . D ALLERGY "RTN","C0QMU12",491,0) . . D MEDS4 "RTN","C0QMU12",492,0) . . D RECON2 "RTN","C0QMU12",493,0) . . D ADVDIR "RTN","C0QMU12",494,0) . . D SMOKING "RTN","C0QMU12",495,0) . . D VITALS "RTN","C0QMU12",496,0) . . ;D:$P(DTE,".")>3110912 VTE1 "RTN","C0QMU12",497,0) . . D VTE1 "RTN","C0QMU12",498,0) . . D COD "RTN","C0QMU12",499,0) . . D EDTIME "RTN","C0QMU12",500,0) . . I C0QPR D PRINT^C0QMU121 "RTN","C0QMU12",501,0) . . I C0QSS D SS^C0QMU121 "RTN","C0QMU12",502,0) . . I C0QPL D PATLIST^C0QMU121 "RTN","C0QMU12",503,0) Q "RTN","C0QMU12",504,0) ; "RTN","C0QMU12",505,0) C0QPLF() Q 1130580001.301 ; FILE NUMBER FOR C0Q PATIENT LIST FILE "RTN","C0QMU12",506,0) C0QALFN() Q 1130580001.311 ; FILE NUMBER FOR C0Q PATIENT LIST PATIENT SUBFILE "RTN","C0QMU12",507,0) FILE ; FILE THE PATIENT LISTS TO C0Q PATIENT LIST "RTN","C0QMU12",508,0) ; "RTN","C0QMU12",509,0) I '$D(C0QLIST) Q ; "RTN","C0QMU12",510,0) N LFN S LFN=$$C0QALFN() "RTN","C0QMU12",511,0) N ZI,ZN "RTN","C0QMU12",512,0) S ZI="" "RTN","C0QMU12",513,0) F S ZI=$O(C0QLIST(ZI)) Q:ZI="" D ; "RTN","C0QMU12",514,0) . S ZN=$O(^C0Q(301,"CATTR",ZI,"")) "RTN","C0QMU12",515,0) . I ZN="" D ; LIST NOT FOUND, CREATE IT "RTN","C0QMU12",516,0) . . K C0QFDA "RTN","C0QMU12",517,0) . . S FN=$$C0QPLF ; C0Q PATIENT LIST FILE "RTN","C0QMU12",518,0) . . S C0QFDA(FN,"+1,",.01)=ZI "RTN","C0QMU12",519,0) . . S C0QFDA(FN,"+1,",999)=ZI ; ATTRIBUTE "RTN","C0QMU12",520,0) . . W !,"CREATING ",ZI "RTN","C0QMU12",521,0) . . D UPDIE ; ADD THE RECORD "RTN","C0QMU12",522,0) . . S ZN=$O(^C0Q(301,"CATTR",ZI,"")) ; THE NEW IEN "RTN","C0QMU12",523,0) . ;I ZN="" D Q ; OOPS "RTN","C0QMU12",524,0) . ;. W !,"ERROR, ATTRIBUTE NOT FOUND IN PATIENT LIST FILE:"_ZI "RTN","C0QMU12",525,0) . ;S ZN=$$KLNCR(ZN) ; KILL AND RECREATE RECORD ZN "RTN","C0QMU12",526,0) . N C0QNEW,C0QOLD,C0QRSLT "RTN","C0QMU12",527,0) . S C0QNEW=$NA(C0QLIST(ZI)) ; THE NEW PATIENT LIST "RTN","C0QMU12",528,0) . S C0QOLD=$NA(^C0Q(301,ZN,1,"B")) ; THE OLD PATIENT LIST "RTN","C0QMU12",529,0) . D UNITY^C0QSET("C0QRSLT",C0QNEW,C0QOLD) ; FIND WHAT'S NEW "RTN","C0QMU12",530,0) . N ZJ,ZK "RTN","C0QMU12",531,0) . ; FIRST, DELETE THE OLD ONES - NO LONGER IN THE LIST "RTN","C0QMU12",532,0) . K C0QFDA "RTN","C0QMU12",533,0) . S ZJ="" "RTN","C0QMU12",534,0) . F S ZJ=$O(C0QRSLT(2,ZJ)) Q:ZJ="" D ; MARKED WITH A 2 FROM UNITY "RTN","C0QMU12",535,0) . . S ZK=$O(@C0QOLD@(ZJ,"")) ; GET THE IEN OF THE RECORD TO DELETE "RTN","C0QMU12",536,0) . . I ZK="" D Q ; OOPS SHOULDN'T HAPPEN "RTN","C0QMU12",537,0) . . . W !,"INTERNAL ERROR FINDING A PATIENT TO DELETE" "RTN","C0QMU12",538,0) . . . S $EC=",U1130580001," ; smh - instead of a BREAK "RTN","C0QMU12",539,0) . . S C0QFDA(LFN,ZK_","_ZN_",",.01)="@" "RTN","C0QMU12",540,0) . I $D(C0QFDA) D UPDIE ; PROCESS THE DELETIONS "RTN","C0QMU12",541,0) . ; SECOND, PROCESS THE ADDITIONS "RTN","C0QMU12",542,0) . K C0QFDA "RTN","C0QMU12",543,0) . S ZJ="" S ZK=1 "RTN","C0QMU12",544,0) . F S ZJ=$O(C0QRSLT(0,ZJ)) Q:ZJ="" D ; PATIENTS TO ADD ARE MARKED WITH 0 "RTN","C0QMU12",545,0) . . S C0QFDA(LFN,"+"_ZK_","_ZN_",",.01)=ZJ "RTN","C0QMU12",546,0) . . S ZK=ZK+1 "RTN","C0QMU12",547,0) . I $D(C0QFDA) D UPDIE ; PROCESS THE ADDITIONS "RTN","C0QMU12",548,0) ;. Q "RTN","C0QMU12",549,0) ;. K C0QFDA "RTN","C0QMU12",550,0) ;. N ZJ,ZC "RTN","C0QMU12",551,0) ;. S ZJ="" S ZC=1 "RTN","C0QMU12",552,0) ;. F S ZJ=$O(C0QLIST(ZI,ZJ)) Q:ZJ="" D ; FOR EACH PAT IN LIST "RTN","C0QMU12",553,0) ;. . S C0QFDA(LFN,"?+"_ZC_","_ZN_",",.01)=ZJ "RTN","C0QMU12",554,0) ;. . S ZC=ZC+1 "RTN","C0QMU12",555,0) ;. D UPDIE "RTN","C0QMU12",556,0) ;. W !,"FOUND:"_ZI "RTN","C0QMU12",557,0) Q "RTN","C0QMU12",558,0) ; "RTN","C0QMU12",559,0) KLNCR(ZREC) ; KILL AND RECREATE RECORD ZREC IN PATIENT LIST FILE "RTN","C0QMU12",560,0) ; "RTN","C0QMU12",561,0) N C0QFDA,ZFN,LIST,ATTR "RTN","C0QMU12",562,0) S ZFN=$$C0QPLF() ; FILE NUMBER FOR C0Q PATIENT LIST FILE "RTN","C0QMU12",563,0) D CLEAN^DILF "RTN","C0QMU12",564,0) S LIST=$$GET1^DIQ(ZFN,ZREC_",",.01) ; MEASURE NAME "RTN","C0QMU12",565,0) S ATTR=$$GET1^DIQ(ZFN,ZREC_",",999) ; ATTRIBUTE "RTN","C0QMU12",566,0) D CLEAN^DILF "RTN","C0QMU12",567,0) K ZERR "RTN","C0QMU12",568,0) S C0QFDA(ZFN,ZREC_",",.01)="@" ; GET READY TO DELETE THE MEASURE "RTN","C0QMU12",569,0) D FILE^DIE(,"C0QFDA","ZERR") ; KILL THE SUBFILE "RTN","C0QMU12",570,0) I $D(ZERR) S ZZERR=ZZERR ; ZZERR DOESN'T EXIST, INVOKE THE ERROR TRAP IF TASKED "RTN","C0QMU12",571,0) ;. W "ERROR",! "RTN","C0QMU12",572,0) ;. ZWR ZERR "RTN","C0QMU12",573,0) ;. B "RTN","C0QMU12",574,0) K C0QFDA "RTN","C0QMU12",575,0) S C0QFDA(ZFN,"+1,",.01)=LIST ; GET READY TO RECREATE THE RECORD "RTN","C0QMU12",576,0) S C0QFDA(ZFN,"+1,",999)=ATTR ; ATTRIBUTE "RTN","C0QMU12",577,0) D UPDIE ; CREATE THE SUBFILE "RTN","C0QMU12",578,0) N ZR ; NEW IEN FOR THE RECORD "RTN","C0QMU12",579,0) S ZR=$O(^C0Q(301,"CATTR",ATTR,"")) "RTN","C0QMU12",580,0) ; "RTN","C0QMU12",581,0) Q ZR "RTN","C0QMU12",582,0) ; "RTN","C0QMU12",583,0) UPDIE ; INTERNAL ROUTINE TO CALL UPDATE^DIE AND CHECK FOR ERRORS "RTN","C0QMU12",584,0) K ZERR "RTN","C0QMU12",585,0) D CLEAN^DILF "RTN","C0QMU12",586,0) D UPDATE^DIE("","C0QFDA","","ZERR") "RTN","C0QMU12",587,0) I $D(ZERR) S ZZERR=ZZERR ; ZZERR DOESN'T EXIST, INVOKE THE ERROR TRAP IF TASKED "RTN","C0QMU12",588,0) K C0QFDA "RTN","C0QMU12",589,0) Q "RTN","C0QMU12",590,0) ; "RTN","C0QMU12",591,0) END ;end of C0QPRML; "RTN","C0QMU123") 0^2^B4142401 "RTN","C0QMU123",1,0) C0QMU123 ; VEN/SMH - Clone a Measure Set and give a new name and filter. ; 10/22/12 4:33pm "RTN","C0QMU123",2,0) ;;1.0;QUALITY MEASURES;**6**;;Build 1 "RTN","C0QMU123",3,0) QUIT "RTN","C0QMU123",4,0) ; "RTN","C0QMU123",5,0) CLONE(MSIEN,CLNNM,ISQM,FLNAME) ; Private $$ ; Clone a measure set into a new one "RTN","C0QMU123",6,0) ; Input: "RTN","C0QMU123",7,0) ; 1. Measurement Set IEN to clone "RTN","C0QMU123",8,0) ; 2. Clinic Name for which this Measurement Set would apply (FT) "RTN","C0QMU123",9,0) ; 3. Boolean: Is Quality Measure? "RTN","C0QMU123",10,0) ; 4. Filter List Name "RTN","C0QMU123",11,0) ; "RTN","C0QMU123",12,0) ; Output: "RTN","C0QMU123",13,0) ; IEN of Created measure set. "RTN","C0QMU123",14,0) ; "RTN","C0QMU123",15,0) ; Get data from Model Set "RTN","C0QMU123",16,0) N C0QIENS S C0QIENS=MSIEN_"," ; Input to GETS call "RTN","C0QMU123",17,0) N C0QOUT,C0QERR ; Output Variables in GETS call. "RTN","C0QMU123",18,0) D GETS^DIQ(1130580001.201,C0QIENS,"**","",$NA(C0QOUT),$NA(C0QERR)) "RTN","C0QMU123",19,0) ; "RTN","C0QMU123",20,0) I $D(C0QERR) S $EC=",U1," ; Crash in case of error. Shouldn't happen. "RTN","C0QMU123",21,0) ; "RTN","C0QMU123",22,0) ; Deal with D0 stuff first. "RTN","C0QMU123",23,0) ; Merge D0 level into a new FDA array. "RTN","C0QMU123",24,0) N C0QNEW ; New FDA "RTN","C0QMU123",25,0) M C0QNEW(1130580001.201,"?+1,")=C0QOUT(1130580001.201,C0QIENS) "RTN","C0QMU123",26,0) ; "RTN","C0QMU123",27,0) ; Change .01 "RTN","C0QMU123",28,0) ; NOTE: Field name is 30 characters. But HL is max 30 chars too! "RTN","C0QMU123",29,0) ; So we have to truncate it. "RTN","C0QMU123",30,0) ; If Is Quality Measure, Use QM, otherwise, use Performance Report. "RTN","C0QMU123",31,0) S C0QNEW(1130580001.201,"?+1,",.01)=$E(CLNNM,1,27)_" "_$S(ISQM:"QM",1:"PR") "RTN","C0QMU123",32,0) ; "RTN","C0QMU123",33,0) ; Deal with D1 level "RTN","C0QMU123",34,0) N I S I=0 ; Looper "RTN","C0QMU123",35,0) N CNT S CNT=1 ; IENS counter ; Will become 2 and larger. Not to collide with the initial 1. "RTN","C0QMU123",36,0) ; "RTN","C0QMU123",37,0) ; For each record in D1 level "RTN","C0QMU123",38,0) F S I=$O(C0QOUT(1130580001.2011,I)) Q:'I D "RTN","C0QMU123",39,0) . S CNT=CNT+1 "RTN","C0QMU123",40,0) . ; Grab the Measure field "RTN","C0QMU123",41,0) . S C0QNEW(1130580001.2011,"?+"_CNT_",?+1,",.01)=C0QOUT(1130580001.2011,I,.01) "RTN","C0QMU123",42,0) . ; "RTN","C0QMU123",43,0) . ; Put the Filter lists on "RTN","C0QMU123",44,0) . S C0QNEW(1130580001.2011,"?+"_CNT_",?+1,",1.2)=FLNAME "RTN","C0QMU123",45,0) . S C0QNEW(1130580001.2011,"?+"_CNT_",?+1,",2.2)=FLNAME "RTN","C0QMU123",46,0) ; "RTN","C0QMU123",47,0) ; File Data. "RTN","C0QMU123",48,0) N C0QIEN,C0QERR ; Returned IEN, Error array "RTN","C0QMU123",49,0) D UPDATE^DIE("E",$NA(C0QNEW),$NA(C0QIEN),$NA(C0QERR)) "RTN","C0QMU123",50,0) I $D(C0QERR) S $EC=",U1," "RTN","C0QMU123",51,0) ; "RTN","C0QMU123",52,0) Q C0QIEN(1) ; Quit with IEN for ?+1. "RTN","C0QMU123",53,0) ; "RTN","C0QMU123",54,0) ; SAM(1130580001.201,"17,",.01)="DR OFFICE QM REPORT" "RTN","C0QMU123",55,0) ; SAM(1130580001.201,"17,",.02)="AUG 1,2012" "RTN","C0QMU123",56,0) ; SAM(1130580001.201,"17,",.03)="OCT 31,2012" "RTN","C0QMU123",57,0) ; SAM(1130580001.201,"17,",.04)="" "RTN","C0QMU123",58,0) ; SAM(1130580001.201,"17,",.05)="" "RTN","C0QMU123",59,0) ; SAM(1130580001.201,"17,",.2)="" "RTN","C0QMU123",60,0) ; SAM(1130580001.201,"17,",.3)="" "RTN","C0QMU123",61,0) ; SAM(1130580001.201,"17,",.4)="" "RTN","C0QMU123",62,0) ; SAM(1130580001.2011,"1,17,",.01)="MU EP NQF 0013" "RTN","C0QMU123",63,0) ; SAM(1130580001.2011,"1,17,",1.1)=1 "RTN","C0QMU123",64,0) ; SAM(1130580001.2011,"1,17,",1.2)="MU12-EP-DR OFFICE-Patient" "RTN","C0QMU123",65,0) ; SAM(1130580001.2011,"1,17,",2.1)=1 "RTN","C0QMU123",66,0) ; SAM(1130580001.2011,"1,17,",2.2)="MU12-EP-DR OFFICE-Patient" "RTN","C0QMU123",67,0) ; SAM(1130580001.2011,"1,17,",3)=100 "RTN","C0QMU123",68,0) ; SAM(1130580001.2011,"2,17,",.01)="MU EP NQF 0028A" "RTN","C0QMU123",69,0) ; SAM(1130580001.2011,"2,17,",1.1)=0 "RTN","C0QMU123",70,0) ; SAM(1130580001.2011,"2,17,",1.2)="MU12-EP-DR OFFICE-Patient" "RTN","C0QMU123",71,0) ; SAM(1130580001.2011,"2,17,",2.1)=1 "RTN","C0QMU123",72,0) ; SAM(1130580001.2011,"2,17,",2.2)="MU12-EP-DR OFFICE-Patient" "RTN","C0QMU123",73,0) ; SAM(1130580001.2011,"2,17,",3)=0 "RTN","C0QMU123",74,0) ; SAM(1130580001.2011,"3,17,",.01)="MU EP NQF 0028B" "RTN","C0QMU123",75,0) ; SAM(1130580001.2011,"3,17,",1.1)=0 "RTN","C0QMU123",76,0) ; SAM(1130580001.2011,"3,17,",1.2)="MU12-EP-DR OFFICE-Patient" "RTN","C0QMU123",77,0) ; SAM(1130580001.2011,"3,17,",2.1)=1 "RTN","C0QMU123",78,0) ; SAM(1130580001.2011,"3,17,",2.2)="MU12-EP-DR OFFICE-Patient" "RTN","C0QMU123",79,0) ; SAM(1130580001.2011,"3,17,",3)=0 "RTN","C0QMU123",80,0) ; SAM(1130580001.2011,"4,17,",.01)="MU EP NQF 0421" "RTN","C0QMU123",81,0) ; SAM(1130580001.2011,"4,17,",1.1)=1 "RTN","C0QMU123",82,0) ; SAM(1130580001.2011,"4,17,",1.2)="MU12-EP-DR OFFICE-Patient" "RTN","C0QMU123",83,0) ; SAM(1130580001.2011,"4,17,",2.1)=1 "RTN","C0QMU123",84,0) ; SAM(1130580001.2011,"4,17,",2.2)="MU12-EP-DR OFFICE-Patient" "RTN","C0QMU123",85,0) ; SAM(1130580001.2011,"4,17,",3)=100 "RTN","C0QMU123",86,0) ; SAM(1130580001.20111,"1,1,17,",.01)="MOUSE,MICKEY" "RTN","C0QMU123",87,0) ; SAM(1130580001.20111,"1,4,17,",.01)="MOUSE,MICKEY" "RTN","C0QMU123",88,0) ; SAM(1130580001.20112,"1,1,17,",.01)="MOUSE,MICKEY" "RTN","C0QMU123",89,0) ; SAM(1130580001.20112,"1,2,17,",.01)="MOUSE,MICKEY" "RTN","C0QMU123",90,0) ; SAM(1130580001.20112,"1,3,17,",.01)="MOUSE,MICKEY" "RTN","C0QMU123",91,0) ; SAM(1130580001.20112,"1,4,17,",.01)="MOUSE,MICKEY" "RTN","C0QMU123",92,0) ; "VER") 8.0^22.0 "^DD",1130580001.401,1130580001.401,6.1,0) MODEL PERFORMANCE MEASURE SET^P1130580001.201'^C0Q(201,^6;1^Q "^DD",1130580001.401,1130580001.401,6.1,3) Enter a measure set to base created measure sets on "^DD",1130580001.401,1130580001.401,6.1,21,0) ^^4^4^3121022^ "^DD",1130580001.401,1130580001.401,6.1,21,1,0) Entering a selection here lets the software know that you want to create "^DD",1130580001.401,1130580001.401,6.1,21,2,0) a new Measure Set based on another measure set. The Measure Set's name "^DD",1130580001.401,1130580001.401,6.1,21,3,0) will be CLINIC NAME + PR, where the clinic name is truncated "^DD",1130580001.401,1130580001.401,6.1,21,4,0) to 27 characters, and where PR stands for Performance Report. "^DD",1130580001.401,1130580001.401,6.1,"DT") 3121022 "^DD",1130580001.401,1130580001.401,6.2,0) MODEL QUALITY MEASURE SET^P1130580001.201'^C0Q(201,^6;2^Q "^DD",1130580001.401,1130580001.401,6.2,3) Enter a measure set to base created measure sets on "^DD",1130580001.401,1130580001.401,6.2,21,0) ^^4^4^3121022^ "^DD",1130580001.401,1130580001.401,6.2,21,1,0) Entering a selection here lets the software know that you want to create "^DD",1130580001.401,1130580001.401,6.2,21,2,0) a new Measure Set based on another measure set. The Measure Set's name "^DD",1130580001.401,1130580001.401,6.2,21,3,0) will be CLINIC NAME + QM, where the clinic name is truncated "^DD",1130580001.401,1130580001.401,6.2,21,4,0) to 27 characters, and where QM stands for Quality Measures. "^DD",1130580001.401,1130580001.401,6.2,"DT") 3121022 **END** **END**