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

MAGGTCPR.m

Go to the documentation of this file.
MAGGTCPR ;WOIFO/GEK - RPC Calls for Patient DHCP Reports ; [ 06/20/2001 08:56 ]
 ;;3.0;IMAGING;;Mar 01, 2002
 ;; +---------------------------------------------------------------+
 ;; | Property of the US Government.                                |
 ;; | No permission to copy or redistribute this software is given. |
 ;; | Use of unreleased versions of this software requires the user |
 ;; | to execute a written test agreement with the VistA Imaging    |
 ;; | Development Office of the Department of Veterans Affairs,     |
 ;; | telephone (301) 734-0100.                                     |
 ;; |                                                               |
 ;; | The Food and Drug Administration classifies this software as  |
 ;; | a medical device.  As such, it may not be changed in any way. |
 ;; | Modifications to this software may result in an adulterated   |
 ;; | medical device under 21CFR820, the use of which is considered |
 ;; | to be a violation of US Federal Statutes.                     |
 ;; +---------------------------------------------------------------+
 ;;
 Q
DGRPD(MAGRPTY,DFN) ;RPC Call to  Generate Patient Profile
 ;
 ; -- MAGRPTY  -- is the name of the global holding the report.
 ; -- @MAGRPTY@(0)-- if = 0 then error occurred
 ; -- DFN := Patient File IEN
 ;  the variable MAGRPTY is referenced by CLOSE^MAGGTU5 to load 
 ;  the report from the VMS file WS.DAT into the referenced global;
 ;
 S MAGRPTY=$NA(^TMP($J,"WSDAT"))
 K @MAGRPTY
 S @MAGRPTY@(0)="0^-Cannot Open Workstation Redirection Device"
 S IOP="IMAGING WORKSTATION",%ZIS=0 D ^%ZIS Q:POP  ;Redirect Output Here
 U IO
 D EN^DGRPD
 D:IO'=IO(0) ^%ZISC
 S @MAGRPTY@(0)="1^OK"
 Q
HSUM(MAGRPTY,MAGGZ) ;RPC Call to Get Health Summary for Patient
 ; MAGGZ    ->   DFN  ^  HS Type (IEN)
 ;
 N Y,X,GMTSTYP,GMTSTITL
 IF $$NEWERR^%ZTER N $ETRAP,$ESTACK S $ETRAP="D ERRA^MAGGTCPR"
 E  S X="ERRA^MAGGTCPR",@^%ZOSF("TRAP")
 S MAGRPTY=$NA(^TMP($J,"WSDAT"))
 K @MAGRPTY
 S @MAGRPTY@(0)="0^Health Summary Report NOT successful"
 S IOP="IMAGING WORKSTATION",%ZIS=0 D ^%ZIS Q:POP
 S GMTSTYP=$P(MAGGZ,U,2),DFN=$P(MAGGZ,U)
 S GMTSTITL=$$GET1^DIQ(142,GMTSTYP,".02","I")
 U IO
 D SELTYP1^GMTS,EN^GMTS1
 D END^GMTS K GMTSEG,GMTSEGI,GMTSEGC ; MOD GEK 5\13\96
 D:IO'=IO(0) ^%ZISC
 S @MAGRPTY@(0)="1^OK"
 Q
HSLIST(MAGRY,ZY) ;RPC Call To do a lookup using LIST^DIC to return
 ;  the List of Health Summary Types for a user to select from.
 ; MAGRY is the Array to return.
 ; ZY is NOT USED
 ; Kernel uses Y, we have to New it because calls to DIC etc
 ;            also use it and change it, and kill it.
 N Y,XI,Z,FI,MAGIEN,INFO
 N FILE,IENS,FLDS,FLAGS,VAL,NUM,FROM,PART,INDEX,SCR,IDENT,TROOT
 S (FILE,IENS,FLDS,FLAGS,VAL,NUM,FROM,PART,INDEX,SCR,IDENT,TROOT)=""
 ;
 ;  Format
 ;LIST^DIC(FILE,IENS,FIELDS,FLAGS,NUMBER,
 ;  [.]FROM,[.]PART,INDEX,[.]SCREEN,IDENTIFIER,TARGET_ROOT,MSG_ROOT)
 ;
 K ^TMP("DILIST",$J) ; is this necessary ?
 K ^TMP("DIERR",$J) ; This is.
 S FILE=142,NUM=9000,FROM="",PART="",FLDS="@;.01",INDEX="B"
 D LIST^DIC(FILE,IENS,FLDS,FLAGS,NUM,FROM,PART,INDEX,SCR,IDENT,TROOT)
 ;
 I '$D(^TMP("DILIST",$J,2)) D  Q
 . S MAGRY(XI)="0^NO Health Summary Types Found in VistA"
 S INFO=^TMP("DILIST",$J,0)
 S XI="" F  S XI=$O(^TMP("DILIST",$J,2,XI)) Q:XI=""  S MAGIEN=^(XI) D
 . S Z=".01",X=^TMP("DILIST",$J,"ID",XI,Z)
 . F  S Z=$O(^TMP("DILIST",$J,"ID",XI,Z)) Q:Z=""  S X=X_"   "_^(Z)
 . S MAGRY(XI)=X_"^"_MAGIEN
 ;
 S MAGRY(0)=$P(INFO,"^")_U_"Found "_$P(INFO,"^")_" entr"_$S((+INFO=1):"y",1:"ies")
 I $P(INFO,"^",3)>0 S MAGRY(0)=MAGRY(0)_" there are more"
 Q
DISSUM(MAGRPTY,DFN) ; Discharge summary
 S MAGRPTY=$NA(^TMP($J,"WSDAT"))
 S @MAGRPTY@(0)="0^NOT YET IMPLEMENTED"
 Q
ERRA S @MAGRPTY@(0)="0^"_$$EC^%ZOSV
 D @^%ZOSF("ERRTN")
 Q