| 1 | RACMP ;HISC/GJC AISC/MJK-Complication Report (Part 1 of 3) ;4/16/96  09:47
 | 
|---|
| 2 |  ;;5.0;Radiology/Nuclear Medicine;;Mar 16, 1998
 | 
|---|
| 3 |  ; Select Imaging Type, if exists
 | 
|---|
| 4 |  I $O(RACCESS(DUZ,""))="" D SETVARS^RAPSET1(0) S RAPSTX=""
 | 
|---|
| 5 |  N RACMP S RACMP=+$O(^RA(78.1,"B","NO COMPLICATION",0))
 | 
|---|
| 6 |  I 'RACMP D  Q
 | 
|---|
| 7 |  . W !,"You need to define 'NO COMPLICATION' in your Complication "
 | 
|---|
| 8 |  . W "Types file",!,"in order to run this report!"
 | 
|---|
| 9 |  . Q
 | 
|---|
| 10 |  S X=$$DIVLOC^RAUTL7() I X D KILL Q
 | 
|---|
| 11 |  S A="" F  S A=$O(RACCESS(DUZ,"DIV-IMG",A)) Q:A']""  D
 | 
|---|
| 12 |  . Q:'$D(^TMP($J,"RA D-TYPE",A))  S B=0
 | 
|---|
| 13 |  . F  S B=+$O(^TMP($J,"RA D-TYPE",A,B)) Q:'B  D
 | 
|---|
| 14 |  .. S ^TMP($J,"RACMP",B)=0
 | 
|---|
| 15 |  .. S C="" F  S C=$O(RACCESS(DUZ,"DIV-IMG",A,C)) Q:C']""  D
 | 
|---|
| 16 |  ... Q:'$D(^TMP($J,"RA I-TYPE",C))  S ^TMP($J,"RACMP",B,C)=0
 | 
|---|
| 17 |  ... Q
 | 
|---|
| 18 |  .. Q
 | 
|---|
| 19 |  . Q
 | 
|---|
| 20 | ASKLOG ; Ask date range
 | 
|---|
| 21 |  K A,B,C,^TMP($J,"DIV-IMG") W !
 | 
|---|
| 22 |  D DATE^RAUTL I RAPOP D KILL Q
 | 
|---|
| 23 |  S RADTBEGI=BEGDATE,RADTENDI=ENDDATE
 | 
|---|
| 24 |  S RADTBEG=BEGDATE-.0001,RADTEND=ENDDATE+.9999
 | 
|---|
| 25 |  K BEGDATE,ENDDATE
 | 
|---|
| 26 |  S Y=RADTBEGI X ^DD("DD") S RADTBEGX=Y
 | 
|---|
| 27 |  S Y=RADTENDI X ^DD("DD") S RADTENDX=Y
 | 
|---|
| 28 |  S ZTDESC="Rad/Nuc Med Complications Report"
 | 
|---|
| 29 |  S ZTRTN="START^RACMP",ZTSAVE("RACMP")=""
 | 
|---|
| 30 |  S ZTSAVE("RADT*")="",ZTSAVE("^TMP($J,""RACMP"",")=""
 | 
|---|
| 31 |  S ZTSAVE("^TMP($J,""RA D-TYPE"",")=""
 | 
|---|
| 32 |  S ZTSAVE("^TMP($J,""RA I-TYPE"",")="" D ZIS^RAUTL
 | 
|---|
| 33 |  I RAPOP D KILL Q
 | 
|---|
| 34 | START ; Start processing data
 | 
|---|
| 35 |  U IO D NOW^%DTC S (RAPG,RAXIT)=0
 | 
|---|
| 36 |  S:$D(ZTQUEUED) ZTREQ="@"
 | 
|---|
| 37 |  S RATDY=$$FMTE^XLFDT(%\1,1),$P(RALN,"-",(IOM+1))=""
 | 
|---|
| 38 |  S RAERR="No Data Captured For This Time Frame."
 | 
|---|
| 39 |  S RAHDR(1)=">>> Complications Report <<<"
 | 
|---|
| 40 |  S RAHDR(2)="Period: "_RADTBEGX_" to "_RADTENDX_"."
 | 
|---|
| 41 |  S RATAB(1)=$S(IOM=132:15,1:9),RATAB(2)=$S(IOM=132:24,1:26)
 | 
|---|
| 42 |  S RATAB(3)=$S(IOM=132:40,1:34),RATAB(4)=$S(IOM=132:52,1:49)
 | 
|---|
| 43 |  S RATAB(5)=$S(IOM=132:90,1:52),RATAB(6)=$S(IOM=132:102,1:62)
 | 
|---|
| 44 |  F RADTE=RADTBEG:0 S RADTE=$O(^RADPT("AR",RADTE)) Q:'RADTE!(RADTE>RADTEND)  D  Q:RAXIT
 | 
|---|
| 45 |  . S RADFN=0 F  S RADFN=$O(^RADPT("AR",RADTE,RADFN)) Q:'RADFN  D  Q:RAXIT
 | 
|---|
| 46 |  .. S RADTI=9999999.9999-RADTE D SORT^RACMP2
 | 
|---|
| 47 |  .. Q
 | 
|---|
| 48 |  . Q
 | 
|---|
| 49 |  I RAXIT D CLOSE^RAUTL,KILL Q
 | 
