| [613] | 1 | MDHL7R1 ; HOIFO/WAA -Clinivision Resporatory ; 06/13/02
 | 
|---|
 | 2 |  ;;1.0;CLINICAL PROCEDURES;;Apr 01, 2004
 | 
|---|
 | 3 |  ; Reference Supported DBIA #10035 PATIENT
 | 
|---|
 | 4 |  ; Reference Supported DBIA #10106 HL7
 | 
|---|
 | 5 |  ; IA# 10103 [Supported] Calls to XLFT
 | 
|---|
 | 6 |  ;     10090 [Supported] FM read of DIC(4
 | 
|---|
 | 7 |  ;
 | 
|---|
 | 8 | OBX ; Process OBX
 | 
|---|
 | 9 |  N MDATT,PROC,P,PNAM,AGE,DOB,DOBAGE,STATION
 | 
|---|
 | 10 |  I $G(STATION) S STATION=$$FIND1^DIC(4,"","MX",STATION)
 | 
|---|
 | 11 |  S:'$L($G(STATION)) STATION=$G(DUZ(2))
 | 
|---|
 | 12 |  S PNAM=$P(^DPT(DFN,0),U,1)
 | 
|---|
 | 13 |  S DOB=$P(^DPT(DFN,0),U,3)
 | 
|---|
 | 14 |  S DOB=$$FMTE^XLFDT(DOB,"1D")
 | 
|---|
 | 15 |  S AGE=$$GET1^DIQ(2,DFN,.033)
 | 
|---|
 | 16 |  S DOBAGE=DOB_" ("_AGE_")"
 | 
|---|
 | 17 |  K ^TMP($J,"MDHL7","TEXT")
 | 
|---|
 | 18 |  S P="|"
 | 
|---|
 | 19 |  D ATT^MDHL7U(DEVIEN,.MDATT) Q:MDATT<1
 | 
|---|
 | 20 |  S PROC=0
 | 
|---|
 | 21 |  F  S PROC=$O(MDATT(PROC)) Q:PROC<1  D
 | 
|---|
 | 22 |  . N PROCESS
 | 
|---|
 | 23 |  . S PROCESS=$P(MDATT(PROC),";",5)
 | 
|---|
 | 24 |  . I PROCESS="TEXT^MDHL7U2" D TXT
 | 
|---|
 | 25 |  . D @PROCESS
 | 
|---|
 | 26 |  . Q
 | 
|---|
 | 27 |  Q:'MDIEN
 | 
|---|
 | 28 |  D REX^MDHL7U1(MDIEN)
 | 
|---|
 | 29 |  D GENACK^MDHL7X
 | 
|---|
 | 30 |  Q
 | 
|---|
 | 31 | TXT ; Extract data and process it for the test fuinction
 | 
|---|
 | 32 |  N CNT,CNT2,LINE,LINE2
 | 
|---|
 | 33 |  S (CNT,CNT2)=0
 | 
|---|
 | 34 |  F  S CNT=$O(^TMP($J,"MDHL7A",CNT)) Q:CNT<1  D
 | 
|---|
 | 35 |  . S LINE=^TMP($J,"MDHL7A",CNT)
 | 
|---|
 | 36 |  . I $P(LINE,P,1)="PID" D  Q  ;HEADER
 | 
|---|
 | 37 |  .. N SPC
 | 
|---|
 | 38 |  .. S LINE2=$J("Report from: ",31)_$$GET1^DIQ(4,+STATION_",",.01,"E")_"    Station #"_$$GET1^DIQ(4,+STATION_",",99,"E")
 | 
|---|
 | 39 |  .. S CNT2=CNT2+1
 | 
|---|
 | 40 |  .. S ^TMP($J,"MDHL7","TEXT",CNT2)="OBX||TX|||"_LINE2
 | 
|---|
 | 41 |  .. S LINE2="Clinivision Report"
 | 
|---|
 | 42 |  .. S CNT2=CNT2+1
 | 
|---|
 | 43 |  .. S ^TMP($J,"MDHL7","TEXT",CNT2)="OBX||TX|||"_LINE2
 | 
|---|
 | 44 |  .. S LINE2=PNAM_"   "_$E(MDSSN,1,3)_"-"_$E(MDSSN,4,5)_"-"_$E(MDSSN,6,9)
 | 
|---|
 | 45 |  .. S SPC=77-$L(LINE2),LINE2=LINE2_$J(DOBAGE,SPC)
 | 
|---|
 | 46 |  .. S CNT2=CNT2+1
 | 
|---|
 | 47 |  .. S ^TMP($J,"MDHL7","TEXT",CNT2)="OBX||TX|||"_LINE2
 | 
|---|
 | 48 |  .. Q
 | 
|---|
 | 49 |  . I $P(LINE,P,1)="OBR" D  Q
 | 
|---|
 | 50 |  .. S LINE2=""
 | 
|---|
 | 51 |  .. S $P(LINE2,"=",79)=""
 | 
|---|
 | 52 |  .. S CNT2=CNT2+1
 | 
|---|
 | 53 |  .. S ^TMP($J,"MDHL7","TEXT",CNT2)="OBX||TX|||"_LINE2
 | 
|---|
 | 54 |  .. S LINE2=$$FMDATE^HLFNC($E($P(LINE,P,8),1,14))
 | 
|---|
 | 55 |  .. S LINE2=$$FMTE^XLFDT(LINE2,"1P")
 | 
|---|
 | 56 |  .. S LINE2="REPORT DATE: "_LINE2
 | 
|---|
 | 57 |  .. S CNT2=CNT2+1
 | 
|---|
 | 58 |  .. S ^TMP($J,"MDHL7","TEXT",CNT2)="OBX||TX|||"_LINE2
 | 
|---|
 | 59 |  .. Q
 | 
|---|
 | 60 |  . I $P(LINE,P,1)'="OBX" Q
 | 
|---|
 | 61 |  . I $P(LINE,P,3)'="ST" Q
 | 
|---|
 | 62 |  . S LINE2=$P($P(LINE,P,4),U,2)
 | 
|---|
 | 63 |  . I LINE2="Comment" D
 | 
|---|
 | 64 |  .. S LINE2=""
 | 
|---|
 | 65 |  .. S CNT2=CNT2+1
 | 
|---|
 | 66 |  .. S ^TMP($J,"MDHL7","TEXT",CNT2)="OBX||TX|||Comment:"
 | 
|---|
 | 67 |  .. Q
 | 
|---|
 | 68 |  . E  S LINE2=LINE2_": "
 | 
|---|
 | 69 |  . S LINE2=LINE2_$P(LINE,P,6)
 | 
|---|
 | 70 |  . S CNT2=CNT2+1
 | 
|---|
 | 71 |  . S ^TMP($J,"MDHL7","TEXT",CNT2)="OBX||TX|||"_LINE2
 | 
|---|
 | 72 |  . Q
 | 
|---|
 | 73 |  Q
 | 
|---|