[613] | 1 | GMVER0 ;HOIFO/FT-VITALS ENTERED IN ERROR FOR A PATIENT ;10/25/02 10:26
|
---|
| 2 | ;;5.0;GEN. MED. REC. - VITALS;;Oct 31, 2002
|
---|
| 3 | ;
|
---|
| 4 | ; This routine uses the following IAs:
|
---|
| 5 | ; #10061 - ^VADPT calls (supported)
|
---|
| 6 | ; #10103 - ^XLFDT calls (supported)
|
---|
| 7 | ; #10104 - ^XLFSTR calls (supported)
|
---|
| 8 | ;
|
---|
| 9 | EN1(RESULT,GMVDATA) ; GMV ENTERED IN ERROR-PATIENT [RPC entry point]
|
---|
| 10 | ; Queues a report to a printer
|
---|
| 11 | ; GMVDATA=DFN^START DT^END DT^TYPE OF GRAPH^DEVICE^DEVICE IEN(#3.5)^
|
---|
| 12 | ; DATE/TIME TO PRINT REPORT
|
---|
| 13 | ;
|
---|
| 14 | N DFN,GMVBEG,GMVEND,GMVDEV,GMVIEN,GMVPDT
|
---|
| 15 | S DFN=+$P(GMVDATA,"^",1),GMVBEG=$P(GMVDATA,"^",2),GMVEND=$P(GMVDATA,"^",3),GMVDEV=$P(GMVDATA,"^",5),GMVIEN=+$P(GMVDATA,"^",6),GMVPDT=$P(GMVDATA,"^",7)
|
---|
| 16 | S ZTIO=GMVDEV ;device
|
---|
| 17 | S ZTDTH=$S($G(GMVPDT)>0:GMVPDT,1:$$NOW^XLFDT()) ;date/time to print
|
---|
| 18 | S (ZTSAVE("DFN"),ZTSAVE("GMVBEG"),ZTSAVE("GMVEND"))=""
|
---|
| 19 | S ZTDESC="Entered in error vital/measurement report"
|
---|
| 20 | S ZTRTN="START^GMVER0"
|
---|
| 21 | D ^%ZTLOAD
|
---|
| 22 | S RESULT=$S($G(ZTSK)>0:"Report sent to device. Task #: "_ZTSK,1:"Unable to task the report.")
|
---|
| 23 | K ZTDESC,ZTDTH,ZTIO,ZTRTN,ZTSAVE,ZTSK
|
---|
| 24 | D ^%ZISC
|
---|
| 25 | Q
|
---|
| 26 | START ; Start the report output
|
---|
| 27 | U IO
|
---|
| 28 | S:$D(ZTQUEUED) ZTREQ="@"
|
---|
| 29 | S GMVPAGE=0
|
---|
| 30 | S GMVDASH=$$REPEAT^XLFSTR("-",80) ;line of dashes
|
---|
| 31 | S GMVNOW=$$NOW^XLFDT() ;current date/time
|
---|
| 32 | S GMVNOW=$$FMTE^XLFDT(GMVNOW)
|
---|
| 33 | S GMVRANGE=$$FMTE^XLFDT(GMVBEG)_"-"_$$FMTE^XLFDT(GMVEND) ;date range in
|
---|
| 34 | ; external format (for header)
|
---|
| 35 | D DEM^VADPT ;get patient demographic data
|
---|
| 36 | S GMVNAME=VADM(1) ;patient name
|
---|
| 37 | S GMVSSN=$P(VADM(2),"^",2) ;patient ssn
|
---|
| 38 | D EN1^GMVER1(.GMVARRAY,DFN,GMVBEG,GMVEND) ;get entered-in-error data
|
---|
| 39 | D HEADER
|
---|
| 40 | S GMVNONE=$G(^TMP($J,"ERRORS",0))
|
---|
| 41 | I $L(GMVNONE)>0 W !,GMVNONE D KILL Q
|
---|
| 42 | S GMVDATE=0
|
---|
| 43 | F S GMVDATE=$O(^TMP($J,"ERRORS",GMVDATE)) Q:'GMVDATE D
|
---|
| 44 | .S GMVITY=0
|
---|
| 45 | .F S GMVITY=$O(^TMP($J,"ERRORS",GMVDATE,GMVITY)) Q:'GMVITY D
|
---|
| 46 | ..S GMVDA=0
|
---|
| 47 | ..F S GMVDA=$O(^TMP($J,"ERRORS",GMVDATE,GMVITY,GMVDA)) Q:'GMVDA D
|
---|
| 48 | ...S GMVLOOP=0
|
---|
| 49 | ...F S GMVLOOP=$O(^TMP($J,"ERRORS",GMVDATE,GMVITY,GMVDA,GMVLOOP)) Q:'GMVLOOP D
|
---|
| 50 | ....S GMVNODE=^TMP($J,"ERRORS",GMVDATE,GMVITY,GMVDA,GMVLOOP)
|
---|
| 51 | ....I $Y+6>IOSL D HEADER
|
---|
| 52 | ....W !,GMVNODE
|
---|
| 53 | ....I GMVLOOP=4 W !
|
---|
| 54 | ....Q
|
---|
| 55 | ...Q
|
---|
| 56 | ..Q
|
---|
| 57 | .Q
|
---|
| 58 | KILL ; Kill variables
|
---|
| 59 | D KVAR^VADPT ;clean up VADPT variables
|
---|
| 60 | K ^TMP($J,"ERRORS")
|
---|
| 61 | K GMVDASH,GMVNAME,GMVNOW,GMVPAGE,GMVSSN,X,Y
|
---|
| 62 | D ^%ZISC
|
---|
| 63 | Q
|
---|
| 64 | HEADER ; Report header
|
---|
| 65 | W:$Y>0 @IOF
|
---|
| 66 | S GMVPAGE=GMVPAGE+1
|
---|
| 67 | W !,GMVNOW,?22,"ENTERED IN ERROR VITAL/MEASUREMENT REPORT",?70,"PAGE: ",GMVPAGE
|
---|
| 68 | W !?22,GMVRANGE
|
---|
| 69 | W !?22,"Patient: ",GMVNAME,?$X+5,GMVSSN
|
---|
| 70 | W !!,"Date Vit./Meas. taken",?58,"User who made error"
|
---|
| 71 | W !,GMVDASH,!
|
---|
| 72 | Q
|
---|