|---|
| 50 |  S X=$O(^TMP($J,"RACMP",""))
 | 
|---|
| 51 |  I X="" S Y=X
 | 
|---|
| 52 |  E  S Y=$O(^TMP($J,"RACMP",X,""))
 | 
|---|
| 53 |  S RADIV=X,RAITYPE=Y D HEADER^RACMP2
 | 
|---|
| 54 |  I $D(^TMP($J,"RACMP")) D
 | 
|---|
| 55 |  . D PRINT^RACMP1
 | 
|---|
| 56 |  . I 'RAXIT D
 | 
|---|
| 57 |  .. S RADIVNM=$$DIVTOT("RACMP") Q:'RADIVNM
 | 
|---|
| 58 |  .. S (RADIV,RAFLG,RAITYPE)="",RAXIT=$$EOS^RAUTL5()
 | 
|---|
| 59 |  .. I 'RAXIT D HEADER^RACMP2,SYNOP^RACMP2
 | 
|---|
| 60 |  .. Q
 | 
|---|
| 61 |  . Q
 | 
|---|
| 62 |  D CLOSE^RAUTL,KILL
 | 
|---|
| 63 |  Q
 | 
|---|
| 64 | KILL ; Kill and quit
 | 
|---|
| 65 |  K %,%I,RA0,RA1,RA10,RA2,RA3,RA4,RA5,RA7,RACCESS(DUZ,"DIV-IMG"),RACMPTX
 | 
|---|
| 66 |  K RACNI,RACOMP,RADFN,RADIV,RADIVNM,RADTBEG,RADTBEGI,RADTBEGX,RADTE
 | 
|---|
| 67 |  K RADTEND,RADTENDI,RADTENDX,RADTI,RAERR,RAEX,RAFLG,RAHDR,RAITYPE,RALN
 | 
|---|
| 68 |  K RANME,RAPG,RAPHY,RAPOP,RAPRC,RARE,RARES,RASSN,RASTF,RATAB,RATDY,RATME
 | 
|---|
| 69 |  K RAQUIT,RAXIT,X,Y,ZTDESC,ZTRTN,ZTSAVE
 | 
|---|
| 70 |  K ^TMP($J,"RA D-TYPE"),^TMP($J,"RA I-TYPE"),^TMP($J,"RACMP")
 | 
|---|
| 71 |  K ^TMP($J,"RACMRE"),^TMP($J,"RACNTU"),^TMP($J,"RACOMP")
 | 
|---|
| 72 |  K ^TMP($J,"RAEXAM")
 | 
|---|
| 73 |  K:$D(RAPSTX) RACCESS,RAPSTX
 | 
|---|
| 74 |  K %DT,BEGDATE,I,POP,RAMES
 | 
|---|
| 75 |  Q
 | 
|---|
| 76 | SET ; Set data global
 | 
|---|
| 77 |  S X=RADTE D TIME^RAUTL1 S RATME=X
 | 
|---|
| 78 |  S RAPRC=+$P(RAEX(0),"^",2),RAPRC=$G(^RAMIS(71,RAPRC,0))
 | 
|---|
| 79 |  S RAPRC=$S($P(RAPRC,"^")]"":$E($P(RAPRC,"^"),1,20),1:"Unknown")
 | 
|---|
| 80 |  S RARES=+$P(RAEX(0),"^",12),RARES=$G(^VA(200,RARES,0))
 | 
|---|
| 81 |  S RARES=$S($P(RARES,"^")]"":$E($P(RARES,"^"),1,20),1:"Unknown")
 | 
|---|
| 82 |  S RAPHY=+$P(RAEX(0),"^",14),RAPHY=$G(^VA(200,RAPHY,0))
 | 
|---|
| 83 |  S RAPHY=$S($P(RAPHY,"^")]"":$E($P(RAPHY,"^"),1,20),1:"Unknown")
 | 
|---|
| 84 |  S RASTF=+$P(RAEX(0),"^",15),RASTF=$G(^VA(200,RASTF,0))
 | 
|---|
| 85 |  S RASTF=$S($P(RASTF,"^")]"":$E($P(RASTF,"^"),1,20),1:"Unknown")
 | 
|---|
| 86 |  S RACMPTX=$G(^RADPT(RADFN,"DT",RADTI,"P",RACNI,"COMP"))
 | 
|---|
| 87 |  S RACMPTX=$S(RACMPTX]"":RACMPTX,1:"None")
 | 
|---|
| 88 |  S ^TMP($J,"RACMP",RADIV,RAITYPE,RANME,RADTE,RACNI)=RAPRC_"^"_RATME_"^"_RAPHY_"^"_RARES_"^"_RASTF_"^"_RACMPTX_"^"_$P(RACOMP,"^")_"^"_RASSN_"^"_RADFN
 | 
|---|
| 89 |  Q
 | 
|---|
| 90 | DIVTOT(Z) ; Check if more than one division is included in the report.
 | 
|---|
| 91 |  ; Pass back '0' if just one division, '1' if more than one division.
 | 
|---|
| 92 |  N X,Y1,Y2 S X=0
 | 
|---|
| 93 |  S Y1=+$O(^TMP($J,Z,X)) Q:'Y1 0
 | 
|---|
| 94 |  S Y2=+$O(^TMP($J,Z,Y1)) Q:Y2 1
 | 
|---|
| 95 |  Q 0
 | 
|---|