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
|
---|