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

RADLY.m

Go to the documentation of this file.
  1. RADLY ;HISC/GJC AISC/MJK,RMO-Rad Daily Log Report ;7/17/97 12:35
  1. ;;5.0;Radiology/Nuclear Medicine;**15,47**;Mar 16, 1998;Build 21
  1. ; setup raccess(duz,"LOC" raccess(duz,"DIV" raccess(duz,"IMG"
  1. I $O(RACCESS(DUZ,""))="" S RAPSTX="" D SETVARS^RAPSET1(0)
  1. ; Check access and
  1. ; setup raccess(duz,"DIV-IMG","chicago (ws),"general radiology"
  1. S RAXIT=$$SETUPDI^RAUTL7() G:RAXIT CLEAN
  1. ; Select Div
  1. ; setup ^tmp($j,"RA D-TYPE"
  1. D SELDIV^RAUTL7
  1. I '$D(^TMP($J,"RA D-TYPE"))!(RAQUIT) K RACCESS(DUZ,"DIV-IMG") S RAXIT=1 G CLEAN
  1. ; Set imaging types as allowed by division(s) picked
  1. N X,X1,RACHK1 S X=0
  1. ; setup ^tmp($j,"DIV-IMG"
  1. D SETUP^RAUTL7A
  1. ; setup ^tmp($j,"RA I-TYPE"
  1. F S X=$O(^TMP($J,"DIV-IMG",X)) Q:X'=+X I $D(RACCESS(DUZ,"IMG",X)) S ^TMP($J,"RA I-TYPE",$P($G(^RA(79.2,+X,0)),U),X)=""
  1. ; Select Img Loc
  1. ; setup ^tmp($j,"DIV-ITYP-ILOC" ^tmp($j,"RA LOC-TYPE"
  1. D SELLOC^RAUTL7
  1. I '$D(^TMP($J,"RA LOC-TYPE"))!(RAQUIT) K RACESS(DUZ,"DIV-IMG"),^TMP($J,"DIV-ITYP-ILOC") S RAXIT=1
  1. CLEAN K ^TMP($J,"DIV-IMG")
  1. ;
  1. I RAXIT K RAXIT K:$D(RAPSTX) RACCESS,RAPSTX,I,POP,RAQUIT Q
  1. ; loop thru raccess(duz,"DIV-IMG" to setup ^tmp($j,"RADLY",
  1. ; matching on ^tmp($j,"RA D-TYPE" and ^tmp($j,"RA I-TYPE"
  1. ; use new code in rtn radly1, instead of rtn radlq3
  1. D ZEROUT^RADLY1 K RACCESS(DUZ,"DIV-IMG") W !
  1. ASKLOG ; Ask log date
  1. W ! K %DT
  1. S %DT="PATEX",%DT("A")="Select Log Date: "
  1. S %DT("B")="T-1" D ^%DT K %DT
  1. I Y<0 D KILL^RADLY1 Q
  1. S RALDTI=Y\1 S RALDTX=$$FMTE^XLFDT(Y\1,1)
  1. S ZTDESC="Rad/Nuc Med Daily Log Rpt"
  1. S ZTRTN="START^RADLY",ZTSAVE("RALDT*")=""
  1. S ZTSAVE("^TMP($J,""RADLY"",")="",ZTSAVE("^TMP($J,""RA D-TYPE"",")=""
  1. S ZTSAVE("^TMP($J,""RA I-TYPE"",")=""
  1. S ZTSAVE("^TMP($J,""RA LOC-TYPE"",")=""
  1. D ZIS^RAUTL
  1. I RAPOP D KILL^RADLY1 Q
  1. START ; Start the process
  1. U IO D NOW^%DTC
  1. S:$D(ZTQUEUED) ZTREQ="@"
  1. S RATDY=$$FMTE^XLFDT(%\1,1),(RAPG,RAXIT)=0
  1. S $P(RALN,"-",(IOM+1))="",RAHEAD="Daily Log Report For: "_RALDTX
  1. S RATAB(1)=$S(IOM=132:8,1:5),RATAB(2)=$S(IOM=132:25,1:8)
  1. S RATAB(3)=$S(IOM=132:42,1:25),RATAB(4)=$S(IOM=132:52,1:32)
  1. S RATAB(5)=$S(IOM=132:72,1:38),RATAB(6)=$S(IOM=132:95,1:43)
  1. S RATAB(7)=$S(IOM=132:114,1:60),RATAB(8)=$S(IOM=132:122,1:62)
  1. S RATAB(9)=$S(IOM=132:102,1:62)
  1. ;
  1. F RADTE=RALDTI:0 S RADTE=$O(^RADPT("AR",RADTE)) Q:'RADTE D Q:RAXIT
  1. . Q:RADTE>(RALDTI+.9999)
  1. . F RADFN=0:0 S RADFN=$O(^RADPT("AR",RADTE,RADFN)) Q:'RADFN D Q:RAXIT
  1. .. S RADTI=9999999.9999-RADTE
  1. .. D:$D(^RADPT(RADFN,"DT",RADTI,0)) SORT^RADLY1
  1. .. Q
  1. . Q
  1. I RAXIT D CLOSE^RAUTL,KILL^RADLY1 Q
  1. ;
  1. ; eliminate "RADLY" nodes that are outside the user-selected img locs
  1. N A,B,C S A=""
  1. CLN1 S A=$O(^TMP($J,"RADLY",A)) G:A']"" PREP S B=""
  1. CLN2 S B=$O(^TMP($J,"RADLY",A,B)) G:B']"" CLN1 S C=""
  1. CLN3 S C=$O(^TMP($J,"RADLY",A,B,C)) G:C']"" CLN2
  1. K:$O(^TMP($J,"RA LOC-TYPE",C,0))="" ^TMP($J,"RADLY",A,B,C)
  1. K:$O(^TMP($J,"RA I-TYPE",B,0))="" ^TMP($J,"RADLY",A,B)
  1. K:$O(^TMP($J,"RADLY",A,""))="" ^TMP($J,"RADLY",A)
  1. G CLN3
  1. PREP G:'$D(^TMP($J,"RADLY")) OUT
  1. S X=+$O(^TMP($J,"RADLY","")),Y=$O(^TMP($J,"RADLY",X,""))
  1. S RADIV=$P($G(^DIC(4,X,0)),"^"),RAITYPE=Y
  1. S RAILOC=$O(^TMP($J,"RADLY",X,Y,""))
  1. ; save current values
  1. S RADIV0=RADIV,RAITYPE0=RAITYPE,RAILOC0=RAILOC
  1. D HD^RADLY1
  1. I RAXIT D CLOSE^RAUTL,KILL^RADLY1 Q
  1. I $D(^TMP($J,"RADLY")) D
  1. . D PRINT^RADLY1 ; Print out data
  1. . I 'RAXIT D
  1. .. S RADIVNM=$$DIVTOT^RACMP("RADLY") Q:'RADIVNM
  1. .. S (RADIV,RAFLG,RAITYPE)="",RAXIT=$$EOS^RAUTL5() D:'RAXIT HD^RADLY1
  1. .. D:'RAXIT SYNOP
  1. .. Q
  1. . Q
  1. OUT D CLOSE^RAUTL,KILL^RADLY1
  1. Q
  1. SET ; Set ^TMP global
  1. S RAEX(0)=$G(^RADPT(RADFN,"DT",RADTI,"P",RACNI,0))
  1. S RACN=$P(RAEX(0),"^"),RAPRC=+$P(RAEX(0),"^",2)
  1. S RAPRC=$G(^RAMIS(71,RAPRC,0)),RAST=+$P(RAEX(0),"^",3)
  1. S RAPRC=$E($S(RAPRC]"":$P(RAPRC,"^"),1:"Unknown"),1,19)
  1. S RAST=$G(^RA(72,RAST,0)),RA6=+$P(RAEX(0),"^",6)
  1. S RA8=+$P(RAEX(0),"^",8),RA9=+$P(RAEX(0),"^",9)
  1. S RAST=$E($S(RAST]"":$P(RAST,"^"),1:"Unknown"),1,20)
  1. S X=RADTE D TIME^RAUTL1 S RATME=X
  1. S:$D(^DIC(42,RA6,0)) RAWHE=$P(^DIC(42,RA6,0),"^")
  1. S:$D(^SC(RA8,0)) RAWHE=$P(^SC(RA8,0),"^")
  1. S:$D(^DIC(34,RA9,0)) RAWHE=$P(^DIC(34,RA9,0),"^")
  1. S:$D(^RADPT(RADFN,"DT",RADTI,"P",RACNI,"R")) RAWHE=$P(^("R"),"^")
  1. S RAWHE=$E($S($G(RAWHE)]"":RAWHE,1:"Unknown"),1,20)
  1. S RARPT=+$P(RAEX(0),"^",17)
  1. S RARPT=$S($O(^RARPT(RARPT,"R",0)):"Yes",1:"No")
  1. I $D(ZTQUEUED) D STOPCHK^RAUTL9 S:$G(ZTSTOP)=1 RAXIT=1 Q:RAXIT
  1. S ^TMP($J,"RADLY",RADIV)=+$G(^TMP($J,"RADLY",RADIV))+1
  1. S ^TMP($J,"RADLY",RADIV,RAITYPE)=+$G(^TMP($J,"RADLY",RADIV,RAITYPE))+1
  1. S ^TMP($J,"RADLY",RADIV,RAITYPE,RAILOC)=+$G(^TMP($J,"RADLY",RADIV,RAITYPE,RAILOC))+1
  1. S RADIVTY=+$G(RADIVTY)+1
  1. N RASSAN,RACNDSP S RASSAN=$$SSANVAL^RAHLRU1(RADFN,RADTI,RACNI)
  1. S RACNDSP=$S((RASSAN'=""):RASSAN,1:RACN)
  1. I $$USESSAN^RAHLRU1() S ^TMP($J,"RADLY",RADIV,RAITYPE,RAILOC,RANME,RADTE,RACNI)=RACNDSP_"^"_RAPRC_"^"_RAST_"^"_RATME_"^"_RAWHE_"^"_RARPT_"^"_RASSN
  1. I '$$USESSAN^RAHLRU1() S ^TMP($J,"RADLY",RADIV,RAITYPE,RAILOC,RANME,RADTE,RACNI)=RACN_"^"_RAPRC_"^"_RAST_"^"_RATME_"^"_RAWHE_"^"_RARPT_"^"_RASSN
  1. Q
  1. SYNOP ; Synopsis of data presented to the user.
  1. S A=""
  1. W !?RATAB(2),"Division",!?RATAB(2)+3,"Imaging Type",!?RATAB(2)+6,"Imaging Location(s)",!
  1. SYN1 S A=$O(^TMP($J,"RADLY",A)) Q:A']""
  1. I $Y>(IOSL-4) S RAXIT=$$EOS^RAUTL5() D:'RAXIT HD^RADLY1 Q:RAXIT
  1. W !!?RATAB(2),$P($G(^DIC(4,A,0)),"^") S B=""
  1. SYN2 S B=$O(^TMP($J,"RADLY",A,B)) G:B']"" SYN1
  1. I $Y>(IOSL-4) S RAXIT=$$EOS^RAUTL5() D:'RAXIT HD^RADLY1 Q:RAXIT
  1. W !?RATAB(2)+3,B,!?RATAB(2)+6 S C=""
  1. SYN3 S C=$O(^TMP($J,"RADLY",A,B,C)) G:C']"" SYN2
  1. I $Y>(IOSL-4) S RAXIT=$$EOS^RAUTL5() D:'RAXIT HD^RADLY1 Q:RAXIT
  1. W:$X>(IOM-30) !?RATAB(2)+6
  1. W C,?($X+3)
  1. G SYN3