1 | VAFHLPV2 ;ALB/GRR - HL7 PV2 SEGMENT BUILDER ; 3/6/06 8:25am
|
---|
2 | ;;5.3;Registration;**190,692**;Aug 13, 1993
|
---|
3 | ;
|
---|
4 | ;This routine will build an HL7 PV2 segment for an inpatient.
|
---|
5 | ;
|
---|
6 | EN(DFN,VAFHMIEN,VAFSTR) ;Entry point of routine
|
---|
7 | ;DFN - Patient Internal Entry Number
|
---|
8 | ;VAFHMIEN - Patient Movement Internal Entry Number
|
---|
9 | ;VAFSTR - Sequence numbers to include in message
|
---|
10 | ;
|
---|
11 | N VAFHLREC,VAFHA,VAFHSUB S VAFHSUB="" ;Initialize variables
|
---|
12 | S $P(VAFHLREC,HL("FS"))="PV2" ;Set segment type to PV2
|
---|
13 | S VAFHMIEN=$$GETAMOV^DGRUUTL(DFN) I VAFHMIEN="" G QUITPV2 ;If movement ien not passed, get admission movement and quit if none
|
---|
14 | I VAFSTR[",3," D
|
---|
15 | .S VAFHA=$$GET1^DIQ(405,VAFHMIEN,".11","I") ;retrieve 'Admitted for SC Condition' field
|
---|
16 | .I VAFHA=1 D ;If admitted for SC condition do following
|
---|
17 | ..S $P(VAFHSUB,$E(HL("ECH")),4)="SC"
|
---|
18 | ..S $P(VAFHSUB,$E(HL("ECH")),5)="ADMITTED FOR SC CONDITION"
|
---|
19 | ..S $P(VAFHSUB,$E(HL("ECH")),6)="VA0039"
|
---|
20 | .I VAFHA'=1 D ;If not admitted for SC condition do following
|
---|
21 | ..S $P(VAFHSUB,$E(HL("ECH")),4)="NSC"
|
---|
22 | ..S $P(VAFHSUB,$E(HL("ECH")),5)="NOT ADMITTED FOR SC CONDITION"
|
---|
23 | ..S $P(VAFHSUB,$E(HL("ECH")),6)="VA0039"
|
---|
24 | .S $P(VAFHLREC,HL("FS"),4)=VAFHSUB
|
---|
25 | ;If call center param is on add privacy indicator
|
---|
26 | I VAFSTR[",22," D
|
---|
27 | .S VAIP("D")=$G(VAFHDT) D IN5^VADPT
|
---|
28 | .S $P(VAFHLREC,HL("FS"),23)=$S(+VAIP(19,1)=1:"Y",+VAIP(19,1)=0:"N",1:"")
|
---|
29 | .D KVAR^VADPT
|
---|
30 | QUITPV2 Q VAFHLREC
|
---|