MAGBAPIP	;WOIFO/MLH - Background Processor API to build queues - Modules for place
	;;3.0;IMAGING;**1,7,8,20,59**;Nov 27, 2007;Build 20
	;;Per VHA Directive 2004-038, this routine should not be modified.
	;; +---------------------------------------------------------------+
	;; | 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.                     |
	;; +---------------------------------------------------------------+
	;;
DUZ2PLC(WARN)	;Convert DUZ to a PLACE. File 2006.1 entry (PLACE)
	; Extrinsic : Always returns a PLACE
	; WARN          : message about where the PLACE was derived from.
	; Compute the Users Institution for older versions of Imaging Display workstation.
	; This is called when DUZ(2) doesn't exist Or Can't resolve DUZ(2)
	;  into site param entry.  This solved a GateWay Problem where DUZ(2) didn't
	;  exist.  - Shouldn't get here anymore, that was fixed.
	N MAGINST,DIVDTA,PLACE
	S MAGINST=0
	D GETS^DIQ(200,DUZ,"16*","I","DIVDTA") ; look up Division field
	;                                 ? Any division data on file for this user
	I $D(DIVDTA) D  ; yes, use it
	. S MAGINST=@$Q(DIVDTA),WARN="Using first Division of New Person File."
	. Q
	E  D  ;                   no, use default site param?
	. S MAGINST=$$KSP^XUPARAM("INST"),WARN="Using Kernel Site Param default entry." Q
	. Q
	S PLACE=$$GETPLACE^MAGBAPI(+$$PLACE^MAGBAPI(MAGINST))
	I 'PLACE S PLACE=$O(^MAG(2006.1,0)),WARN="Using First Site Param entry."
	Q PLACE
	;
DA2PLC(MAGDA,TYPE)	; Get Place from Image File IEN
	; TYPE :        Possible values "A" Abstract, "F" Full Res or "B" Big File
	; (defaults to "F" if null)
	; Resolve Place (PLC) using the Acquisition Site field (ACQS)
	; IF ACQS is null or not doesn't exist in the site parameter file
	; THEN Resolve PLC using NetWork Location pointer
	; 
	N MAGREF,MAG0,FBIG,SITE,PLC,MAGJB
	I '$G(MAGDA) Q 0
	S SITE=$P($G(^MAG(2005,MAGDA,100)),U,3)
	I SITE S PLC=$$PLACE^MAGBAPI(SITE) Q:PLC PLC
	; p59  Stop the error when an Image is Deleted.
	S MAG0=$G(^MAG(2005,MAGDA,0)) Q:MAG0="" 0
	;
	S TYPE=$E($G(TYPE)_"F",1)
	I "AF"[TYPE D
	. S MAGREF=$S(TYPE="A":+$P(MAG0,"^",4),1:+$P(MAG0,"^",3))
	. I MAGREF=0 S MAGJB=1,MAGREF=+$P(MAG0,"^",5) ; get file from jukebox
	I "B"[TYPE D
	. S FBIG=$G(^MAG(2005,MAGDA,"FBIG"))
	. S MAGREF=+$P(FBIG,"^") ; get file from magnetic disk, if possible
	. I MAGREF=0 S MAGREF=+$P(FBIG,"^",2) ; get file from jukebox
	I 'MAGREF Q 0
	I '$D(^MAG(2005.2,MAGREF,0)) Q 0
	Q $$GETPLACE^MAGBAPI(+$$GET1^DIQ(2005.2,MAGREF,.04,"I"))
