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

DVBCHS1.m

Go to the documentation of this file.
  1. DVBCHS1 ;ALB/JRP - C & P EXTRACT FOR HEALTH SUMMARY (CONT);11-JAN-95
  1. ;;2.7;AMIE;**149,184**;Apr 10, 1995;Build 10
  1. OUT0(PTR,ARR) ;SET NODE ZERO 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() for format of output array
  1. ;NOTES : All input is assumed to exist (no error checking)
  1. ;
  1. N CODE,FMDATE,TYPE,DOCTOR,PRIORITY
  1. N INVDATE,NODE,REQPTR,TYPEPTR,TMP
  1. ;GET ZERO NODE OF 2507 EXAM
  1. S NODE=$G(^DVB(396.4,PTR,0))
  1. ;GET INFO OFF OF NODE
  1. S REQPTR=+$P(NODE,"^",2)
  1. S TYPEPTR=+$P(NODE,"^",3)
  1. S FMDATE=+$P(NODE,"^",6)
  1. S DOCTOR=$P(NODE,"^",7)
  1. S:(DOCTOR="") DOCTOR="UNKNOWN"
  1. ;GET PRIORITY FROM ZERO NODE OF 2507 REQUEST
  1. S NODE=$G(^DVB(396.3,REQPTR,0))
  1. S TMP=$P(NODE,"^",10)
  1. ;CONVERT PRIORITY TO EXTERNAL FORMAT
  1. S PRIORITY="UNKNOWN"
  1. S:(TMP="T") PRIORITY="TERMINAL"
  1. S:(TMP="P") PRIORITY="POW"
  1. S:(TMP="OS") PRIORITY="ORIGINAL SC"
  1. S:(TMP="ON") PRIORITY="ORIGINAL NSC"
  1. S:(TMP="I") PRIORITY="INCREASE"
  1. S:(TMP="R") PRIORITY="REVIEW"
  1. S:(TMP="OTR") PRIORITY="OTHER"
  1. S:(TMP="E") PRIORITY="INSUFFICIENT EXAM"
  1. S:(TMP="AO") PRIORITY="AGENT ORANGE"
  1. S:(TMP="BDD") PRIORITY="BEN DELIV AT DISCHG"
  1. S:(TMP="IDES") PRIORITY="IDES"
  1. S:(TMP="QS") PRIORITY="QUICK START"
  1. ;CONVERT EXAM TYPE TO EXTERNAL FORMAT
  1. S TYPE=$P($G(^DVB(396.6,TYPEPTR,0)),"^",1)
  1. S:('TYPEPTR) TYPE="UNKNOWN"
  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. ;CALCULATE INVERSE EXAM DATE
  1. S INVDATE=9999999-FMDATE
  1. ;PUT INFO INTO GLOBAL
  1. S @ARR@(INVDATE,TYPEPTR,0)=CODE_"^"_FMDATE_"^"_TYPE_"^"_DOCTOR_"^"_PRIORITY
  1. Q
  1. OUTRES(PTR,ARR) ;SET NODE 'RES' 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 LINE,LINES,INVDATE,FMDATE,TYPEPTR,NODE
  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 RESULTS INTO GLOBAL
  1. S LINE=0,LINES=1
  1. F S LINE=+$O(^DVB(396.4,PTR,"RES",LINE)) Q:('LINE) D
  1. .S @ARR@(INVDATE,TYPEPTR,"RES",LINES)=$G(^DVB(396.4,PTR,"RES",LINE,0))
  1. .S LINES=LINES+1
  1. ;PUT NUMBER OF LINES INFO INTO GLOBAL
  1. S @ARR@(INVDATE,TYPEPTR,"RES",0)=LINES-1
  1. Q