source: FOIAVistA/trunk/r/HEALTH_LEVEL_SEVEN-HL/HLOSRVR2.m@ 767

Last change on this file since 767 was 628, checked in by George Lilly, 15 years ago

initial load of FOIAVistA 6/30/08 version

File size: 1.7 KB
Line 
1HLOSRVR2 ;ALB/CJM-HL7 - HLO Server ;07/20/2007
2 ;;1.6;HEALTH LEVEL SEVEN;**131,137**;Oct 13, 1995;Build 21
3 ;Per VHA Directive 2004-038, this routine should not be modified.
4 ;
5NEWMSG(HLCSTATE,HLMSTATE,HDR) ;
6 ;initialize the HLMSTATE array after reading the header
7 ;Inputs:
8 ; HLCSTATE (pass by reference)
9 ; HDR (pass by reference) parsed header
10 ;Output:
11 ; HLMSTATE (pass by reference)
12 ;
13 K HLMSTATE
14 S HLMSTATE("IEN")=""
15 S HLMSTATE("BODY")=""
16 S HLMSTATE("DIRECTION")="IN"
17 S HLMSTATE("CURRENT SEGMENT")=0 ;no segments in cache
18 S HLMSTATE("UNSTORED LINES")=1 ;just the header in cache so far
19 S HLMSTATE("LINE COUNT")=0 ;no lines within message stored to disk
20 I HDR("SEGMENT TYPE")="BHS" D
21 .S HLMSTATE("BATCH")=1
22 .S HLMSTATE("ID")=HDR("BATCH CONTROL ID")
23 .S HLMSTATE("BATCH","CURRENT MESSAGE")=0 ;no messages in batch
24 .S HLMSTATE("UNSTORED MSH")=0
25 E D
26 .S HLMSTATE("BATCH")=0
27 .S HLMSTATE("ID")=HDR("MESSAGE CONTROL ID")
28 M HLMSTATE("HDR")=HDR
29 M HLMSTATE("SYSTEM")=HLCSTATE("SYSTEM")
30 S HLMSTATE("STATUS")=""
31 S HLMSTATE("STATUS","QUEUE")=""
32 S HLMSTATE("STATUS","ACTION")=""
33 S HLMSTATE("STATUS","LINK NAME")=HLCSTATE("LINK","NAME")
34 S HLMSTATE("STATUS","PORT")=$P(HDR("SENDING FACILITY",2),":",2)
35 ;
36 ;if this is a batch, and it references another batch, assume it is a b.
37 I HLMSTATE("BATCH"),HLMSTATE("ID")]"" D
38 .N IEN
39 .S HLMSTATE("ACK TO")=HLMSTATE("ID")
40 .S HLMSTATE("ACK TO","STATUS")="SU"
41 .S IEN=$O(^HLB("B",HLMSTATE("ID"),0))
42 .I IEN S HLMSTATE("ACK TO","IEN")=IEN_"^"
43 E S HLMSTATE("ACK TO")=""
44 I 'HLMSTATE("BATCH"),HDR("ACCEPT ACK TYPE")="",HDR("APP ACK TYPE")="" D
45 .S HLMSTATE("ORIGINAL MODE")=1
46 E D
47 .S HLMSTATE("ORIGINAL MODE")=0
48 N I F I=1,3 S HLMSTATE("MSA",I)=""
49 S HLMSTATE("MSA",2)=HLMSTATE("ID")
50 Q
Note: See TracBrowser for help on using the repository browser.