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

DVBCHS2.m

Go to the documentation of this file.
  1. DVBCHS2 ;ALB/JRP - C & P EXTRACT FOR HEALTH SUMMARY (CONT);11-JAN-95
  1. ;;2.7;AMIE;;Apr 10, 1995
  1. OUT1(PTR,ARR) ;SET NODE ONE OF OUTPUT
  1. ;INPUT : PTR - Pointer to 2507 EXAM file (#396.4)
  1. ; ARR - Where to place output (full global reference)
  1. ;OUTPUT : None
  1. ; See HSCP^DVBCHS0() for format of output array
  1. ;NOTES : All input is assumed to exist (no error checking)
  1. ;
  1. N CODE,NODE,LOCPTR,LOCATION,OWNPTR,OWNER,OUTPTR
  1. N TYPEPTR,FMDATE,REQPTR,OUTDOM,INVDATE
  1. ;DETERMINE CODE (BASED ON TRANSFER OUT/IN DATES)
  1. S NODE=$G(^DVB(396.4,PTR,"TRAN"))
  1. ;DONE AT LOCAL FACILITY
  1. S CODE=1
  1. ;DONE AT REMOTE FACILITY
  1. S:($P(NODE,"^",1)'="") CODE=2
  1. ;DONE AT LOCAL FACILITY FOR REMOTE FACILITY
  1. S:($P(NODE,"^",4)'="") CODE=3
  1. ;GET ROUTING LOCATION
  1. S REQPTR=+$P($G(^DVB(396.4,PTR,0)),"^",2)
  1. S LOCPTR=+$P($G(^DVB(396.3,REQPTR,1)),"^",4)
  1. S LOCATION=$P($G(^DG(40.8,LOCPTR,0)),"^",1)
  1. S:('LOCPTR) LOCATION="UNKNOWN"
  1. ;DEFAULT REMOTE DOMAINS TO N/A
  1. S OWNER="N/A"
  1. S OUTDOM="N/A"
  1. ;EXAM DONE REMOTELY
  1. I (CODE=2) D
  1. .S OUTPTR=+$P($G(^DVB(396.4,PTR,"TRAN")),"^",3)
  1. .S OUTDOM=$P($G(^DIC(4.2,OUTPTR,0)),"^",1)
  1. .S:('OUTPTR) OUTDOM="UNKNOWN"
  1. ;EXAM DONE FOR REMOTE FACILITY
  1. I (CODE=3) D
  1. .S OWNPTR=+$P($G(^DVB(396.3,REQPTR,0)),"^",22)
  1. .S OWNER=$P($G(^DIC(4.2,OWNPTR,0)),"^",1)
  1. .S:('OWNPTR) OWNER="UNKNOWN"
  1. ;GET EXAM DATE & TYPE
  1. S NODE=$G(^DVB(396.4,PTR,0))
  1. S TYPEPTR=+$P(NODE,"^",3)
  1. S FMDATE=+$P(NODE,"^",6)
  1. ;CALCULATE INVERSE EXAM DATE
  1. S INVDATE=9999999-FMDATE
  1. ;PUT INFO INTO GLOBAL
  1. S @ARR@(INVDATE,TYPEPTR,1)=LOCATION_"^"_OWNER_"^"_OUTDOM
  1. Q
  1. OUT2(PTR,ARR) ;SET NODE TWO OF OUTPUT
  1. ;INPUT : PTR - Pointer to 2507 EXAM file (#396.4)
  1. ; ARR - Where to place output (full global reference)
  1. ;OUTPUT : None
  1. ; See HSCP^DVBCHS0() for format of output array
  1. ;NOTES : All input is assumed to exist (no error checking)
  1. ;
  1. N NODE,CODE,TYPEPTR,FMDATE,INVDATE
  1. N STATUS,APPRVBY,APPRVDTE,REQPTR
  1. ;DETERMINE CODE (BASED ON TRANSFER OUT/IN DATES)
  1. S NODE=$G(^DVB(396.4,PTR,"TRAN"))
  1. ;DONE AT LOCAL FACILITY
  1. S CODE=1
  1. ;DONE AT REMOTE FACILITY
  1. S:($P(NODE,"^",1)'="") CODE=2
  1. ;DONE AT LOCAL FACILITY FOR REMOTE FACILITY
  1. S:($P(NODE,"^",4)'="") CODE=3
  1. ;GET INFO FROM REQUEST
  1. S REQPTR=+$P($G(^DVB(396.4,PTR,0)),"^",2)
  1. ;GET APPROVAL INFO
  1. S NODE=$G(^DVB(396.3,REQPTR,1))
  1. S APPRVBY=$P(NODE,"^",5)
  1. S APPRVDTE=+$P(NODE,"^",6)
  1. ;DETERMINE STATUS
  1. S TMP=$P($G(^DVB(396.3,REQPTR,0)),"^",18)
  1. S STATUS="UNKNOWN"
  1. S:(TMP="N") STATUS="NEW",APPRVBY="N/A"
  1. S:(TMP="P") STATUS="PENDING, REPORTED",APPRVBY="N/A"
  1. S:(TMP="S") STATUS="PENDING SCHEDULED",APPRVBY="N/A"
  1. S:(TMP="R") STATUS="RELEASED TO RO, NOT PRINTED"
  1. S:(TMP="C") STATUS="COMPLETED, PRINTED BY RO"
  1. S:(TMP="X") STATUS="CANCELLED BY MAS",APPRVBY="N/A"
  1. S:(TMP="RX") STATUS="CANCELLED BY RO",APPRVBY="N/A"
  1. S:(TMP="T") STATUS="TRANSCRIBED",APPRVBY="N/A"
  1. S:(TMP="NT") STATUS="NEW, TRANSFERRED IN",APPRVBY="N/A"
  1. S:(TMP="CT") STATUS="COMPLETED, TRANSFERRED OUT"
  1. S:(STATUS="UNKNOWN") APPRVBY="N/A"
  1. ;GET EXAM DATE & TYPE
  1. S NODE=$G(^DVB(396.4,PTR,0))
  1. S TYPEPTR=+$P(NODE,"^",3)
  1. S FMDATE=+$P(NODE,"^",6)
  1. ;CALCULATE INVERSE EXAM DATE
  1. S INVDATE=9999999-FMDATE
  1. ;PUT INFO INTO GLOBAL
  1. S @ARR@(INVDATE,TYPEPTR,2)=STATUS_"^"_APPRVBY_"^"_APPRVDTE
  1. Q