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

RAUTL21.m

Go to the documentation of this file.
RAUTL21 ;HOIFO/SWM,CRT;list & delete unneeded ^RARPT("ASTF" & "ARES" ;2/12/99  16:01
 ;;5.0;Radiology/Nuclear Medicine;**26,45**;Mar 16, 1998
 ;
EN1 N RA1,RA2,RACNT,RAKILREF,RALL,RATOT
 S U="^"
 S $P(RADL,"=",32)=""
 S $P(RASL,"-",26)=""
 S RATOT=0 ; total # of superfluous x-refs
 S RAKILREF=0 ; flag to control kill of x-refs and display
 ;
 D EN^DDIOL("RAD/NUC MED UTILITY TO LIST/DELETE LEFT-OVER REPORT X-REFS",,"!?3")
 D EN^DDIOL(" ",,"!!")
 ;
 S DIR(0)="Y"
 S DIR("B")="YES"
 S DIR("A")="  Do you want to print a list of left-over x-refs?"
 D ^DIR K DIR
 I $D(DTOUT)!$D(DUOUT) Q
 I Y=1 D
 .N %ZIS
 .S %ZIS("A")="Select Device: "
 .D ^%ZIS I POP K STOUT,DUOUT,POP Q
 .U IO
 .F RAXREF="ARES","ASTF" D L1
 .S:RATOT=0 RATOT=-1
 .D ^%ZISC,HOME^%ZIS
 ;
 Q:RATOT<0
 D EN^DDIOL(" ",,"!!")
 S DIR(0)="Y"
 S DIR("A")="  Do you want to clean up the"_$S(RATOT:"se "_RATOT,1:"")_" left-over x-refs?"
 S DIR("B")="NO"
 D ^DIR K DIR
 I $D(DTOUT)!$D(DUOUT) Q
 I Y=1 D
 .S RAKILREF=1
 .F RAXREF="ARES","ASTF" D L1
 Q
 ;
L1 ; Loop through left-over x-refs
 ;
 N WAIT
 ;
 I 'RAKILREF D HEAD
 ;
 S WAIT=""
 S RA1=0 F  S RA1=$O(^RARPT(RAXREF,RA1)) Q:'RA1  D  Q:WAIT="^"
 . S RACNT=0
 . S RA2=0 F  S RA2=$O(^RARPT(RAXREF,RA1,RA2)) Q:'RA2  D  Q:WAIT="^"
 .. I $D(^RARPT(RA2,0)),$P(^RARPT(RA2,0),U,5)'="V" Q
 .. S RACNT=RACNT+1 ; Total for this physician
 .. S RATOT=RATOT+1
 .. I 'RAKILREF D  Q:WAIT="^"
 ... I $Y>(IOSL-3) D WAIT Q:WAIT="^"  S WAIT="" W @IOF D HEAD S RACNT=1
 ... D EN^DDIOL($S(RACNT=1:$E($P($G(^VA(200,RA1,0)),U),1,30),1:"  "),,"!?3")
 ... D EN^DDIOL($S($D(^RARPT(RA2,0)):$P(^(0),U),1:"Unknown report #"_RA2),,"?40")
 .. I RAKILREF D
 ... D EN^DDIOL("^RARPT("""_RAXREF_""","_RA1_","_RA2_") deleted","","!?3")
 ... K ^RARPT(RAXREF,RA1,RA2)
 Q:WAIT="^"
 I RATOT=0 D EN^DDIOL("< There are no left-over """_RAXREF_""" x-refs found. >","","!?10")
 Q
 ;
 D EN^DDIOL("LEFT-OVER ^RARPT("""_RAXREF_""") X-REFS",,"!!?20")
 D EN^DDIOL(RADL,,"!?20")
 D EN^DDIOL($S(RAXREF="ARES":"RESIDENT",1:"STAFF")_" PHYSICIAN",,"!!?3")
 D EN^DDIOL("CASE # OF LEFT-OVER X-REF",,"?40")
 D EN^DDIOL($S(RAXREF="ARES":$E(RASL,1,18),1:$E(RASL,1,15)),,"!?3")
 D EN^DDIOL(RASL,,"?40")
 D EN^DDIOL(" ",,"!")
 Q
 ;
WAIT ;
 I $E(IOST,1,2)'="C-" S WAIT="" Q  ;Don't prompt if report not to screen
 ;
 N DIR
 S DIR(0)="E"
 S (DIR("?"),DIR("??"))=""
 D ^DIR K DIR
 I Y=""!(Y=0) S WAIT="^"
 Q
 ;
CHGPRC(RAOPRC,RANPRC,DA) ;If a procedure is changed during
 ;exam edits, ensure that CM associations of the "changed to"
 ;procedure are associated with the exam. If the "changed to"
 ;procedure does not have CM associations, make sure the exam
 ;does not have CM associations from the "changed from" procedure.
 ;
 ;called from the RA STATUS CHANGE & RA EXAM EDIT input templates
 ;Input: RAOPRC=the IEN of the "changed from" procedure
 ;       RANPRC=the IEN of the "changed to" procedure
 ;        DA(2)=the IEN of the patient in the PATIENT (#2) file (RADFN)
 ;        DA(1)=the inverse date/time of the exam (RADTI)
 ;           DA=the IEN of case (RACNI)
 ;
 I +$O(^RADPT(RADFN,"DT",RADTI,"P",RACNI,"CM",0)) D
 .W !!?3,"Deleting the contrast media with this exam for procedure:",!?3,"'"_$P($G(^RAMIS(71,RAOPRC,0)),U)_"'."
 .K ^RADPT(DA(2),"DT",DA(1),"P",DA,"CM") ;kills both data and 'B' xref
 .D UPXCM^RAMAINU(.DA,"N") ;set CONTRAST MEDIA USED field to 'no'
 .Q
 I +$O(^RAMIS(71,RANPRC,"CM",0)) D
 .W !!?3,"Adding the contrast media to this exam for procedure:",!?3,"'"_$P($G(^RAMIS(71,RANPRC,0)),U)_"'."
 .D STUFCM70^RAMAINU(.DA,RANPRC)
 .D UPXCM^RAMAINU(.DA,"Y") ;set CONTRAST MEDIA USED field to 'yes'
 .Q
 Q