- Timestamp:
- Dec 4, 2009, 12:11:15 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
WorldVistAEHR/trunk/r/ORDER_ENTRY_RESULTS_REPORTING-OR-OCX--ORRC--ORRJ/ORQQPXRM.m
r613 r623 1 ORQQPXRM ; SLC/PJH - Functions for reminder data ;12/04/2007 2 ;;3.0;ORDER ENTRY/RESULTS REPORTING;**10,85,116,173,187,190,215,243**;Dec 17, 1997;Build 242 3 ; 4 ;ORQQPXRM DIALOG ACTIVE 5 ACTIVE(ORY,ORLIST) D ACTIVE^PXRMRPCC(.ORY,.ORLIST) Q ; DBIA 3080 6 ; 7 ;ORQQPXRM REMINDER EVALUATION 8 ALIST(ORY,ORPT,ORLIST) D ALIST^PXRMRPCA(.ORY,.ORPT,.ORLIST) Q ; DBIA 3078 9 ; 10 ;ORQQPXRM REMINDERS APPLICABLE 11 APPL(ORY,ORPT,ORLOC) D EVALCOVR^ORQQPX(.ORY,ORPT,ORLOC) Q 12 ;D APPL^PXRMRPCA(.ORY,ORPT,ORLOC) Q ; DBIA 3078 13 ; 14 ;ORQQPXRM REMINDER CATEGORIES 15 CATEGORY(ORY,ORPT,ORLOC) ; 16 D CATEGORY^PXRMRPCA(.ORY,ORPT,ORLOC) Q ; DBIA 3078 17 ; 18 ;ORQQPXRM REMINDER DIALOG 19 DIALOG(ORY,ORREM,DFN) ; 20 ; DBIA 3080 21 N DIEN 22 D DIALOG^PXRMRPCC(.ORY,ORREM,DFN) 23 ;I $G(DFN)'="" D DIALOG^PXRMRPCC(.ORY,ORREM,DFN) 24 ;I $G(DFN)="" D DIALOG^PXRMRPCC(.ORY,ORREM) 25 I $P($G(ORY(1)),U)=-1 Q 26 S DIEN=$G(^PXD(811.9,ORREM,51)) 27 S ORY(0)=0_U_+$P($G(^PXRMD(801.41,DIEN,0)),U,17) 28 Q 29 ; 30 ;ORQQPXRM EDUCATION SUBTOPICS 31 EDS(ORY,OREDU) D EDS^PXRMRPCB(.ORY,OREDU) Q ; DBIA 3079 32 ; 33 ;ORQQPXRM EDUCATION SUMMARY 34 EDL(ORY,OREM) D EDL^PXRMRPCB(.ORY,OREM) Q ; DBIA 3079 35 ; 36 ;ORQQPXRM EDUCATION TOPIC 37 EDU(ORY,OREDU) D EDU^PXRMRPCB(.ORY,OREDU) Q ; DBIA 3079 38 ; 39 ;ORQQPXRM PROGRESS NOTE HEADER 40 HDR(ORY,ORLOC) D HDR^PXRMRPCC(.ORY,ORLOC) Q ; DBIA 3080 41 ; 42 ;ORQQPXRM REMINDERS UNEVALUATED 43 LIST(ORY,ORPT,ORLOC) D GETLIST^ORQQPX(.ORY,ORLOC) Q 44 ;D LIST^PXRMRPCA(.ORY,ORPT,ORLOC) Q ; DBIA 3078 45 ; 46 ;ORQQPXRM MENTAL HEALTH 47 MH(ORY,OTEST) ; 48 D MH^PXRMRPCC(.ORY,OTEST) ; DBIA 3080 49 S ORY(0)=0 50 I $$PATCH^XPDUTL("YS*5.01*85") S ORY(0)=1 51 Q 52 ; 53 MHDLL(ORY,DFN,INPUTS) ; 54 N CNT,CNT1,ORRESULT,ORSCORES,TEXT 55 F TEXT="RESULTS","SCORES" D 56 .S CNT=0,CNT1=0 57 .F S CNT=$O(INPUTS(TEXT,CNT)) Q:CNT="" D 58 ..S CNT1=CNT1+1 59 ..I TEXT="RESULTS" S ORRESULT(CNT1)=$G(INPUTS(TEXT,CNT)) 60 ..I TEXT="SCORES" S ORSCORES(CNT1)=$G(INPUTS(TEXT,CNT)) 61 D MHDLL^PXRMDRSG(.ORY,.ORRESULT,.ORSCORES,DFN) 62 Q 63 ; 64 MHDLLDMS(ORY) ; 65 ;Returns a one if CPRS should used the MH dll. Returns a 0 if CPRS 66 ;should not used the MH dll. 67 S ORY=1 68 I '$$PATCH^XPDUTL("YS*5.01*85") S ORY=0 Q 69 I '$$PATCH^XPDUTL("PXRM*2.0*6") S ORY=0 Q 70 I $$GET^XPAR("SYS","OR USE MH DLL")<1 S ORY=0 Q 71 Q 72 ; 73 ;ORQQPXRM MENTAL HEALTH RESULTS 74 MHR(ORY,RESULT,ORES) ; 75 ; DBIA 3080 76 D MHR^PXRMRPCC(.ORY,RESULT,.ORES) 77 Q 78 ; 79 ;ORQQPXRM MENTAL HEALTH SAVE 80 MHS(ORY,ORES) D MHS^PXRMRPCC(.ORY,.ORES) Q ; DBIA 3080 81 ; 82 MHV(ORY,DFN,NAME,ANS) ; 83 N ORDATA,ORES,X 84 S ORY(0)=0 85 I '$$PATCH^XPDUTL("YS*5.01*85") S ORY(0)=2 Q 86 I '$L(ANS) Q 87 S ORES("DFN")=DFN,ORES("CODE")=NAME 88 F X=1:1:$L(ANS) I $E(ANS,X)'="X" D 89 .;I $E(ANS,X)="T" S $E(ANS,X)=1 90 .;I $E(ANS,X)="F" S $E(ANS,X)=2 91 .S ORES(X)=X_U_$E(ANS,X) 92 D CHECKCR^YTQPXRM4(.ORDATA,.ORES) 93 I $G(ORDATA(2))="OK" S ORY(0)=1 Q 94 S ORY(1)=$P($G(ORDATA(2)),U,2) 95 Q 96 ; 97 ;ORQQPXRM MST UPDATE 98 MST(ORY,ORPT,ORDATE,ORSTAT,ORPROV,ORFTYP,ORFIEN,ORRES) ; 99 D MST^PXRMRPCC(.ORY,ORPT,ORDATE,ORSTAT,ORPROV,ORFTYP,ORFIEN,ORRES) Q 100 ; 101 ;ORQQPXRM WOMEN HEALTH RESULT 102 WH(ORY,ORRESULT) ; 103 D WH^PXRMRPCC(.ORY,.ORRESULT) Q 104 ; 105 WHLETTER(ORY,ORIEN) ; 106 D LETTER^WVRPCNO1(.ORY,ORIEN) Q 107 ; 108 WHREPORT(ORY,ORIEN) ; 109 D RESULTS^WVALERTF(.ORY,ORIEN) Q 110 ; 111 ;ORQQPXRM DIALOG PROMPTS 112 PROMPT(ORY,ORDLG,ORDCUR,ORFTYP) ; 113 D PROMPT^PXRMRPCC(.ORY,ORDLG,ORDCUR,ORFTYP) Q ; DBIA 3080 114 ; 115 ;ORQQPXRM REMINDER DETAIL 116 REMDET(ORY,ORPT,ORIEN) D REMDET^PXRMRPCA(.ORY,ORPT,ORIEN) Q ; DBIA 3078 117 ; 118 ;ORQQPXRM REMINDER INQUIRY 119 RES(ORY,ORREM) D RES^PXRMRPCC(.ORY,ORREM) Q ; DBIA 3080 120 ; 121 ;ORQQPXRM REMINDER WEB 122 WEB(ORY,ORREM) D WEB^PXRMRPCA(.ORY,ORREM) Q ; DBIA 3078 123 ; 124 ;PXRM REMINDER DIALOG (TIU) 125 TDIALOG(ORY,ORDLG,DFN) ; 126 D DIALOG^PXRMRPCD(.ORY,ORDLG,DFN) 127 I $P($G(ORY(1)),U)=-1 Q 128 S ORY(0)=0_U_+$P($G(^PXRMD(801.41,ORDLG,0)),U,17) 129 Q 130 ; 131 ACT(REM) ;ORQQPX SEARCH ITEMS - XPAR value screen for active reminders 132 ;Treat a null value as inactive 133 I 'REM Q 0 134 ;Treat a non-existen entry as inactive 135 I $G(^PXD(811.9,REM,0))="" Q 0 136 ;Check IF inactive flag is set 137 I ($T(INACTIVE^PXRM)'=""),$$INACTIVE^PXRM(REM) Q 0 ; DBIA 2182 138 ;Otherwise active 139 Q 1 140 ; 141 REMVER(ORLIST) ; 142 S ORLIST=$$VERSION^XPDUTL("PXRM") 143 Q 144 ; 145 GEC(ORRESULT,IEN,DFN,VISIT,NOTEIEN) ; 146 D API^PXRMGECU(.ORRESULT,IEN,DFN,VISIT,1,NOTEIEN) 147 Q 148 ; 149 GECF(RESULT,DFN,FIN) ; 150 D FINISHED^PXRMGECU(DFN,FIN) 151 Q 152 ; 153 GECP(RESULT,DFN) ; 154 S RESULT=$$STATUS^PXRMGECU(DFN) 155 Q 156 ; 1 ORQQPXRM ; SLC/PJH - Functions for reminder data ;7/21/2005 [2/4/04 10:24am] 2 ;;3.0;ORDER ENTRY/RESULTS REPORTING;**10,85,116,173,187,190,215**;Dec 17, 1997 3 ; 4 ;ORQQPXRM DIALOG ACTIVE 5 ACTIVE(ORY,ORLIST) D ACTIVE^PXRMRPCC(.ORY,.ORLIST) Q ; DBIA 3080 6 ; 7 ;ORQQPXRM REMINDER EVALUATION 8 ALIST(ORY,ORPT,ORLIST) D ALIST^PXRMRPCA(.ORY,.ORPT,.ORLIST) Q ; DBIA 3078 9 ; 10 ;ORQQPXRM REMINDERS APPLICABLE 11 APPL(ORY,ORPT,ORLOC) D EVALCOVR^ORQQPX(.ORY,ORPT,ORLOC) Q 12 ;D APPL^PXRMRPCA(.ORY,ORPT,ORLOC) Q ; DBIA 3078 13 ; 14 ;ORQQPXRM REMINDER CATEGORIES 15 CATEGORY(ORY,ORPT,ORLOC) ; 16 D CATEGORY^PXRMRPCA(.ORY,ORPT,ORLOC) Q ; DBIA 3078 17 ; 18 ;ORQQPXRM REMINDER DIALOG 19 DIALOG(ORY,ORREM,DFN) ; 20 ; DBIA 3080 21 N DIEN 22 I $G(DFN)'="" D DIALOG^PXRMRPCC(.ORY,ORREM,DFN) 23 I $G(DFN)="" D DIALOG^PXRMRPCC(.ORY,ORREM) 24 I $P($G(ORY(1)),U)=-1 Q 25 S DIEN=$G(^PXD(811.9,ORREM,51)) 26 S ORY(0)=0_U_+$P($G(^PXRMD(801.41,DIEN,0)),U,17) 27 Q 28 ; 29 ;ORQQPXRM EDUCATION SUBTOPICS 30 EDS(ORY,OREDU) D EDS^PXRMRPCB(.ORY,OREDU) Q ; DBIA 3079 31 ; 32 ;ORQQPXRM EDUCATION SUMMARY 33 EDL(ORY,OREM) D EDL^PXRMRPCB(.ORY,OREM) Q ; DBIA 3079 34 ; 35 ;ORQQPXRM EDUCATION TOPIC 36 EDU(ORY,OREDU) D EDU^PXRMRPCB(.ORY,OREDU) Q ; DBIA 3079 37 ; 38 ;ORQQPXRM PROGRESS NOTE HEADER 39 HDR(ORY,ORLOC) D HDR^PXRMRPCC(.ORY,ORLOC) Q ; DBIA 3080 40 ; 41 ;ORQQPXRM REMINDERS UNEVALUATED 42 LIST(ORY,ORPT,ORLOC) D GETLIST^ORQQPX(.ORY,ORLOC) Q 43 ;D LIST^PXRMRPCA(.ORY,ORPT,ORLOC) Q ; DBIA 3078 44 ; 45 ;ORQQPXRM MENTAL HEALTH 46 MH(ORY,OTEST) ; 47 D MH^PXRMRPCC(.ORY,OTEST) ; DBIA 3080 48 S ORY(0)=0 49 I $$PATCH^XPDUTL("YS*5.01*85") S ORY(0)=1 50 Q 51 ; 52 ;ORQQPXRM MENTAL HEALTH RESULTS 53 MHR(ORY,RESULT,ORES) ; 54 ; DBIA 3080 55 D MHR^PXRMRPCC(.ORY,RESULT,.ORES) 56 Q 57 ; 58 ;ORQQPXRM MENTAL HEALTH SAVE 59 MHS(ORY,ORES) D MHS^PXRMRPCC(.ORY,.ORES) Q ; DBIA 3080 60 ; 61 MHV(ORY,DFN,NAME,ANS) ; 62 N ORDATA,ORES,X 63 S ORY(0)=0 64 I '$$PATCH^XPDUTL("YS*5.01*85") S ORY(0)=2 Q 65 I '$L(ANS) Q 66 S ORES("DFN")=DFN,ORES("CODE")=NAME 67 F X=1:1:$L(ANS) I $E(ANS,X)'="X" D 68 .;I $E(ANS,X)="T" S $E(ANS,X)=1 69 .;I $E(ANS,X)="F" S $E(ANS,X)=2 70 .S ORES(X)=X_U_$E(ANS,X) 71 D CHECKCR^YTQPXRM4(.ORDATA,.ORES) 72 I $G(ORDATA(2))="OK" S ORY(0)=1 Q 73 S ORY(1)=$P($G(ORDATA(2)),U,2) 74 Q 75 ; 76 ;ORQQPXRM MST UPDATE 77 MST(ORY,ORPT,ORDATE,ORSTAT,ORPROV,ORFTYP,ORFIEN,ORRES) ; 78 D MST^PXRMRPCC(.ORY,ORPT,ORDATE,ORSTAT,ORPROV,ORFTYP,ORFIEN,ORRES) Q 79 ; 80 ;ORQQPXRM WOMEN HEALTH RESULT 81 WH(ORY,ORRESULT) ; 82 D WH^PXRMRPCC(.ORY,.ORRESULT) Q 83 ; 84 WHLETTER(ORY,ORIEN) ; 85 D LETTER^WVRPCNO1(.ORY,ORIEN) Q 86 ; 87 WHREPORT(ORY,ORIEN) ; 88 D RESULTS^WVALERTF(.ORY,ORIEN) Q 89 ; 90 ;ORQQPXRM DIALOG PROMPTS 91 PROMPT(ORY,ORDLG,ORDCUR,ORFTYP) ; 92 D PROMPT^PXRMRPCC(.ORY,ORDLG,ORDCUR,ORFTYP) Q ; DBIA 3080 93 ; 94 ;ORQQPXRM REMINDER DETAIL 95 REMDET(ORY,ORPT,ORIEN) D REMDET^PXRMRPCA(.ORY,ORPT,ORIEN) Q ; DBIA 3078 96 ; 97 ;ORQQPXRM REMINDER INQUIRY 98 RES(ORY,ORREM) D RES^PXRMRPCC(.ORY,ORREM) Q ; DBIA 3080 99 ; 100 ;ORQQPXRM REMINDER WEB 101 WEB(ORY,ORREM) D WEB^PXRMRPCA(.ORY,ORREM) Q ; DBIA 3078 102 ; 103 ;PXRM REMINDER DIALOG (TIU) 104 TDIALOG(ORY,ORDLG,DFN) ; 105 D DIALOG^PXRMRPCD(.ORY,ORDLG,DFN) 106 I $P($G(ORY(1)),U)=-1 Q 107 S ORY(0)=0_U_+$P($G(^PXRMD(801.41,ORDLG,0)),U,17) 108 Q 109 ; 110 ACT(REM) ;ORQQPX SEARCH ITEMS - XPAR value screen for active reminders 111 ;Treat a null value as inactive 112 I 'REM Q 0 113 ;Treat a non-existen entry as inactive 114 I $G(^PXD(811.9,REM,0))="" Q 0 115 ;Check IF inactive flag is set 116 I ($T(INACTIVE^PXRM)'=""),$$INACTIVE^PXRM(REM) Q 0 ; DBIA 2182 117 ;Otherwise active 118 Q 1 119 ; 120 REMVER(ORLIST) ; 121 S ORLIST=$$VERSION^XPDUTL("PXRM") 122 Q 123 ; 124 GEC(ORRESULT,IEN,DFN,VISIT,NOTEIEN) ; 125 I $$VERSION^XPDUTL("PXRM")["2.0" D API^PXRMGECU(.ORRESULT,IEN,DFN,VISIT,1,NOTEIEN) 126 Q 127 ; 128 GECF(RESULT,DFN,FIN) ; 129 I $$VERSION^XPDUTL("PXRM")["2.0" D FINISHED^PXRMGECU(DFN,FIN) 130 Q 131 ; 132 GECP(RESULT,DFN) ; 133 I $$VERSION^XPDUTL("PXRM")["2.0",$G(DFN)'="" S RESULT=$$STATUS^PXRMGECU(DFN) 134 Q 135 ;
Note:
See TracChangeset
for help on using the changeset viewer.