GMTSPI63 ; SLC/AGP - Post Install GMTS*2.7*63 ; 01/27/2005
;;2.7;Health Summary;**63**;Oct 20, 1995
Q
PRE ;
N DIU
S DIU="142",DIU(0)="" D EN^DIU2
Q
;
TYPE ;
N DA,DIK
S DIK="^GMT(142,",DA=5000016 D ^DIK
S DIK="^GMT(142,",DA=5000017 D ^DIK
;
N IEN,GMTSVAL
;
S GMTSVAL(1)="GMTSMHV"
S GMTSVAL(2)="07/06/2004@15:06:21"
S IEN=+$$FIND1^DIC(811.8,"","KU",.GMTSVAL)
I IEN'=0 D
. N TEXT
. S TEXT="Installing Health Summary item "_GMTSVAL(1)
. D BMES^XPDUTL(TEXT)
. D INSTALL^PXRMEXSI(IEN)
Q
;
CI ; Component Install
N GMTSIN,GMTSLIM,GMTSINST,GMTSTL,GMTSINST,GMTSTOT,GMTSBLD,GMTSCPS,GMTSCP,GMTSCI
S GMTSCPS="GECH;GECC;MHVD;MHVS"
F GMTSCI=1:1 Q:'$L($P(GMTSCPS,";",GMTSCI)) D
. S GMTSCP=$P(GMTSCPS,";",GMTSCI) K GMTSIN
. D ARRAY Q:'$D(GMTSIN)
. I $L($G(GMTSIN("TIM"))),+($G(GMTSIN(0)))>0 S GMTSLIM(+($G(GMTSIN(0))),"TIM")=$G(GMTSIN("TIM"))
. I $L($G(GMTSIN("OCC"))),+($G(GMTSIN(0)))>0 S GMTSLIM(+($G(GMTSIN(0))),"OCC")=$G(GMTSIN("OCC"))
. S GMTSINST=$$ADD^GMTSXPD1(.GMTSIN),GMTSTOT=+($G(GMTSTOT))+($G(GMTSINST))
; Rebuild Ad Hoc Health Summary Type
D:+($G(GMTSTOT))>0 BUILD^GMTSXPD3
D LIM
I +$$ROK("GMTSXPS1")>0 D
. N GMTSHORT S GMTSHORT=1,GMTSINST="",GMTSBLD="GMTS*2.7*63" D SEND^GMTSXPS1
D TYPE
Q
ARRAY ; Build Array
K GMTSIN N GMTSI,GMTSTXT,GMTSEX,GMTSFLD,GMTSUB,GMTSVAL,GMTSPDX S GMTSPDX=1,GMTSCP=$G(GMTSCP) Q:'$L(GMTSCP)
F GMTSI=1:1 D Q:'$L(GMTSTXT)
. S GMTSTXT="",GMTSEX="S GMTSTXT=$T("_GMTSCP_"+"_GMTSI_")" X GMTSEX S:$L(GMTSTXT,";")'>3 GMTSTXT="" Q:'$L(GMTSTXT)
. S GMTSFLD=$P(GMTSTXT,";",2),GMTSUB=$P(GMTSTXT,";",3),GMTSVAL=$P(GMTSTXT,";",4)
. S:$E(GMTSFLD,1)=1&(+GMTSFLD<2) GMTSVAL=$P(GMTSTXT,";",4,5)
. S:$E(GMTSFLD,1)=" "!('$L(GMTSFLD)) GMTSTXT="" Q:GMTSTXT=""
. S:$L(GMTSFLD)&('$L(GMTSUB)) GMTSIN(GMTSFLD)=GMTSVAL Q:$L(GMTSFLD)&('$L(GMTSUB)) S:$L(GMTSFLD)&($L(GMTSUB)) GMTSIN(GMTSFLD,GMTSUB)=GMTSVAL
. S:$G(GMTSFLD)=7&(+($G(GMTSUB))>0) GMTSPDX=0
K:+($G(GMTSPDX))=0 GMTSIN("PDX")
Q
LIM ; Limits
N GMTSI,GMTST,GMTSO,GMTSA S GMTSI=0 F S GMTSI=$O(GMTSLIM(GMTSI)) Q:+GMTSI=0 D
. S GMTSA=$P($G(^GMT(142.1,+($G(GMTSI)),0)),"^",3),GMTST=$G(GMTSLIM(+GMTSI,"TIM")) S:'$L(GMTST) GMTST=$S(GMTSA="Y ":"1Y ",1:"")
. S GMTSA=$P($G(^GMT(142.1,+($G(GMTSI)),0)),"^",5),GMTSO=$G(GMTSLIM(+GMTSI,"OCC")) S:'$L(GMTSO) GMTSO=$S(GMTSA="Y ":"10 ",1:"")
. D TO^GMTSXPD3(GMTSI,GMTST,GMTSO)
Q
ROK(X) ; Routine OK
S X=$G(X) Q:'$L(X) 0 N GMTSEX,GMTSTXT S GMTSEX="S GMTSTXT=$T(+1^"_X_")" X GMTSEX
Q:'$L(GMTSTXT) 0 Q 1
;
GECH ; Referral Categories Component Data
;0;;244
;.01;;GEC Health Factor Category
;1;;HFSEL;GMTSPXFP
;1.1;;1
;1.1;1;HF;PXRHS07(DFN,END,BEG,NUM,.GMTSARY)
;2;;Y
;3;;GECH
;3.5;;0
;4;;Y
;5;;
;6;;
;7;;1
;7;1;9999999.64
;8;;
;9;;Referral Categories
;10;;
;11;;
;12;;
;13;;GEC
;14;;
;TIM;;1Y
;OCC;;10
;
Q
;
GECC ; Referral Count Component Data
;0;;245
;.01;;GEC Completed Referral Count
;1;;PRINT;GMTSGEC
;1.1;;0
;2;;Y
;3;;GECC
;3.5;;0
;4;;Y
;5;;
;6;;
;7;;0
;8;;
;9;;Referral Count
;10;;
;11;;
;12;;
;13;;
;14;;
;PDX;;1
;TIM;;1Y
;OCC;;10
;
Q
;
MHVD ; Component Data
;0;;246
;.01;;MHV REMINDERS DETAIL DISPLAY
;1;;MAIN;GMTSPXHR
;1.1;;0
;2;;
;3;;MHVD
;3.5;;2
;3.5;1;This component display the detail description of all Clinical Reminders that
;3.5;2;are define for MyHealtheVet.
;4;;
;5;;
;6;;
;7;;0
;8;;
;9;;Detail Display
;10;;
;11;;
;12;;
;13;;
;14;;
;PDX;;1
;
Q
;
MHVS ; Component Data
;0;;247
;.01;;MHV REMINDERS SUMMARY DISPLAY
;1;;MAIN;GMTSPXHR
;1.1;;0
;2;;
;3;;MHVS
;3.5;;2
;3.5;1;This component display the summary description of all Clinical Reminders
;3.5;2;that are define for HealtheVet.
;4;;
;5;;
;6;;
;7;;0
;8;;
;9;;Summary Display
;10;;
;11;;
;12;;
;13;;
;14;;
;PDX;;1
;
Q
;
GMTSPI63 ; SLC/AGP - Post Install GMTS*2.7*63 ; 01/27/2005
+1 ;;2.7;Health Summary;**63**;Oct 20, 1995
+2 QUIT
PRE ;
+1 NEW DIU
+2 SET DIU="142"
SET DIU(0)=""
DO EN^DIU2
+3 QUIT
+4 ;
TYPE ;
+1 NEW DA,DIK
+2 SET DIK="^GMT(142,"
SET DA=5000016
DO ^DIK
+3 SET DIK="^GMT(142,"
SET DA=5000017
DO ^DIK
+4 ;
+5 NEW IEN,GMTSVAL
+6 ;
+7 SET GMTSVAL(1)="GMTSMHV"
+8 SET GMTSVAL(2)="07/06/2004@15:06:21"
+9 SET IEN=+$$FIND1^DIC(811.8,"","KU",.GMTSVAL)
+10 IF IEN'=0
Begin DoDot:1
+11 NEW TEXT
+12 SET TEXT="Installing Health Summary item "_GMTSVAL(1)
+13 DO BMES^XPDUTL(TEXT)
+14 DO INSTALL^PXRMEXSI(IEN)
End DoDot:1
+15 QUIT
+16 ;
CI ; Component Install
+1 NEW GMTSIN,GMTSLIM,GMTSINST,GMTSTL,GMTSINST,GMTSTOT,GMTSBLD,GMTSCPS,GMTSCP,GMTSCI
+2 SET GMTSCPS="GECH;GECC;MHVD;MHVS"
+3 FOR GMTSCI=1:1
IF '$LENGTH($PIECE(GMTSCPS,";",GMTSCI))
QUIT
Begin DoDot:1
+4 SET GMTSCP=$PIECE(GMTSCPS,";",GMTSCI)
KILL GMTSIN
+5 DO ARRAY
IF '$DATA(GMTSIN)
QUIT
+6 IF $LENGTH($GET(GMTSIN("TIM")))
IF +($GET(GMTSIN(0)))>0
SET GMTSLIM(+($GET(GMTSIN(0))),"TIM")=$GET(GMTSIN("TIM"))
+7 IF $LENGTH($GET(GMTSIN("OCC")))
IF +($GET(GMTSIN(0)))>0
SET GMTSLIM(+($GET(GMTSIN(0))),"OCC")=$GET(GMTSIN("OCC"))
+8 SET GMTSINST=$$ADD^GMTSXPD1(.GMTSIN)
SET GMTSTOT=+($GET(GMTSTOT))+($GET(GMTSINST))
End DoDot:1
+9 ; Rebuild Ad Hoc Health Summary Type
+10 IF +($GET(GMTSTOT))>0
DO BUILD^GMTSXPD3
+11 DO LIM
+12 IF +$$ROK("GMTSXPS1")>0
Begin DoDot:1
+13 NEW GMTSHORT
SET GMTSHORT=1
SET GMTSINST=""
SET GMTSBLD="GMTS*2.7*63"
DO SEND^GMTSXPS1
End DoDot:1
+14 DO TYPE
+15 QUIT
ARRAY ; Build Array
+1 KILL GMTSIN
NEW GMTSI,GMTSTXT,GMTSEX,GMTSFLD,GMTSUB,GMTSVAL,GMTSPDX
SET GMTSPDX=1
SET GMTSCP=$GET(GMTSCP)
IF '$LENGTH(GMTSCP)
QUIT
+2 FOR GMTSI=1:1
Begin DoDot:1
+3 SET GMTSTXT=""
SET GMTSEX="S GMTSTXT=$T("_GMTSCP_"+"_GMTSI_")"
XECUTE GMTSEX
IF $LENGTH(GMTSTXT,";")'>3
SET GMTSTXT=""
IF '$LENGTH(GMTSTXT)
QUIT
+4 SET GMTSFLD=$PIECE(GMTSTXT,";",2)
SET GMTSUB=$PIECE(GMTSTXT,";",3)
SET GMTSVAL=$PIECE(GMTSTXT,";",4)
+5 IF $EXTRACT(GMTSFLD,1)=1&(+GMTSFLD<2)
SET GMTSVAL=$PIECE(GMTSTXT,";",4,5)
+6 IF $EXTRACT(GMTSFLD,1)=" "!('$LENGTH(GMTSFLD))
SET GMTSTXT=""
IF GMTSTXT=""
QUIT
+7 IF $LENGTH(GMTSFLD)&('$LENGTH(GMTSUB))
SET GMTSIN(GMTSFLD)=GMTSVAL
IF $LENGTH(GMTSFLD)&('$LENGTH(GMTSUB))
QUIT
IF $LENGTH(GMTSFLD)&($LENGTH(GMTSUB))
SET GMTSIN(GMTSFLD,GMTSUB)=GMTSVAL
+8 IF $GET(GMTSFLD)=7&(+($GET(GMTSUB))>0)
SET GMTSPDX=0
End DoDot:1
IF '$LENGTH(GMTSTXT)
QUIT
+9 IF +($GET(GMTSPDX))=0
KILL GMTSIN("PDX")
+10 QUIT
LIM ; Limits
+1 NEW GMTSI,GMTST,GMTSO,GMTSA
SET GMTSI=0
FOR
SET GMTSI=$ORDER(GMTSLIM(GMTSI))
IF +GMTSI=0
QUIT
Begin DoDot:1
+2 SET GMTSA=$PIECE($GET(^GMT(142.1,+($GET(GMTSI)),0)),"^",3)
SET GMTST=$GET(GMTSLIM(+GMTSI,"TIM"))
IF '$LENGTH(GMTST)
SET GMTST=$SELECT(GMTSA="Y ":"1Y ",1:"")
+3 SET GMTSA=$PIECE($GET(^GMT(142.1,+($GET(GMTSI)),0)),"^",5)
SET GMTSO=$GET(GMTSLIM(+GMTSI,"OCC"))
IF '$LENGTH(GMTSO)
SET GMTSO=$SELECT(GMTSA="Y ":"10 ",1:"")
+4 DO TO^GMTSXPD3(GMTSI,GMTST,GMTSO)
End DoDot:1
+5 QUIT
ROK(X) ; Routine OK
+1 SET X=$GET(X)
IF '$LENGTH(X)
QUIT 0
NEW GMTSEX,GMTSTXT
SET GMTSEX="S GMTSTXT=$T(+1^"_X_")"
XECUTE GMTSEX
+2 IF '$LENGTH(GMTSTXT)
QUIT 0
QUIT 1
+3 ;
GECH ; Referral Categories Component Data
+1 ;0;;244
+2 ;.01;;GEC Health Factor Category
+3 ;1;;HFSEL;GMTSPXFP
+4 ;1.1;;1
+5 ;1.1;1;HF;PXRHS07(DFN,END,BEG,NUM,.GMTSARY)
+6 ;2;;Y
+7 ;3;;GECH
+8 ;3.5;;0
+9 ;4;;Y
+10 ;5;;
+11 ;6;;
+12 ;7;;1
+13 ;7;1;9999999.64
+14 ;8;;
+15 ;9;;Referral Categories
+16 ;10;;
+17 ;11;;
+18 ;12;;
+19 ;13;;GEC
+20 ;14;;
+21 ;TIM;;1Y
+22 ;OCC;;10
+23 ;
+24 QUIT
+25 ;
GECC ; Referral Count Component Data
+1 ;0;;245
+2 ;.01;;GEC Completed Referral Count
+3 ;1;;PRINT;GMTSGEC
+4 ;1.1;;0
+5 ;2;;Y
+6 ;3;;GECC
+7 ;3.5;;0
+8 ;4;;Y
+9 ;5;;
+10 ;6;;
+11 ;7;;0
+12 ;8;;
+13 ;9;;Referral Count
+14 ;10;;
+15 ;11;;
+16 ;12;;
+17 ;13;;
+18 ;14;;
+19 ;PDX;;1
+20 ;TIM;;1Y
+21 ;OCC;;10
+22 ;
+23 QUIT
+24 ;
MHVD ; Component Data
+1 ;0;;246
+2 ;.01;;MHV REMINDERS DETAIL DISPLAY
+3 ;1;;MAIN;GMTSPXHR
+4 ;1.1;;0
+5 ;2;;
+6 ;3;;MHVD
+7 ;3.5;;2
+8 ;3.5;1;This component display the detail description of all Clinical Reminders that
+9 ;3.5;2;are define for MyHealtheVet.
+10 ;4;;
+11 ;5;;
+12 ;6;;
+13 ;7;;0
+14 ;8;;
+15 ;9;;Detail Display
+16 ;10;;
+17 ;11;;
+18 ;12;;
+19 ;13;;
+20 ;14;;
+21 ;PDX;;1
+22 ;
+23 QUIT
+24 ;
MHVS ; Component Data
+1 ;0;;247
+2 ;.01;;MHV REMINDERS SUMMARY DISPLAY
+3 ;1;;MAIN;GMTSPXHR
+4 ;1.1;;0
+5 ;2;;
+6 ;3;;MHVS
+7 ;3.5;;2
+8 ;3.5;1;This component display the summary description of all Clinical Reminders
+9 ;3.5;2;that are define for HealtheVet.
+10 ;4;;
+11 ;5;;
+12 ;6;;
+13 ;7;;0
+14 ;8;;
+15 ;9;;Summary Display
+16 ;10;;
+17 ;11;;
+18 ;12;;
+19 ;13;;
+20 ;14;;
+21 ;PDX;;1
+22 ;
+23 QUIT
+24 ;