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

HLTP3A.m

Go to the documentation of this file.
  1. HLTP3A ;SFIRMFO/RSD - Transaction Processor for TCP- INIT ;10/31/2008 11:01
  1. ;;1.6;HEALTH LEVEL SEVEN;**109,142**;Oct 13, 1995;Build 17
  1. ;Per VHA Directive 2004-038, this routine should not be modified.
  1. ;
  1. ;split from hltp3
  1. Q
  1. INIT ;initialize variables, get MSA & header, returns HLRESLT if error
  1. N HLJ
  1. ;
  1. K HLRESLT,HL
  1. S HLMTIENS=+X,HLMTIEN=+$P(X,U,2),HLMSA=$$MSA^HLTP3(HLMTIEN)
  1. ;
  1. ;get header and validate
  1. ; patch HL*1.6*142: locking code for MPI-client/server
  1. F L +^HLMA(HLMTIENS,"MSH"):10 Q:$T H 1
  1. F COUNT=1:1:15 Q:$G(^HLMA(HLMTIENS,"MSH",1,0))]"" H COUNT
  1. M HLHDRO=^HLMA(HLMTIENS,"MSH")
  1. L -^HLMA(HLMTIENS,"MSH")
  1. ;HLMSA is by ref., for a batch msg HLMSA will be setup in HLTPCK2
  1. D CHK^HLTPCK2(.HLHDRO,.HL,.HLMSA)
  1. ;Update Message Administration file #773, for incoming message
  1. ;3=trans type, 20=status
  1. K HLJ
  1. S X="HLJ(773,"""_HLMTIENS_","")",@X@(3)="I",@X@(20)=9
  1. ;HL=error #^error text, 21=date process, 22=error msg, 23=error type
  1. S:$G(HL) @X@(20)=4,@X@(21)=$$NOW^XLFDT,@X@(22)=$P(HL,U,2),@X@(23)=+HL
  1. ;8=protocol, 13=sending app
  1. S:$G(HL("EIDS")) @X@(8)=HL("EIDS") S:$G(HL("SAP")) @X@(13)=HL("SAP")
  1. ;14=receiving app, 12=acknowledgement to
  1. S:$G(HL("RAP")) @X@(14)=HL("RAP") S:$G(HL("MTIENS")) @X@(12)=HL("MTIENS")
  1. ;6=initial message, 7=logical link
  1. S:$G(HLTCPI) @X@(6)=HLTCPI S @X@(7)=HLDP
  1. ;
  1. ;15=message type, 16=event type
  1. S:$G(HL("MTP")) @X@(15)=HL("MTP") S:$G(HL("ETP")) @X@(16)=HL("ETP")
  1. ;HL*1.6*109 S:$G(HL("MTP_ETP")) @X@(17)=HL("MTP_ETP")
  1. D FILE^HLDIE("","HLJ","","INIT-1","HLTP3A") ;HL*1.6*109
  1. ;Update Message Text file #772
  1. ;4=trans type
  1. K HLJ S X="HLJ(772,"""_HLMTIEN_","")",@X@(4)="I"
  1. ;10=event protocol
  1. S:$G(HL("EID")) @X@(10)=HL("EID")
  1. D FILE^HLDIE("","HLJ","","INIT-2","HLTP3A") ; HL*1.6*109
  1. ;set HLRESLT to error
  1. S:HL'="" HLRESLT=HL
  1. Q