Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: GMRVFUT0

GMRVFUT0.m

Go to the documentation of this file.
GMRVFUT0 ;HIRMFO/RM-FILE UTILITIES FOR 120.5 FILE ;1/21/97
 ;;4.0;Vitals/Measurements;;Apr 25, 1997
EN1(Y,DA) ; INPUT TRANSFORM FOR NAME (.01) FIELD OF QUALIFIER
 ; (120.505) SUB-FILE OF GMRV VITAL MEASUREMENT (120.5) FILE.
 ;   Input variables:  Y is entry in 120.52 being looked up
 ;                     DA is entry in 120.5 where Qualifier data
 ;                        is being selected.
 ;   Function value: 1 if can select this Qualifier, else 0.
 ;
 N GMRVFXN,GMRVTYP S GMRVFXN=0
 S GMRVTYP=$P($G(^GMR(120.5,DA,0)),"^",3)
 I GMRVTYP>0,$D(^GMRD(120.52,"C",GMRVTYP,+Y)) S GMRVFXN=1
 Q GMRVFXN
 ;
EN2(DA,X) ; CALLED FROM INPUT TRANSFORM OF RATE (1.2) FIELD OF THE GMRV
 ; VITAL MEASUREMENT (#120.5) FILE.
 ;   Input variable: DA is entry in 120.5 where Rate is being validated.
 ;                   X is value of Rate being validated.
 ;
 N GMRVFXN,GMRVINP,GMRVM,GMRVTYP
 S GMRVFXN=1 I $A(X)=45 S GMRVFXN=0
 I GMRVFXN D
 .  S GMRVTYP=$P($G(^GMR(120.5,DA,0)),"^",3)
 .  I GMRVTYP'>0 S GMRVFXN=0
 .  I GMRVTYP>0,'$P($G(^GMRD(120.51,GMRVTYP,0)),"^",4) S GMRVFXN=0
 .  I 'GMRVFXN D
 .  .  S GMRVFXN=0,GMRVM(1)=$C(7),GMRVM(3)=""
 .  .  S GMRVM(2)="   RATE CANNOT BE ENTERED FOR THIS MEASUREMENT TYPE!"
 .  .  D EN^DDIOL(.GMRVM,"","?5")
 .  .  Q
 .  Q
 I GMRVFXN,$L(X)>30!($L(X)<1) S GMRVFXN=0
 I GMRVFXN D
 .  S GMRVINP=$E($G(^GMRD(120.51,$P(^GMR(120.5,DA,0),U,3),1)),1,245)
 .  I GMRVINP'="" X GMRVINP I '$D(X) S GMRVFXN=0
 .  I GMRVINP="" S GMRVFXN=0
 .  Q
 Q GMRVFXN
 ;
AA(GMRVFLD,GMRVSK,DA,X) ; CALLED FROM SET/KILL LOGIC OF:  AA01 XREF OF
 ; DATE/TIME VITALS TAKEN (.01) FIELD, AA02 XREF OF PATIENT (.02)
 ; FIELD, AND AA03 XREF OF VITAL TYPE (.03) FIELD OF THE GMRV VITAL
 ; MEASUREMENT (120.5) FILE TO SET "AA" INDEX.
 ;    Input variables: GMRVFLD=field making call
 ;                     GMRVSK=1 if called from SET LOGIC, 2 if called
 ;                            from KILL LOGIC.
 ;                     DA is entry being indexed.
 ;                     X is value of GMRVFLD to be indexed.
 ;
 N GMRVDFN,GMRVDT,GMRVTYP,GMRVX
 S GMRVX=$G(^GMR(120.5,DA,0))
 S GMRVDT=$S(GMRVFLD=.01:X,1:$P(GMRVX,"^"))
 S GMRVDFN=$S(GMRVFLD=.02:X,1:$P(GMRVX,"^",2))
 S GMRVTYP=$S(GMRVFLD=.03:X,1:$P(GMRVX,"^",3))
 Q:GMRVDT=""!(GMRVDFN="")!(GMRVTYP="")
 I GMRVSK=1 S ^GMR(120.5,"AA",GMRVDFN,GMRVTYP,9999999-GMRVDT,DA)=""
 I GMRVSK=2 K ^GMR(120.5,"AA",GMRVDFN,GMRVTYP,9999999-GMRVDT,DA)
 Q
RATEHLP(DA) ; CALLED FROM EXECUTABLE HELP OF RATE (1.2) FIELD OF GMRV
 ; VITAL MEASUREMENT (120.5) FILE.
 ;    Input Variable:  DA is entry in 120.5 to display help for.
 ;
 N GMRVTYP,XQH
 S GMRVTYP=$P($G(^GMR(120.5,DA,0)),"^",3)
 S XQH=$P($G(^GMRD(120.51,+GMRVTYP,0)),"^",6)
 I XQH="" D EN^DDIOL("RATE NOT APPLICABLE FOR THIS TYPE OF MEASUREMENT")
 I XQH'="" D EN^XQH
 Q