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

GMVGGR1.m

Go to the documentation of this file.
  1. GMVGGR1 ;HOIFO/YH,FT-VITAL SIGNS RECORD SF 511 ;10/24/07
  1. ;;5.0;GEN. MED. REC. - VITALS;**3,23**;Oct 31, 2002;Build 25
  1. ;
  1. ; This routine uses the following IAs:
  1. ; #3214 - ^GMRYAPI calls (private)
  1. ; #4290 - ^PXRMINDX global (controlled)
  1. ; #10040 - FILE 44 references (supported)
  1. ; #10061 - ^VADPT calls (supported)
  1. ; #10096 - ^%ZOSF calls (supported)
  1. ;
  1. ; This routine supports the following IAs:
  1. ; #4654 - GMV V/M ALLDATA RPC is called at VMDATA (private)
  1. ;
  1. VMDATA(RESULT,GMVDATA) ;GMV V/M ALLDATA [RPC entry point]
  1. ;ENTRY POINT FROM GMRV SF511 GUI TO EXTRACT ALL DATA
  1. ; GMVDATA: piece 1 = DFN
  1. ; 2 = start date
  1. ; 3 = end date
  1. ; 4 = 0
  1. ; 5 = database screen
  1. ; 0 = return records from Vitals & FlowSheets (default)
  1. ; 1 = return records from Vitals only
  1. ; 2 = return records from FlowSheets only
  1. ;
  1. N DFN,GQT,X,Y
  1. N GCHA,GMVCLIO,GMVLOOP,GSEL,%,%H,%I,%T,GMVQNAME,GMVDB
  1. K ^TMP($J)
  1. S (GMROUT,GN,GQT)=0,DFN=+$P(GMVDATA,"^"),GMRSTRT=$P(GMVDATA,"^",2),GMRFIN=$P(GMVDATA,"^",3),GMR=+$P(GMVDATA,"^",4),GMVDB=+$P(GMVDATA,U,5)
  1. S GMVDB=$S(GMVDB=2:2,GMVDB=1:1,1:0)
  1. S GSEL=0,GMR=0
  1. S Y=GMRSTRT X ^DD("DD") S GSTRFIN=Y S Y=GMRFIN X ^DD("DD") S GSTRFIN=GSTRFIN_" - "_Y
  1. S GMRHT=0
  1. K ^TMP($J,"GMR"),^TMP($J,"GMRK"),^TMP($J,"GDT"),^TMP($J,"GMRVG"),^TMP($J,"GTNM")
  1. S GSTART1=GMRSTRT-.0001,GEND1=GMRFIN
  1. F GTYPE="B","H","P","R","T","W","PO2","CVP","CG","PN" D SETT
  1. S GRPT=5 D:GMR'=1 SETIO D ^GMVGGR2
  1. Q1 K GMR,GSOL,GIVDT,GMRHLOC,GMRVJ,GDATA,GDT,GEN,GEND1,GI,GJ,GK,GMRVX,GSTART1,GTNM,GTYP,GTYPE,GX,I D KVAR^VADPT K VA,VAROOT
  1. D QIO^GMVGR5
  1. K GRPT,GMROUT,GMRRMBD,GAGE,GCNT,GDOB,GCNTB,GCNTD,GCNTP,GCNTR,GCNTT,GCNTT1,GCNTI,GCNTO,GDT1,GCNTPD,GCNTTD,GCNTW,GPG,GPGS,GHT,GTYPE1,GCNTB3,GDTA,XDT,XIO,XX,^TMP($J,"GMRK"),^TMP($J,"GMR"),^TMP($J,"GDT"),^TMP($J,"GMRVG")
  1. K GLINE,GMRQUAL,^TMP($J,"GTNM"),G,GDA,GDIP,GDOP,GINF,GMIN,GMRFIN,GMRHT,GMRSITE,GMRSTRT,GMRVARY,GMRVHLOC,GMRWARD,GN,GNDATE,GNSHFT,GRNDIP,GRNDOP,GRNGIP,GSIP,GSOP,GSTAR,GSTRFIN,GSUB
  1. Q
  1. SETT ;SET GMRT
  1. S GTYP(1)=$S(GTYPE="B":"BLOOD PRESSURE",GTYPE="P":"PULSE",GTYPE="R":"RESPIRATION",GTYPE="T":"TEMPERATURE",GTYPE="H":"HEIGHT",GTYPE="W":"WEIGHT",GTYPE="CG":"CIRCUMFERENCE/GIRTH",GTYPE="PO2":"PULSE OXIMETRY",1:"")
  1. I GTYP(1)="" S GTYP(1)=$S(GTYPE="CVP":"CENTRAL VENOUS PRESSURE",GTYPE="PN":"PAIN",1:"")
  1. Q:GTYP(1)=""
  1. S GTYP=$O(^GMRD(120.51,"B",GTYP(1),"")),GX=GSTART1
  1. I GTYP>0 F S GX=$O(^PXRMINDX(120.5,"PI",DFN,GTYP,GX)) Q:GX'>0!(GX>GEND1) S GEN=0 F S GEN=$O(^PXRMINDX(120.5,"PI",DFN,GTYP,GX,GEN)) Q:$L(GEN)'>0 D
  1. .K GMVCLIO
  1. .I GEN=+GEN,GMVDB=2 Q ;want clio records only
  1. .I GEN'=+GEN,GMVDB=1 Q ;want vitals records only
  1. .I GEN=+GEN D
  1. ..D F1205^GMVUTL(.GMVCLIO,GEN)
  1. .I GEN'=+GEN D
  1. ..D CLIO^GMVUTL(.GMVCLIO,GEN)
  1. .S GMVCLIO(0)=$G(GMVCLIO(0)),GMVCLIO(5)=$G(GMVCLIO(5))
  1. .I GMVCLIO(0)=""!($P(GMVCLIO(0),U,8)="") Q
  1. .S GMVLOOP=0,GG=""
  1. .F GMVLOOP=1:1 Q:$P(GMVCLIO(5),U,GMVLOOP)="" D
  1. ..S GMVQNAME=$$FIELD^GMVGETQL($P(GMVCLIO(5),U,GMVLOOP),1,"E")
  1. ..I GMVQNAME=""!(GMVQNAME=-1) Q
  1. ..S GG=GG_$S(GG'="":";",1:"")_GMVQNAME
  1. .D BLDARR
  1. .Q
  1. Q
  1. BLDARR ;
  1. N GMVLOC,GMVUSER
  1. S GDATA=GMVCLIO(0)
  1. Q:GDATA=""
  1. S GMVLOC=+$P(GDATA,U,5) ;hospital location ien
  1. S GMVLOC=$P($G(^SC(GMVLOC,0)),U,1)
  1. S GMVUSER=+$P(GDATA,U,6) ;user duz
  1. S GMVUSER=$$PERSON^GMVUTL1(GMVUSER)
  1. S GMRVX=GTYPE,GMRVX(0)=$P(GDATA,"^",8),GMRVX(1)=0 D:GMRVX(0)>0!(GMRVX(0)<0)!($E(GMRVX(0))="0") EN1^GMVSAS0
  1. S ^TMP($J,"GMRVG",GX,GTYPE,$P(GDATA,"^",8))=GG_"^"_$S($G(GMRVX(1))>0:1,1:"")_"^^"_$P(GDATA,"^",10)_U_GMVLOC_U_GMVUSER_U_$S(GEN=+GEN:"Vitals",1:"CLIO")
  1. S:$D(^TMP($J,"GMRVG",GX,"H",$P(GDATA,"^",8))) GHT=$P(GDATA,"^",8)
  1. ;I GTYPE="B",$P(GDATA,"^",8)'>0 S ^TMP($J,"GMRVG",9999999-GX,"B",$P(GDATA,"^",8))="^^"
  1. K GG
  1. Q
  1. SETIO ;
  1. S X="GMRYRP0" X ^%ZOSF("TEST") Q:'$T
  1. D IO^GMVGR5
  1. D SETIOAR
  1. Q
  1. SETIOAR F GTYPE1="XI"_($$INPUT^GMRYAPI()+4),"XO"_($$OUTPUT^GMRYAPI()+1) F GDT=0:0 S GDT=$O(^TMP($J,"GMR",GTYPE1,GDT)) Q:GDT'>0 F GDTA=0:0 S GDTA=$O(^TMP($J,"GMR",GTYPE1,GDT,GDTA)) Q:GDTA="" D SETIOAR1
  1. Q
  1. SETIOAR1 S:GTYPE1["XI" ^TMP($J,"GMRVG",GDT,"I",GDTA)="^" S:GTYPE1["XO" ^TMP($J,"GMRVG",GDT,"O",GDTA)="^"
  1. Q