- GMRV1003 ;IHS/MSC/MGH - Patch support;02-Feb-2015 09:58;DU
- ;;5.0;GEN. MED. REC. - VITALS;**1003**;Mar 29, 1996;Build 12
- ;
- ENV ;EP -
- N PATCH
- S (XPDDIQ("XPZ1"),XPDDIQ("XPZ2"))=0
- ;
- ;Check for the installation of other patches
- S PATCH="XU*8.0*1016"
- I '$$PATCH(PATCH) D Q
- . W !,"You must first install "_PATCH_"." S XPDQUIT=2
- S PATCH="GMRV*5.0*1002"
- I '$$PATCH(PATCH) D Q
- . W !,"You must first install "_PATCH_"." S XPDQUIT=2
- S PATCH="BJPC*2.0*10"
- I '$$PATCH(PATCH) D Q
- . W !,"You must first install "_PATCH_"." S XPDQUIT=2
- Q
- ;
- PATCH(X) ;return 1 if patch X was installed, X=aaaa*nn.nn*nnnn
- ;copy of code from XPDUTL but modified to handle 4 digit IHS patch numb
- Q:X'?1.4UN1"*"1.2N1"."1.2N.1(1"V",1"T").2N1"*"1.4N 0
- NEW NUM,I,J
- S I=$O(^DIC(9.4,"C",$P(X,"*"),0)) Q:'I 0
- S J=$O(^DIC(9.4,I,22,"B",$P(X,"*",2),0)),X=$P(X,"*",3) Q:'J 0
- ;check if patch is just a number
- Q:$O(^DIC(9.4,I,22,J,"PAH","B",X,0)) 1
- S NUM=$O(^DIC(9.4,I,22,J,"PAH","B",X_" SEQ"))
- Q (X=+NUM)
- PRE ;EP -
- Q
- POST ;EP -
- N I,NAME,IEN,VITAL,CAT,FDA,ERRR,XUMF,AIEN
- S XUMF=1
- ;O2 qualifier
- S NAME="AMBIENT AIR"
- S IEN=$O(^GMRD(120.52,"B",NAME,""))
- Q:'IEN
- K ^GMRD(120.52,IEN,1)
- S AIEN="+1,"_IEN_","
- S FDA(120.521,AIEN,.01)="O2"
- S FDA(120.521,AIEN,.02)="METHOD"
- S IENS(1)=2
- D UPDATE^DIE("E","FDA","","ERRR(1)")
- I $D(ERRR) D MES^XPDUTL("Error updating qualifier "_$P(^GMRD(120.52,IEN,0),U))
- Q
- GMRV1003 ;IHS/MSC/MGH - Patch support;02-Feb-2015 09:58;DU
- +1 ;;5.0;GEN. MED. REC. - VITALS;**1003**;Mar 29, 1996;Build 12
- +2 ;
- ENV ;EP -
- +1 NEW PATCH
- +2 SET (XPDDIQ("XPZ1"),XPDDIQ("XPZ2"))=0
- +3 ;
- +4 ;Check for the installation of other patches
- +5 SET PATCH="XU*8.0*1016"
- +6 IF '$$PATCH(PATCH)
- Begin DoDot:1
- +7 WRITE !,"You must first install "_PATCH_"."
- SET XPDQUIT=2
- End DoDot:1
- QUIT
- +8 SET PATCH="GMRV*5.0*1002"
- +9 IF '$$PATCH(PATCH)
- Begin DoDot:1
- +10 WRITE !,"You must first install "_PATCH_"."
- SET XPDQUIT=2
- End DoDot:1
- QUIT
- +11 SET PATCH="BJPC*2.0*10"
- +12 IF '$$PATCH(PATCH)
- Begin DoDot:1
- +13 WRITE !,"You must first install "_PATCH_"."
- SET XPDQUIT=2
- End DoDot:1
- QUIT
- +14 QUIT
- +15 ;
- PATCH(X) ;return 1 if patch X was installed, X=aaaa*nn.nn*nnnn
- +1 ;copy of code from XPDUTL but modified to handle 4 digit IHS patch numb
- +2 IF X'?1.4UN1"*"1.2N1"."1.2N.1(1"V",1"T").2N1"*"1.4N
- QUIT 0
- +3 NEW NUM,I,J
- +4 SET I=$ORDER(^DIC(9.4,"C",$PIECE(X,"*"),0))
- IF 'I
- QUIT 0
- +5 SET J=$ORDER(^DIC(9.4,I,22,"B",$PIECE(X,"*",2),0))
- SET X=$PIECE(X,"*",3)
- IF 'J
- QUIT 0
- +6 ;check if patch is just a number
- +7 IF $ORDER(^DIC(9.4,I,22,J,"PAH","B",X,0))
- QUIT 1
- +8 SET NUM=$ORDER(^DIC(9.4,I,22,J,"PAH","B",X_" SEQ"))
- +9 QUIT (X=+NUM)
- PRE ;EP -
- +1 QUIT
- POST ;EP -
- +1 NEW I,NAME,IEN,VITAL,CAT,FDA,ERRR,XUMF,AIEN
- +2 SET XUMF=1
- +3 ;O2 qualifier
- +4 SET NAME="AMBIENT AIR"
- +5 SET IEN=$ORDER(^GMRD(120.52,"B",NAME,""))
- +6 IF 'IEN
- QUIT
- +7 KILL ^GMRD(120.52,IEN,1)
- +8 SET AIEN="+1,"_IEN_","
- +9 SET FDA(120.521,AIEN,.01)="O2"
- +10 SET FDA(120.521,AIEN,.02)="METHOD"
- +11 SET IENS(1)=2
- +12 DO UPDATE^DIE("E","FDA","","ERRR(1)")
- +13 IF $DATA(ERRR)
- DO MES^XPDUTL("Error updating qualifier "_$PIECE(^GMRD(120.52,IEN,0),U))
- +14 QUIT