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

MAGVAG03.m

Go to the documentation of this file.
  1. MAGVAG03 ;WOIFO/NST - Write Location calls ; 20 Aug 2015 4:23 PM
  1. ;;3.0;IMAGING;**118,142,162**;Mar 19, 2002;Build 22;Aug 25, 2015
  1. ;; Per VHA Directive 2004-038, this routine should not be modified.
  1. ;; +---------------------------------------------------------------+
  1. ;; | Property of the US Government. |
  1. ;; | No permission to copy or redistribute this software is given. |
  1. ;; | Use of unreleased versions of this software requires the user |
  1. ;; | to execute a written test agreement with the VistA Imaging |
  1. ;; | Development Office of the Department of Veterans Affairs, |
  1. ;; | telephone (301) 734-0100. |
  1. ;; | The Food and Drug Administration classifies this software as |
  1. ;; | a medical device. As such, it may not be changed in any way. |
  1. ;; | Modifications to this software may result in an adulterated |
  1. ;; | medical device under 21CFR820, the use of which is considered |
  1. ;; | to be a violation of US Federal Statutes. |
  1. ;; +---------------------------------------------------------------+
  1. ;;
  1. Q
  1. ;***** Returns Current Write Location by Station number or Institution IEN
  1. ;
  1. ; RPC: MAGVA GET CWL
  1. ;
  1. ; Input Parameters
  1. ; ================
  1. ;
  1. ; MAGPARAM("STATION NUMBER") = STATION NUMBER field (#4,99) in INSTITUTION file (#4)
  1. ; or
  1. ; MAGPARAM("INSTITUTION IEN") = IEN in INSTITUTION file (#4)
  1. ;
  1. ; Return Values
  1. ; =============
  1. ;
  1. ; if error found during execution
  1. ; MAGRY(0) = Failure status ^ Error message
  1. ; if success
  1. ; MAGRY(0) = Success status ^^1
  1. ; MAGRY(1) = NETWORK LOCATION IEN ^ PHYSICAL REFERENCE ^ USER NAME ^ PASSWORD ^ PLACE
  1. ; MAGRY(2) = IEN in NETWORK LOCATION file (#2005.2) ^ PHYSICAL REFERENCE (WRITE LOCATION) (#2005.2,1)
  1. ; ^ USER NAME (#2005.2,15) ^ PASSWORD (#2005.2,16) ^ IEN in IMAGING SITE PARAMETERS file (#2006.1)
  1. ;
  1. GETCWL(MAGRY,MAGPARAM) ; RPC [MAGVA GET CWL]
  1. N PLACE ; IEN in INSTITUTION FILE (#4)
  1. N MAGREF,IENS,FILE,OUT,ERR
  1. N RESDEL
  1. N MAGPLC
  1. K MAGRY
  1. S RESDEL=$$RESDEL^MAGVAF02() ; Result delimiter
  1. S PLACE=0
  1. I $G(MAGPARAM("INSTITUTION IEN"))'="" D Q:'PLACE ; Error - MAGRY(0) is already set
  1. . S PLACE=MAGPARAM("INSTITUTION IEN") ; P142 DAC
  1. . I 'PLACE D
  1. . . N MSG
  1. . . S MSG="Invalid INSTITUTION IEN"
  1. . . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_MSG
  1. . . Q
  1. . Q
  1. I ((PLACE)&($$STA^XUAF4(PLACE)=""))!(PLACE'=+PLACE) S MAGPARAM("STATION NUMBER")=$G(MAGPARAM("INSTITUTION IEN")) ; P142 DAC
  1. I $G(MAGPARAM("STATION NUMBER"))'="" D Q:'PLACE ; Error - MAGRY(0) is already set
  1. . S PLACE=$$IEN^XUAF4(MAGPARAM("STATION NUMBER")) ; IA # 2171 find the Institution IEN
  1. . I 'PLACE D
  1. . . N MSG
  1. . . S MSG="Invalid STATION NUMBER: "_MAGPARAM("STATION NUMBER")
  1. . . I $G(MAGPARAM("INSTITUTION IEN"))'="" S MSG="Invalid INSTITUTION IEN: "_MAGPARAM("INSTITUTION IEN") ; P142 DAC
  1. . . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_MSG
  1. . . Q
  1. . Q
  1. I 'PLACE D Q ; Error - MAGRY(0) is already set
  1. . N MSG
  1. . S MSG="STATION NUMBER or INSTITUTION IEN is required"
  1. . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_MSG
  1. . Q
  1. ;
  1. S MAGPLC=$$PLACE^MAGBAPI(PLACE) ; Get IEN of a record in IMAGING SITE PARAMETERS file (#2006.1)
  1. S MAGREF=$$GET1^DIQ(2006.1,MAGPLC,.03,"I") ; IMAGE NETWORK WRITE LOCATION
  1. I 'MAGREF D Q
  1. . N MSG
  1. . S MSG="Need WRITE LOCATION in IMAGING SITE PARAMETERS file (#2006.1). Call IRM."
  1. . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_MSG
  1. . Q
  1. ;
  1. I '$$GET1^DIQ(2005.2,MAGREF,5,"I") D Q ; Operational status
  1. . N MSG
  1. . S MSG="The Server that you are writing to is off-line. Call IRM"
  1. . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_MSG
  1. . Q
  1. ;
  1. S IENS=MAGREF_","
  1. S FILE=2005.2
  1. D GETS^DIQ(FILE,IENS,"1;15;16","I","OUT","ERR")
  1. I $D(ERR("DIERR")) D Q
  1. . D MSG^DIALOG("A",.MAGRESA,245,5,"ERR")
  1. . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_"Error getting values: "_MAGRESA(1) Q ; Error getting the values
  1. . Q
  1. ;
  1. S MAGRY(0)=$$OK^MAGVAF02()_RESDEL_RESDEL_1
  1. S MAGRY(1)="NETWORK LOCATION IEN"_RESDEL_"PHYSICAL REFERENCE"
  1. S MAGRY(1)=MAGRY(1)_RESDEL_"USER NAME"_RESDEL_"PASSWORD"_RESDEL_"PLACE"
  1. S MAGRY(2)=MAGREF_RESDEL_OUT(FILE,IENS,1,"I")
  1. S MAGRY(2)=MAGRY(2)_RESDEL_OUT(FILE,IENS,15,"I")_RESDEL_OUT(FILE,IENS,16,"I")_RESDEL_MAGPLC
  1. Q
  1. ;
  1. ;***** Returns Jukebox Write Location by Station number or Institution IEN
  1. ;
  1. ; RPC: MAGVA GET JUKEBOX WL
  1. ;
  1. ; Input Parameters
  1. ; ================
  1. ;
  1. ; MAGPARAM("STATION NUMBER") = STATION NUMBER field (#4,99) in INSTITUTION file (#4)
  1. ; or
  1. ; MAGPARAM("INSTITUTION IEN") = IEN in INSTITUTION file (#4)
  1. ;
  1. ; Return Values
  1. ; =============
  1. ;
  1. ; if error found during execution
  1. ; MAGRY(0) = Failure status ^ Error message
  1. ; if success
  1. ; MAGRY(0) = Success status ^^1
  1. ; MAGRY(1) = NETWORK LOCATION IEN ^ PHYSICAL REFERENCE ^ USER NAME ^ PASSWORD ^ PLACE
  1. ; MAGRY(2) = IEN in NETWORK LOCATION file (#2005.2) ^ PHYSICAL REFERENCE (WRITE LOCATION) (#2005.2,1)
  1. ; ^ USER NAME (#2005.2,15) ^ PASSWORD (#2005.2,16) ^ IEN in IMAGING SITE PARAMETERS file (#2006.1)
  1. ;
  1. GETJBXWL(MAGRY,MAGPARAM) ; RPC [MAGVA GET JUKEBOX WL]
  1. N PLACE ; IEN in INSTITUTION FILE (#4)
  1. N MAGREF,IENS,FILE,OUT,ERR
  1. N RESDEL
  1. N MAGPLC
  1. K MAGRY
  1. S RESDEL=$$RESDEL^MAGVAF02() ; Result delimiter
  1. S PLACE=0
  1. I $G(MAGPARAM("INSTITUTION IEN"))'="" D Q:'PLACE ; Error - MAGRY(0) is already set
  1. . S PLACE=+MAGPARAM("INSTITUTION IEN")
  1. . I 'PLACE D
  1. . . N MSG
  1. . . S MSG="Invalid INSTITUTION IEN"
  1. . . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_MSG
  1. . . Q
  1. . Q
  1. I $G(MAGPARAM("STATION NUMBER"))'="" D Q:'PLACE ; Error - MAGRY(0) is already set
  1. . S PLACE=$$IEN^XUAF4(MAGPARAM("STATION NUMBER")) ; IA # 2171 find the Institution IEN
  1. . I 'PLACE D
  1. . . N MSG
  1. . . S MSG="Invalid STATION NUMBER: "_MAGPARAM("STATION NUMBER")
  1. . . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_MSG
  1. . . Q
  1. . Q
  1. I 'PLACE D Q ; Error - MAGRY(0) is already set
  1. . N MSG
  1. . S MSG="STATION NUMBER or INSTITUTION IEN is required"
  1. . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_MSG
  1. . Q
  1. ;
  1. S MAGPLC=$$PLACE^MAGBAPI(PLACE) ; Get IEN in IMAGING SITE PARAMETERS file (#2006.1)
  1. S MAGREF=$$GET1^DIQ(2006.1,MAGPLC,2.01,"I") ; JUKEBOX WRITE LOCATION
  1. I 'MAGREF D Q
  1. . N MSG
  1. . S MSG="Need WRITE LOCATION in IMAGING SITE PARAMETERS file (#2006.1). Call IRM."
  1. . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_MSG
  1. . Q
  1. ;
  1. I '$$GET1^DIQ(2005.2,MAGREF,5,"I") D Q ; Operational status
  1. . N MSG
  1. . S MSG="The Server that you are writing to is off-line. Call IRM"
  1. . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_MSG
  1. . Q
  1. ;
  1. S IENS=MAGREF_","
  1. S FILE=2005.2
  1. D GETS^DIQ(FILE,IENS,"1;15;16","I","OUT","ERR") I $D(ERR("DIERR")) D Q
  1. . D MSG^DIALOG("A",.MAGRESA,245,5,"ERR")
  1. . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_"Error getting values: "_MAGRESA(1) Q ; Error getting the values
  1. . Q
  1. ;
  1. S MAGRY(0)=$$OK^MAGVAF02()_RESDEL_RESDEL_1
  1. S MAGRY(1)="NETWORK LOCATION IEN"_RESDEL_"PHYSICAL REFERENCE"
  1. S MAGRY(1)=MAGRY(1)_RESDEL_"USER NAME"_RESDEL_"PASSWORD"_RESDEL_"PLACE"
  1. S MAGRY(2)=MAGREF_RESDEL_OUT(FILE,IENS,1,"I")
  1. S MAGRY(2)=MAGRY(2)_RESDEL_OUT(FILE,IENS,15,"I")_RESDEL_OUT(FILE,IENS,16,"I")_RESDEL_MAGPLC
  1. Q
  1. ;
  1. ;***** Returns PHYSICAL REFERENCE (WRITE LOCATION)
  1. ; USER NAME, PASSWORD, OPERATIONAL STATUS and PLACE
  1. ; by IEN in NETWORK LOCATION file (#2005.2)
  1. ;
  1. ; RPC: MAGVA GET NET LOC DETAILS
  1. ;
  1. ; Input Parameters
  1. ; ================
  1. ;
  1. ; NLOCIEN = IEN in NETWORK LOCATION file (#2005.2)
  1. ;
  1. ; Return Values
  1. ; =============
  1. ;
  1. ; if error found during execution
  1. ; MAGRY(0) = Failure status ^ Error message
  1. ; if success
  1. ; MAGRY(0) = Success status ^^1
  1. ; MAGRY(1) = PHYSICAL REFERENCE ^ USER NAME ^ PASSWORD ^ OPERATIONAL STATUS ^ PLACE
  1. ; MAGRY(2) = PHYSICAL REFERENCE (WRITE LOCATION) (#2005.2,1)
  1. ; ^ USER NAME (#2005.2,15) ^ PASSWORD (#2005.2,16)
  1. ; ^ OPERATIONAL STATUS (#2005.2,5) ^ PLACE (#2005.2,.04)
  1. ;
  1. GETNLOCD(MAGRY,NLOCIEN) ; RPC [MAGVA GET NET LOC DETAILS]
  1. N RESDEL
  1. N IENS,FILE,OUT,ERR,MAGRESA
  1. K MAGRY
  1. S RESDEL=$$RESDEL^MAGVAF02() ; Result delimiter
  1. I 'NLOCIEN D Q
  1. . N MSG
  1. . S MSG="NETWORK LOCATION IEN is required."
  1. . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_MSG
  1. . Q
  1. ;
  1. S IENS=NLOCIEN_","
  1. S FILE=2005.2
  1. D GETS^DIQ(FILE,IENS,"1;15;16;5;.04","I","OUT","ERR")
  1. I $D(ERR("DIERR")) D Q
  1. . D MSG^DIALOG("A",.MAGRESA,245,5,"ERR")
  1. . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_"Error getting values: "_MAGRESA(1) Q ; Error getting the values
  1. . Q
  1. ;
  1. S MAGRY(0)=$$OK^MAGVAF02()_RESDEL_RESDEL_1
  1. S MAGRY(1)="PHYSICAL REFERENCE"_RESDEL_"USER NAME"_RESDEL_"PASSWORD"_RESDEL_"OPERATIONAL STATUS"_RESDEL_"PLACE"
  1. S MAGRY(2)=OUT(FILE,IENS,1,"I")_RESDEL_OUT(FILE,IENS,15,"I")_RESDEL_OUT(FILE,IENS,16,"I")
  1. S MAGRY(2)=MAGRY(2)_RESDEL_OUT(FILE,IENS,5,"I")_RESDEL_OUT(FILE,IENS,.04,"I")
  1. Q
  1. ;
  1. ;***** Returns information from IMAGING SITE PARAMETERS file (#2006.1)
  1. ;
  1. ; RPC: MAGVA GET ALL SITE PARAM IDS
  1. ;
  1. ; Return Values
  1. ; =============
  1. ;
  1. ; if error found during execution
  1. ; MAGRY(0) = Failure status ^ Error message
  1. ; if success
  1. ; MAGRY(0) = Success status ^^#CNT - where #CNT is a number of records returned
  1. ; MAGRY(1) = PK^Site IEN^Site Number^Site Name^Net UserName^Net Password
  1. ; MAGRY(2) = IEN ^ Site IEN ^ Site Number ^ Site Name ^ Net UserName ^ Net Password
  1. ;
  1. GALLISP(MAGRY) ; RPC [MAGVA GET ALL SITE PARAM IDS]
  1. N X,CNT,I,FILE,IENS,FIELDS,INSTIEN
  1. N OUT,ERR,MAGRESA
  1. N RESDEL
  1. K MAGRY
  1. S RESDEL=$$RESDEL^MAGVAF02() ; Result delimiter
  1. S FILE=2006.1
  1. S FIELDS=".01;50;51" ; INSTITUTION NAME; NET USER; NET PASSWORD
  1. S IENS=""
  1. ; Index "B" is mixed with index "C" - get data from global
  1. S I=0
  1. S CNT=1
  1. F S I=$O(^MAG(FILE,I)) Q:(+I)'>0 D
  1. . S IENS=I_","
  1. . K OUT,ERR
  1. . D GETS^DIQ(FILE,IENS,FIELDS,"I","OUT","ERR")
  1. . I $D(ERR("DIERR")) D Q
  1. . . D MSG^DIALOG("A",.MAGRESA,245,5,"ERR")
  1. . . S MAGRY(0)=$$FAILED^MAGVAF02()_RESDEL_"Error getting values: "_MAGRESA(1) Q ; Error getting the values
  1. . . Q
  1. . S INSTIEN=OUT(FILE,IENS,.01,"I")
  1. . S X=$$NS^XUAF4(INSTIEN) ; IA # 2171 Institution Name and Station Number
  1. . S CNT=CNT+1
  1. . S MAGRY(CNT)=I_RESDEL_INSTIEN_RESDEL_$P(X,U,2)_RESDEL_$P(X,U,1)
  1. . S MAGRY(CNT)=MAGRY(CNT)_RESDEL_OUT(FILE,IENS,50,"I")_RESDEL_OUT(FILE,IENS,51,"I")
  1. . Q
  1. ;
  1. S X="IEN^Site IEN^Site Number^Site Name^Net UserName^Net Password"
  1. F I=1:1:$L(X,"^") S $P(MAGRY(1),RESDEL,I)=$P(X,"^",I)
  1. S MAGRY(0)=$$OK^MAGVAF02()_RESDEL_RESDEL_(CNT-1)
  1. Q