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

RART2.m

Go to the documentation of this file.
  1. RART2 ;HISC/GJC-Reporting Menu (Part 3) ;4/3/97 08:33
  1. ;;5.0;Radiology/Nuclear Medicine;**26,47**;Mar 16, 1998;Build 21
  1. 4 ;;Print Report By Patient
  1. K ^TMP($J,"RAEX")
  1. S RAF1="" ; allow the user to select a range of case #'s
  1. S DIC(0)="AEMQ" D ^RADPA
  1. I Y<0 D Q4 Q
  1. S RADFN=+Y,RAHEAD="**** Patient's Exams ****",RAREPORT=1
  1. D ^RAPTLU
  1. I X="^" D Q4 Q
  1. S RAGJC=0 F S RAGJC=$O(^TMP($J,"RAEX",RAGJC)) Q:RAGJC'>0 D
  1. . I '$D(RADUP(RAGJC)) K ^TMP($J,"RAEX",RAGJC) Q
  1. . D CHK(RAGJC) ; check all existing entries!
  1. . Q
  1. I '$D(^TMP($J,"RAEX")) D D Q4 Q ; quit if nothing to print
  1. . W !?4,"There are no reports left to print!",$C(7)
  1. . Q
  1. K %ZIS,IOP W ! S %ZIS="QM",%ZIS("A")="Select a device: "
  1. D ^%ZIS I POP D Q4 Q
  1. I $D(IO("Q")) D D Q4 Q
  1. . S ZTRTN="START^RART2",ZTSAVE("^TMP($J,""RAEX"",")=""
  1. . S ZTDESC="Rad/Nuc Med Print Selected Reports By Patient"
  1. . S:'$D(RADFT) ZTSAVE("RASTFL")="",RASTFL=""
  1. . S:$D(RAOPT) ZTSAVE("RAOPT")=""
  1. . D ^%ZTLOAD
  1. . I +$G(ZTSK("D"))>0 W !?5,"Request Queued, Task #: ",$G(ZTSK)
  1. . D HOME^%ZIS K IO("Q") ;restore home device parameters P26
  1. . Q
  1. START ; start printing the data
  1. U IO S RAGJC=0 ; RAOOUT is defined in RARTR if abnormal exit (eos)
  1. F S RAGJC=$O(^TMP($J,"RAEX",RAGJC)) Q:RAGJC'>0 D Q:$D(RAOOUT)
  1. . S RAXAM=$G(^TMP($J,"RAEX",RAGJC))
  1. . S RARPT=+$P(RAXAM,"^",10) D:RARPT PRT^RARTR
  1. . Q
  1. D CLOSE
  1. Q
  1. CLOSE ; Close the device
  1. W ! D ^%ZISC
  1. Q4 ; Kill & Quit
  1. S:$D(ZTQUEUED) ZTREQ="@"
  1. K %I,%W,%X,%XX,%Y,%YY,%ZHFN,%ZISZ,C,DFN,DIC,DIROUT,DIRUT,DIW,DIWF,DIWL
  1. K DIWR,DIWT,DLAYGO,DTOUT,DUOUT,ER,RACATP,RACN,RACNI,RADATE,RADFN,RADFT
  1. K RADOC,RADTE,RADTI,RADUP,RAF1,RAGJC,RAHEAD,RAI,RAMES,RANM,RANME,RANOW
  1. K RANUM,RAOATP,RAOOUT,RAPAR,RAPOP,RAPRC,RAPTLOC,RAREDT,RAREPORT,RARPT
  1. K RAS,RASEL,RASSN,RAST,RASTFL,RAXAM,X,X1,X2,XMAP0R,XMDISP1,XMGAPI1
  1. ;K XMLOC,XMN,XMREC,XQXFLG,XMXUSER,Y,ZTDESC,ZTRTN,ZTSAVE,ZTSK
  1. K XMLOC,XMN,XMREC,XMXUSER,Y,ZTDESC,ZTRTN,ZTSAVE,ZTSK ;P47
  1. K ^TMP($J,"RAEX")
  1. K DIPGM,I,POP,RAIMGTYI,RAVERFDT,RAWHOVER,RAPRTSET,DISYS
  1. Q
  1. CHK(X) ; check if a valid report
  1. ; 'X' is the subscript on ^TMP($J,"RAEX")
  1. N RACASE,RAXAM,Y S RAXAM=$G(^TMP($J,"RAEX",X))
  1. S RACASE=$P(RAXAM,"^",8),Y=$P(RAXAM,"^",10)
  1. I '$L(Y)!('$D(^RARPT(+Y,0))) D Q
  1. . W !?3,*7,"No report filed for case number ",RACASE,"."
  1. . K ^TMP($J,"RAEX",X)
  1. . Q
  1. I $D(RADFT),$P(^RARPT(+Y,0),"^",5)'["D" D Q
  1. . W !?3,"Report for case number ",RACASE," is not in a 'draft' status."
  1. . W $C(7) K ^TMP($J,"RAEX",X)
  1. . Q
  1. I '$D(RADFT),$P(^RARPT(+Y,0),"^",5)["D" D Q
  1. . W !?3,"Report filed for case number ",RACASE," but not available"
  1. . W " for printing.",$C(7)
  1. . K ^TMP($J,"RAEX",X)
  1. . Q
  1. Q