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

MAGVIMRA.m

Go to the documentation of this file.
  1. MAGVIMRA ;WOIFO/MAT,DWM,DAC - VISA Importer RA Utilities ; Dec 31, 2019@07:47:15
  1. ;;3.0;IMAGING;**138,164,252**;Mar 19, 2002;Build 5
  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. ;
  1. Q
  1. ;+++++ Wrap calls to ALERT^RARTE7. IA #6006 (Private).
  1. ;
  1. ; Called by XMCOMPLT^MAGVIM05 after exam status advanced to COMPLETE.
  1. ;
  1. ALERT(RADFN,RADTI,RACNI,RAFIRST) ;
  1. N RAA1,RAA2,RANY1,RANY2,RARPT
  1. S RANY1=0
  1. S RANY2=$$ANYDX^RARTE7(.RAA2)
  1. S RARPT=$P(^RADPT(RADFN,"DT",RADTI,"P",RACNI,0),"^",17)
  1. D ALERT^RARTE7
  1. K RAAB
  1. Q
  1. ;--- Increment counter.
  1. C() S C=C+1
  1. Q C
  1. ;+++++ Return STANDARD REPORTS file (#74.1) data w/ XML tags.
  1. ;
  1. ; RPC: MAGV GET RAD STD RPTS
  1. ;
  1. ; Input
  1. ;
  1. ; OUT Array holding the results to return.
  1. ;
  1. ; Output
  1. ;
  1. ; Array of XML tagged STANDARD REPORTS file (#74.1) data.
  1. ;
  1. GETRADSR(OUT) ;
  1. N FILE S FILE=74.1
  1. N C S C=0
  1. ;--- Output standard XML header. IA #4153 (Supported).
  1. S OUT(C)=$$XMLHDR^MXMLUTL()
  1. N TAG0 S TAG0="ArrayOfStandardReport"
  1. S OUT($$C())=$$XMTAG(TAG0,0) D
  1. . ;
  1. . ;--- Read of ^RA(74.1,IEN, is IA #6004 (Private).
  1. . N TAG1 S TAG1="StandardReport"
  1. . N IEN
  1. . S IEN=0 F S IEN=$O(^RA(FILE,IEN)) Q:IEN]"A" D RADSR(TAG1,IEN)
  1. . Q
  1. S OUT($$C())=$$XMTAG(TAG0,1)
  1. Q
  1. ;+++++ Return DIAGNOSTIC CODE file (#78.3) data w/ XML tags.
  1. ;
  1. ; RPC: MAGV GET RAD DX CODES
  1. ;
  1. ; Input
  1. ;
  1. ; OUT Array holding the results to return.
  1. ;
  1. ; Output
  1. ;
  1. ; Array of XML tagged DIAGNOSTIC CODES file (#78.3) data.
  1. ;
  1. GETRADDX(OUT) ; P252 DAC - Modified to exclude inactive RAD DX codes
  1. N FILE S FILE=78.3
  1. N C S C=0
  1. ;--- IA #3561 (Supported)
  1. S OUT(C)=$$XMLHDR^MXMLUTL()
  1. N TAG0 S TAG0="ArrayOfDiagnosticCode"
  1. S OUT($$C())=$$XMTAG(TAG0,0) D
  1. . ;
  1. . ;--- Read of ^RA(78.1,IEN, is IA #6005 (Private).
  1. . N TAG1 S TAG1="DiagnosticCode"
  1. . N IEN
  1. . S IEN=0 F S IEN=$O(^RA(FILE,IEN)) Q:IEN]"A" D
  1. .. Q:$$GET1^DIQ(FILE,IEN,5,"I")="Y" ; exclude inactive codes <<
  1. .. D RADDX(TAG1,IEN)
  1. .. Q
  1. . Q
  1. S OUT($$C())=$$XMTAG(TAG0,1)
  1. Q
  1. ;+++++ Return IMAGING LOCATIONS file (#79.1) data w/ XML tags.
  1. ;
  1. ; RPC: MAGV GET RAD DX CODES
  1. ;
  1. ; Input
  1. ;
  1. ; OUT Array holding the results to return.
  1. ;
  1. ; Output
  1. ;
  1. ; Array of XML tagged IMAGING LOCATIONS file (#79.1) data.
  1. ;
  1. ;--- Drive output assembly for one IMAGING LOCATIONS file (#78.3) record.
  1. GETRADLC(OUT) ;
  1. N FILE S FILE=79.1
  1. N C S C=0
  1. ;--- IA #3561 (Supported)
  1. S OUT(C)=$$XMLHDR^MXMLUTL()
  1. N TAG0 S TAG0="ArrayOfImagingLocation"
  1. S OUT($$C())=$$XMTAG(TAG0,0) D
  1. . ;
  1. . ;--- Read of ^RA(78.3,IEN, is IA #6007 (Private).
  1. . N TAG1 S TAG1="ImagingLocation"
  1. . N IEN,INACTIVE
  1. . S IEN=0 F S IEN=$O(^RA(FILE,IEN)) Q:IEN]"A" D
  1. .. S INACTIVE=$$GET1^DIQ(FILE,IEN,19,"I") ;; p164 Check the location is active
  1. .. I (INACTIVE="")!(INACTIVE>$$DT^XLFDT) D RADLOC^MAGVIMRA(TAG1,IEN)
  1. .. Q
  1. . Q
  1. S OUT($$C())=$$XMTAG(TAG0,1)
  1. Q
  1. ;--- Drive output assembly for one DIAGNOSTIC CODES file (#78.3) record.
  1. RADDX(TAG1,IEN) ;
  1. S OUT($$C())=$$XMTAG(TAG1,0) D
  1. . N STRING
  1. . S OUT($$C())=$$STRING("Id",IEN)
  1. . S STRING=$$GET1^DIQ(FILE,IEN,.01)
  1. . S OUT($$C())=$$STRING("Name",STRING)
  1. . S STRING=$$GET1^DIQ(FILE,IEN,2)
  1. . S OUT($$C())=$$STRING("Description",IEN)
  1. . Q
  1. S OUT($$C())=$$XMTAG(TAG1,1)
  1. Q
  1. ;--- Drive output assembly for one IMAGING LOCATIONS file (#79.1) record.
  1. RADLOC(TAG1,IEN) ;
  1. S OUT($$C())=$$XMTAG(TAG1,0) D
  1. . N STRING
  1. . S OUT($$C())=$$STRING("Id",IEN)
  1. . S STRING=$$GET1^DIQ(FILE,IEN,.01)
  1. . S OUT($$C())=$$STRING("Name",STRING)
  1. . S STRING=$$GET1^DIQ(FILE,IEN,21)
  1. . S OUT($$C())=$$STRING("CreditMethod",STRING)
  1. . Q
  1. S OUT($$C())=$$XMTAG(TAG1,1)
  1. Q
  1. ;--- Drive output assembly for one STANDARD REPORT file (#78.1) record.
  1. RADSR(TAG1,IEN) ;
  1. S OUT($$C())=$$XMTAG(TAG1,0) D
  1. . S OUT($$C())=$$STRING("Id",IEN)
  1. . S STRING=$$GET1^DIQ(FILE,IEN,.01)
  1. . S OUT($$C())=$$STRING("ReportName",STRING)
  1. . ;
  1. . ;--- Handle word-processing fields.
  1. . D WPTXT("ReportText",FILE,200,IEN)
  1. . D WPTXT("Impression",FILE,300,IEN)
  1. . Q
  1. S OUT($$C())=$$XMTAG(TAG1,1)
  1. Q
  1. ;--- Tag an input string.
  1. STRING(TAG,STRING) ;
  1. N ITEM
  1. S ITEM=$$XMTAG(TAG,0)
  1. ;--- Translate embedded reserved XML symbols. IA #4153 (Supported).
  1. S ITEM=ITEM_$$SYMENC^MXMLUTL(STRING)
  1. S ITEM=ITEM_$$XMTAG(TAG,1)
  1. Q ITEM
  1. ;
  1. ;--- Tag a word processing field.
  1. WPTXT(TAG,FILE,FIELD,IEN) ;
  1. S OUT($$C())=$$XMTAG(TAG,0)
  1. ;
  1. ;--- Word Processing Field
  1. K TXTERR,TXTWP
  1. N ITEM
  1. S ITEM=$$GET1^DIQ(FILE,IEN,FIELD,,"TXTWP","TXTERR")
  1. ;
  1. ;--- Translate embedded reserved XML symbols. IA #4153 (Supported).
  1. N NDX
  1. S NDX=0
  1. F S NDX=$O(TXTWP(NDX)) Q:NDX="" S OUT($$C())=$$SYMENC^MXMLUTL(TXTWP(NDX))
  1. S OUT($$C())=$$XMTAG(TAG,1)
  1. Q
  1. ;--- Enclose a tag.
  1. XMTAG(TAG,END) ;
  1. S OUT="<"
  1. S:END OUT=OUT_"/"
  1. S OUT=OUT_TAG
  1. S OUT=OUT_">"
  1. Q OUT
  1. ;
  1. ; MAGVIMRA