- GMRYSE3 ;HIRMFO/YH-ITEMIZED PATIENT I/O REPORT BY SHIFT PART 4 ; 9/20/13 2:21pm
- ;;4.0;Intake/Output;**9**;Apr 25, 1997;Build 6
- WIVINF ;
- S GDA=0 F S GDA=$O(^TMP($J,"GMRY",GDATE,GSFT,GIO,GHR,GIVDT,GIVTYP,GSUB,GDA)) Q:GDA'>0!GMROUT S GDATA=$G(^TMP($J,"GMRY",GDATE,GSFT,GIO,GHR,GIVDT,GIVTYP,GSUB,GDA)),GAMT=+$P(GDATA,"^") D
- .I GIVTYP="Z" D WCARE Q
- .I GAMT>3000 D START Q
- .I GDA=2 S (GTYP,GIN)=$P(GDATA,"^",2),GIN=$S(GIN="B":2,GIN="A"!(GIN="P")!(GIN="L"):1,GIN="H"!(GIN="I"):3,1:0) Q:GIN=0 D ADD^GMRYSE2,WIV Q
- .I GDA=3 D
- ..S GPORT=$G(^GMR(126,DFN,"IV",GSUB,3))
- ..D:($Y+10)>IOSL HEADER2^GMRYSE1 Q:GMROUT D WHR Q:GMROUT W ?14
- ..S GTXT(1)=$P(GDATA,"^",5)_" "_$P(GDATA,"^",4)_$S(GPORT'="":" ("_GPORT_")",1:"")_" infusion rate adjusted: "_$S(+$P(GDATA,"^")>0:$P(GDATA,"^"),1:"UNKNOWN")_" mls/hr"_$S($P(GDATA,"^",6)'="":" - "_$P(GDATA,"^",6),1:"")
- ..I $L(GTXT(1))>0 D WLINE
- ..S GNURSE=+$P(GDATA,"^",2) D WNURS
- Q
- START ;
- D:($Y+10)>IOSL HEADER2^GMRYSE1 Q:GMROUT S GCATH=$P(GDATA,"^",6),GTYP=$P(GDATA,"^",4),GSITE=$P(GDATA,"^",2),GSOL=$P(GDATA,"^",3),GVOL=$P(GDATA,"^",5),GNURSE=+$P(GDATA,"^",7) W " " D WHR
- S GPORT=$P($G(^GMR(126,DFN,"IV",GSUB,3)),"^") D WTYPE
- S GTXT(1)=GTXT(1)_$S(GTYP'="L":" "_GVOL_" mls ",1:"")_$S($P(GDATA,"^",11)["FLUSH":"flushed",GCATH'="":"started",1:"added")_" Site: "_GSITE S:GCATH'="" GTXT(1)=GTXT(1)_" IV cath: "_GCATH
- S GTXT(1)=GTXT(1)_$S(GPORT'="":" ("_GPORT_")",1:"")_$S(+$P(GDATA,"^",12)>0:" Rate: "_+$P(GDATA,"^",12)_" ml/hr",1:"")
- I $L(GTXT(1))>0 D WLINE
- D WNURS Q:$P(GDATA,"^",9)="" S GSAVE=GHR,GHR=$P(GDATA,"^",9),GNURSE=+$P(GDATA,"^",10),GREASON=$S($P(GDATA,"^",11)'="":$P(GDATA,"^",11),1:"")
- I GTYP="L" S GREASON=$S($P(GDATA,"^",11)="INFUSED"!($P(GDATA,"^",11)="FLUSHED"):"",1:GREASON)
- I GSOL'="*" D
- . D:($Y+10)>IOSL HEADER2^GMRYSE1 W ?20,"Discontinued on "_$E(GHR,4,5)_"/"_$E(GHR,6,7)_"/"_$E(GHR,2,3)_" @ " D WDC W:GREASON'=""&(IOM'>80) !,?20,"Reason: "_GREASON W:GREASON'=""&(IOM>80) " Reason: "_GREASON D WNURS S GHR=GSAVE K GSAVE
- Q
- WIV ;PRINT IV INTAKE
- S GNURSE=+$P(GDATA,"^",4),GSITE=$P(GDATA,"^",3),GSOL=$P(GDATA,"^",5)
- I GTYP'="L" D
- .D:($Y+10)>IOSL HEADER2^GMRYSE1 Q:GMROUT D WHR Q:GMROUT D WTYPE S GTXT(1)=GTXT(1)_" Intake Vol: "_$S($P(GDATA,"^",6)["*":"unknown",1:GAMT_" mls")_" Remaining amount: "_$P(GDATA,"^",6)_" mls "
- .I $L(GTXT(1))>0 D WLINE
- .D WNURS
- Q
- WTYPE ;PRINT IV TYPE
- S GTXT(1)=GSOL_" "_$S(GTYP="A":"admix",GTYP="B":"blood",GTYP="P":"piggy",GTYP="H":"hyper",GTYP="I":"intra",1:"")
- Q
- WHR ;
- I GHOLD=$E(GHR,1,12) Q
- S GHR(1)=$E($P(GHR,".",2),1,4),GLEN=$L(GHR(1)),GTIME=$S(GLEN=1:GHR(1)_"000",GLEN=2:GHR(1)_"00",GLEN=3:GHR(1)_"0",1:GHR(1))
- W ?4,$E(GTIME,1,2),":",$E(GTIME,3,4)_" "
- S GHOLD=$E(GHR,1,12) Q
- WNURS G:$S(GNURSE=0:1,'$D(^VA(200,GNURSE,0)):1,$P(^VA(200,GNURSE,0),"^")="":1,1:0) Q S GCOL=$S(IOM>80:120,1:70) W ?GCOL,$E($P($P(^VA(200,GNURSE,0),"^"),",",2)),$E($P(^(0),"^"))
- N GPOS
- S GPOS=$$GPOS^GMRYSE1(GNURSE)
- W "/"_$S(GPOS="R":"RN",GPOS="L":"LPN",GPOS="N":"NA",GPOS="C":"CL",1:"OTH")
- Q W ! Q
- WCARE ;
- Q:$P(GDATA,"^",2)=""&($P(GDATA,"^",3)="")&($P(GDATA,"^",4)="") D WHR S GTXT(1)=$P(GDATA,"^",8)_": " S GSAVE=$L(GTXT(1)),GMRY=$P(GDATA,"^",2),GTXT(1)=GTXT(1)_$S(GMRY'="":GMRY,1:"")
- S GMRY=$S($P(GDATA,"^",4)="Y":$P(GDATA,"^",4),1:""),GTXT(1)=GTXT(1)_$S(GMRY'=""&($L(GTXT(1))>GSAVE):", ",1:"")_$S(GMRY="Y":"dressing changed",1:"")
- S GMRY=$P(GDATA,"^",6),GTXT(1)=GTXT(1)_$S($L(GTXT(1))>GSAVE&(GMRY'=""):", ",1:"")_$S(GMRY="Y":"site discontinued",1:"")
- I $L(GTXT(1))>0 D WLINE
- I $P(GDATA,"^",3)["Y" D
- . S GSITE=$P(GDATA,"^",8),GIEN=+$P(GDATA,"^",7),GPORT=$S($D(^GMR(126,DFN,"IV",GIEN,3)):^(3),1:""),GSITE(GSITE)="" D FINDCA^GMRYCATH(.GSITE)
- . S GTXT(1)=" "_GSITE(GSITE)_$S(GPORT'="":" - "_GPORT,1:"")_" tubing changed" D WLINE
- Q2 K GMR100,GMR101,GMR102,GTXT,GMRLEN
- S GNURSE=+$P(GDATA,"^",5) D WNURS
- Q
- WDC ;
- S GHR(1)=$E($P(GHR,".",2),1,4),GLEN=$L(GHR(1)),GTIME=$S(GLEN=1:GHR(1)_"000",GLEN=2:GHR(1)_"00",GLEN=3:GHR(1)_"0",1:GHR(1)) W $E(GTIME,1,2)_":"_$E(GTIME,3,4) Q
- WLINE ;PRINT DESCRIPTION
- N X S DIWR=$S(IOM>80:100,1:50),DIWF="",DIWL=0,X=GTXT(1) K ^UTILITY($J) D ^DIWP
- S GMRI=0 F S GMRI=$O(^UTILITY($J,"W",0,GMRI)) Q:GMRI'>0 D:($Y+10)>IOSL HEADER2^GMRYSE1 Q:GMROUT W !,?14,^UTILITY($J,"W",0,GMRI,0)
- K ^UTILITY($J),GMRI Q
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HGMRYSE3 4309 printed Mar 13, 2025@21:00:18 Page 2
- GMRYSE3 ;HIRMFO/YH-ITEMIZED PATIENT I/O REPORT BY SHIFT PART 4 ; 9/20/13 2:21pm
- +1 ;;4.0;Intake/Output;**9**;Apr 25, 1997;Build 6
- WIVINF ;
- +1 SET GDA=0
- FOR
- SET GDA=$ORDER(^TMP($JOB,"GMRY",GDATE,GSFT,GIO,GHR,GIVDT,GIVTYP,GSUB,GDA))
- if GDA'>0!GMROUT
- QUIT
- SET GDATA=$GET(^TMP($JOB,"GMRY",GDATE,GSFT,GIO,GHR,GIVDT,GIVTYP,GSUB,GDA))
- SET GAMT=+$PIECE(GDATA,"^")
- Begin DoDot:1
- +2 IF GIVTYP="Z"
- DO WCARE
- QUIT
- +3 IF GAMT>3000
- DO START
- QUIT
- +4 IF GDA=2
- SET (GTYP,GIN)=$PIECE(GDATA,"^",2)
- SET GIN=$SELECT(GIN="B":2,GIN="A"!(GIN="P")!(GIN="L"):1,GIN="H"!(GIN="I"):3,1:0)
- if GIN=0
- QUIT
- DO ADD^GMRYSE2
- DO WIV
- QUIT
- +5 IF GDA=3
- Begin DoDot:2
- +6 SET GPORT=$GET(^GMR(126,DFN,"IV",GSUB,3))
- +7 if ($Y+10)>IOSL
- DO HEADER2^GMRYSE1
- if GMROUT
- QUIT
- DO WHR
- if GMROUT
- QUIT
- WRITE ?14
- +8 SET GTXT(1)=$PIECE(GDATA,"^",5)_" "_$PIECE(GDATA,"^",4)_$SELECT(GPORT'="":" ("_GPORT_")",1:"")_" infusion rate adjusted: "_$SELECT(+$PIECE(GDATA,"^")>0:$PIECE(GDATA,"^"),1:"UNKNOWN")_" mls/hr"_$SELECT($PIECE(GDATA,"^",6)'="":" -
- "_...
- ... $PIECE(GDATA,"^",6),1:"")
- +9 IF $LENGTH(GTXT(1))>0
- DO WLINE
- +10 SET GNURSE=+$PIECE(GDATA,"^",2)
- DO WNURS
- End DoDot:2
- End DoDot:1
- +11 QUIT
- START ;
- +1 if ($Y+10)>IOSL
- DO HEADER2^GMRYSE1
- if GMROUT
- QUIT
- SET GCATH=$PIECE(GDATA,"^",6)
- SET GTYP=$PIECE(GDATA,"^",4)
- SET GSITE=$PIECE(GDATA,"^",2)
- SET GSOL=$PIECE(GDATA,"^",3)
- SET GVOL=$PIECE(GDATA,"^",5)
- SET GNURSE=+$PIECE(GDATA,"^",7)
- WRITE " "
- DO WHR
- +2 SET GPORT=$PIECE($GET(^GMR(126,DFN,"IV",GSUB,3)),"^")
- DO WTYPE
- +3 SET GTXT(1)=GTXT(1)_$SELECT(GTYP'="L":" "_GVOL_" mls ",1:"")_$SELECT($PIECE(GDATA,"^",11)["FLUSH":"flushed",GCATH'="":"started",1:"added")_" Site: "_GSITE
- if GCATH'=""
- SET GTXT(1)=GTXT(1)_" IV cath: "_GCATH
- +4 SET GTXT(1)=GTXT(1)_$SELECT(GPORT'="":" ("_GPORT_")",1:"")_$SELECT(+$PIECE(GDATA,"^",12)>0:" Rate: "_+$PIECE(GDATA,"^",12)_" ml/hr",1:"")
- +5 IF $LENGTH(GTXT(1))>0
- DO WLINE
- +6 DO WNURS
- if $PIECE(GDATA,"^",9)=""
- QUIT
- SET GSAVE=GHR
- SET GHR=$PIECE(GDATA,"^",9)
- SET GNURSE=+$PIECE(GDATA,"^",10)
- SET GREASON=$SELECT($PIECE(GDATA,"^",11)'="":$PIECE(GDATA,"^",11),1:"")
- +7 IF GTYP="L"
- SET GREASON=$SELECT($PIECE(GDATA,"^",11)="INFUSED"!($PIECE(GDATA,"^",11)="FLUSHED"):"",1:GREASON)
- +8 IF GSOL'="*"
- Begin DoDot:1
- +9 if ($Y+10)>IOSL
- DO HEADER2^GMRYSE1
- WRITE ?20,"Discontinued on "_$EXTRACT(GHR,4,5)_"/"_$EXTRACT(GHR,6,7)_"/"_$EXTRACT(GHR,2,3)_" @ "
- DO WDC
- if GREASON'=""&(IOM'>80)
- WRITE !,?20,"Reason: "_GREASON
- if GREASON'=""&(IOM>80)
- WRITE " Reason: "_GREASON
- DO WNURS
- SET GHR=GSAVE
- KILL GSAVE
- End DoDot:1
- +10 QUIT
- WIV ;PRINT IV INTAKE
- +1 SET GNURSE=+$PIECE(GDATA,"^",4)
- SET GSITE=$PIECE(GDATA,"^",3)
- SET GSOL=$PIECE(GDATA,"^",5)
- +2 IF GTYP'="L"
- Begin DoDot:1
- +3 if ($Y+10)>IOSL
- DO HEADER2^GMRYSE1
- if GMROUT
- QUIT
- DO WHR
- if GMROUT
- QUIT
- DO WTYPE
- SET GTXT(1)=GTXT(1)_" Intake Vol: "_$SELECT($PIECE(GDATA,"^",6)["*":"unknown",1:GAMT_" mls")_" Remaining amount: "_$PIECE(GDATA,"^",6)_" mls "
- +4 IF $LENGTH(GTXT(1))>0
- DO WLINE
- +5 DO WNURS
- End DoDot:1
- +6 QUIT
- WTYPE ;PRINT IV TYPE
- +1 SET GTXT(1)=GSOL_" "_$SELECT(GTYP="A":"admix",GTYP="B":"blood",GTYP="P":"piggy",GTYP="H":"hyper",GTYP="I":"intra",1:"")
- +2 QUIT
- WHR ;
- +1 IF GHOLD=$EXTRACT(GHR,1,12)
- QUIT
- +2 SET GHR(1)=$EXTRACT($PIECE(GHR,".",2),1,4)
- SET GLEN=$LENGTH(GHR(1))
- SET GTIME=$SELECT(GLEN=1:GHR(1)_"000",GLEN=2:GHR(1)_"00",GLEN=3:GHR(1)_"0",1:GHR(1))
- +3 WRITE ?4,$EXTRACT(GTIME,1,2),":",$EXTRACT(GTIME,3,4)_" "
- +4 SET GHOLD=$EXTRACT(GHR,1,12)
- QUIT
- WNURS if $SELECT(GNURSE=0
- GOTO Q
- SET GCOL=$SELECT(IOM>80:120,1:70)
- WRITE ?GCOL,$EXTRACT($PIECE($PIECE(^VA(200,GNURSE,0),"^"),",",2)),$EXTRACT($PIECE(^(0),"^"))
- +1 NEW GPOS
- +2 SET GPOS=$$GPOS^GMRYSE1(GNURSE)
- +3 WRITE "/"_$SELECT(GPOS="R":"RN",GPOS="L":"LPN",GPOS="N":"NA",GPOS="C":"CL",1:"OTH")
- Q WRITE !
- QUIT
- WCARE ;
- +1 if $PIECE(GDATA,"^",2)=""&($PIECE(GDATA,"^",3)="")&($PIECE(GDATA,"^",4)="")
- QUIT
- DO WHR
- SET GTXT(1)=$PIECE(GDATA,"^",8)_": "
- SET GSAVE=$LENGTH(GTXT(1))
- SET GMRY=$PIECE(GDATA,"^",2)
- SET GTXT(1)=GTXT(1)_$SELECT(GMRY'="":GMRY,1:"")
- +2 SET GMRY=$SELECT($PIECE(GDATA,"^",4)="Y":$PIECE(GDATA,"^",4),1:"")
- SET GTXT(1)=GTXT(1)_$SELECT(GMRY'=""&($LENGTH(GTXT(1))>GSAVE):", ",1:"")_$SELECT(GMRY="Y":"dressing changed",1:"")
- +3 SET GMRY=$PIECE(GDATA,"^",6)
- SET GTXT(1)=GTXT(1)_$SELECT($LENGTH(GTXT(1))>GSAVE&(GMRY'=""):", ",1:"")_$SELECT(GMRY="Y":"site discontinued",1:"")
- +4 IF $LENGTH(GTXT(1))>0
- DO WLINE
- +5 IF $PIECE(GDATA,"^",3)["Y"
- Begin DoDot:1
- +6 SET GSITE=$PIECE(GDATA,"^",8)
- SET GIEN=+$PIECE(GDATA,"^",7)
- SET GPORT=$SELECT($DATA(^GMR(126,DFN,"IV",GIEN,3)):^(3),1:"")
- SET GSITE(GSITE)=""
- DO FINDCA^GMRYCATH(.GSITE)
- +7 SET GTXT(1)=" "_GSITE(GSITE)_$SELECT(GPORT'="":" - "_GPORT,1:"")_" tubing changed"
- DO WLINE
- End DoDot:1
- Q2 KILL GMR100,GMR101,GMR102,GTXT,GMRLEN
- +1 SET GNURSE=+$PIECE(GDATA,"^",5)
- DO WNURS
- +2 QUIT
- WDC ;
- +1 SET GHR(1)=$EXTRACT($PIECE(GHR,".",2),1,4)
- SET GLEN=$LENGTH(GHR(1))
- SET GTIME=$SELECT(GLEN=1:GHR(1)_"000",GLEN=2:GHR(1)_"00",GLEN=3:GHR(1)_"0",1:GHR(1))
- WRITE $EXTRACT(GTIME,1,2)_":"_$EXTRACT(GTIME,3,4)
- QUIT
- WLINE ;PRINT DESCRIPTION
- +1 NEW X
- SET DIWR=$SELECT(IOM>80:100,1:50)
- SET DIWF=""
- SET DIWL=0
- SET X=GTXT(1)
- KILL ^UTILITY($JOB)
- DO ^DIWP
- +2 SET GMRI=0
- FOR
- SET GMRI=$ORDER(^UTILITY($JOB,"W",0,GMRI))
- if GMRI'>0
- QUIT
- if ($Y+10)>IOSL
- DO HEADER2^GMRYSE1
- if GMROUT
- QUIT
- WRITE !,?14,^UTILITY($JOB,"W",0,GMRI,0)
- +3 KILL ^UTILITY($JOB),GMRI
- QUIT