IS00011(INTT,INDA,INA,INDEST,INQUE,INORDUZ,INORDIV) ;Compiled from script 'Generated: HL IHS IZV04 OUT-O' on AUG 15, 2018
;Part 1
;Copyright 2018 SAIC
EN S X="ERROR^IS00011",@^%ZOSF("TRAP")
G START
ERROR ;
S X="",@^%ZOSF("TRAP") X ^INTHOS(1,3) D ERROR^INHS($$GETERR^%ZTOS)
Q 2
START ;Initialize variables
K ^UTILITY("INH",$J) S (MESSID,INA("MESSID"))=$$MESSID^INHD
K INUIF6 M INUIF6=INDA
K INREQERR,INHERR,INHERCNT,INV D SETDT^UTDT S DUZ(0)="@",DUZ("AG")="^1",DTIME=1 S (LCT,GERR)=0,INMODE="O",INVS=$P(^INRHSITE(1,0),U,12),INV=$S(INVS<2:"INV",1:"^UTILITY(""INV"",$J)"),(MULT,INSTERR)=0
S INHLDUZ=$O(^VA(200,"B","GIS,USER",0)),DUZ=$S($G(INHLDUZ):INHLDUZ,1:.5)
S BHLMIEN="12426"
I $G(^INTHL7M(BHLMIEN,4,1,0))]"" X $G(^INTHL7M(BHLMIEN,4,1,0))
K INSETID
S INSMIN=$S($P($G(^INRHSITE(1,0)),U,14):$P(^(0),U,14),1:2500)
S (DELIM,INDELIM)=$$FIELD^INHUT(),(SUBDELIM,INSUBDEL)=$$COMP^INHUT(),INSUBCOM=$$SUBCOMP^INHUT()
S INDELIMS=$$FIELD^INHUT_$$COMP^INHUT_$$REP^INHUT_$$ESC^INHUT_$$SUBCOMP^INHUT
;Entering MUMPS section.
D VST^BHLV,PATH^BYIMIMM
;Entering DATA section.
S DELIM="|"
S SUBDELIM="^"
SET INSETID=0
D MSH^BYIMSEGS
;SET MSH1 = INSGX\^INTHL7FT(1,3)\\4\@ENC
S D0=INDA S X=$G(INA("ENC"))
S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,4)
S @INV@("MSH1")=X K DXS,D0
;SET MSH2 = INSGX\^INTHL7FT(1,3)\\180\@MSH3
S D0=INDA S X=$G(INA("MSH3"))
S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,180)
S @INV@("MSH2")=X K DXS,D0
;SET MSH3 = INSGX\^INTHL7FT(1,3)\\180\@MSH4
S D0=INDA S X=$G(INA("MSH4"))
S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,180)
S @INV@("MSH3")=X K DXS,D0
;SET MSH4 = INSGX\^INTHL7FT(1,3)\\180\@MSH5
S D0=INDA S X=$G(INA("MSH5"))
S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,180)
S @INV@("MSH4")=X K DXS,D0
;SET MSH5 = INSGX\^INTHL7FT(1,3)\\180\@MSH6
S D0=INDA S X=$G(INA("MSH6"))
S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,180)
S @INV@("MSH5")=X K DXS,D0
;SET MSH6 = INSGX\^INTHL7FT(1,3)\\20\@MSH7
S D0=INDA S X=$G(INA("MSH7"))
S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,20)
S @INV@("MSH6")=X K DXS,D0
;SET MSH7 = INSGX\^INTHL7FT(1,3)\\20\@MSH8
S D0=INDA S X=$G(INA("MSH8"))
S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,20)
S @INV@("MSH7")=X K DXS,D0
;SET MSH8 = INSGX\^INTHL7FT(1,3)\\50\@MSH9
S D0=INDA S X=$G(INA("MSH9"))
S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,50)
S @INV@("MSH8")=X K DXS,D0
;SET MSH9 = INSGX\^INTHL7FT(1,3)\\20\@MSH10
S D0=INDA S X=$G(INA("MSH10"))
S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,20)
S @INV@("MSH9")=X K DXS,D0
;SET MSH10 = $E(INTERNAL(@PRID),1,1)
S D0=INDA S X=$G(INA("PRID")),X=X S X=X,Y(1)=$G(X) S X=1,Y(2)=$G(X) S X=1,X=$E(Y(1),Y(2),X)
S @INV@("MSH10")=X K DXS,D0
;SET MSH11 = @MSH12
S D0=INDA S X=$G(INA("MSH12"))
S @INV@("MSH11")=X K DXS,D0
;SET MSH12 = ""
S D0=INDA S X=""
S @INV@("MSH12")=X K DXS,D0
;SET MSH13 = ""
S D0=INDA S X=""
S @INV@("MSH13")=X K DXS,D0
;SET MSH14 = $E(INTERNAL(@ACA),1,2)
S D0=INDA S X=$G(INA("ACA")),X=X S X=X,Y(1)=$G(X) S X=1,Y(2)=$G(X) S X=2,X=$E(Y(1),Y(2),X)
S @INV@("MSH14")=X K DXS,D0
;SET MSH15 = $E(INTERNAL(@APA),1,2)
S D0=INDA S X=$G(INA("APA")),X=X S X=X,Y(1)=$G(X) S X=1,Y(2)=$G(X) S X=2,X=$E(Y(1),Y(2),X)
S @INV@("MSH15")=X K DXS,D0
;SET MSH16 = INSGX\^INTHL7FT(1,3)\\3\"USA"
S D0=INDA S X="USA"
S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,3)
S @INV@("MSH16")=X K DXS,D0
D:'INVS MC^INHS
K LINE S LINE="",CP=0 S L1="MSH" S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,1,L1,.CP) S L1=$G(@INV@("MSH1")) S:$TR(L1,$G(SUBDELIM))="" L1=""
D SETPIECE^INHU(.LINE,DELIM,2,L1,.CP) S L1=$G(@INV@("MSH2")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,3,L1,.CP) S L1=$G(@INV@("MSH3"))
S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,4,L1,.CP) S L1=$G(@INV@("MSH4")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,5,L1,.CP)
S L1=$G(@INV@("MSH5")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,6,L1,.CP) S L1=$G(@INV@("MSH6")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,7,L1,.CP)
S L1=$G(@INV@("MSH7")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,8,L1,.CP) S L1=$G(@INV@("MSH8")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,9,L1,.CP)
S L1=$G(@INV@("MSH9")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,10,L1,.CP) S L1=$G(@INV@("MSH10")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,11,L1,.CP)
S D0=INDA S X=@INV@("MSH11"),Y(1)=$G(X) S X=1,Y(2)=$G(X) S X=10,X=$E(Y(1),Y(2),X) S L1=X
S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,12,L1,.CP) S L1=$G(@INV@("MSH12")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,13,L1,.CP)
S L1=$G(@INV@("MSH13")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,14,L1,.CP) S L1=$G(@INV@("MSH14")) S:$TR(L1,$G(SUBDELIM))="" L1=""
D SETPIECE^INHU(.LINE,DELIM,15,L1,.CP) S L1=$G(@INV@("MSH15")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,16,L1,.CP) S L1=$G(@INV@("MSH16"))
S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,17,L1,.CP)
S LCT=LCT+1,^UTILITY("INH",$J,LCT)=LINE I $D(LINE)>9 M ^UTILITY("INH",$J,LCT)=LINE
SET INSETID=0
S INDA0=INDA,INI(1)=0 F S INI(1)=$O(INDA(2,INI(1))) Q:'INI(1) S INDA=$S(INDA(2,INI(1)):INDA(2,INI(1)),1:INI(1)) D
.Q:'$D(^DPT(INDA,0))
.D PID^BYIMSEGS
.;SET PID1 = INSGX\^INTHL7FT(11,3)\\4\"PID"
.S D0=INDA S X="PID"
.S X1="^INTHL7FT(11,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,4)
.S @INV@("PID1")=X K DXS,D0
.;SET PID3 = INSGX\^INTHL7FT(1,3)\\250\@PID3
.S D0=INDA S X=$G(INA("PID3",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,250)
.S @INV@("PID3")=X K DXS,D0
.;SET PID5 = INSGX\^INTHL7FT(7,3)\\250\@PID5
.S D0=INDA S X=$G(INA("PID5",INI(1)))
.S X1="^INTHL7FT(7,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,250)
.S @INV@("PID5")=X K DXS,D0
.;SET PID6 = INSGX\^INTHL7FT(1,3)\\99\@PID6
.S D0=INDA S X=$G(INA("PID6",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,99)
.S @INV@("PID6")=X K DXS,D0
.;SET PID7 = INSGX\^INTHL7FT(1,3)\\8\@PID7
.S D0=INDA S X=$G(INA("PID7",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,8)
.S @INV@("PID7")=X K DXS,D0
.;SET PID8 = $E(INTERNAL(SEX),1,1)
.S D0=INDA S Y(1)=$S($D(^DPT(D0,0)):^(0),1:"") S X=$P(Y(1),U,2),X=X S X=X,Y(2)=$G(X) S X=1,Y(3)=$G(X) S X=1,X=$E(Y(2),Y(3),X)
.S @INV@("PID8")=X K DXS,D0
.;SET PID10 = INSGX\^INTHL7FT(1,3)\\99\@PID10
.S D0=INDA S X=$G(INA("PID10",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,99)
.S @INV@("PID10")=X K DXS,D0
.;SET PID11 = INSGX\^INTHL7FT(1,3)\\250\@PID11
.S D0=INDA S X=$G(INA("PID11",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,250)
.S @INV@("PID11")=X K DXS,D0
.;SET PID12 = $E(INTERNAL(#.117),1,4)
.S D0=INDA S Y(1)=$S($D(^DPT(D0,.11)):^(.11),1:"") S X=$P(Y(1),U,7),X=X S X=X,Y(2)=$G(X) S X=1,Y(3)=$G(X) S X=4,X=$E(Y(2),Y(3),X)
.S @INV@("PID12")=X K DXS,D0
.;SET PID13 = INSGX\^INTHL7FT(1,3)\\250\@PID13
.S D0=INDA S X=$G(INA("PID13",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,250)
.S @INV@("PID13")=X K DXS,D0
.;SET PID14 = INSGX\^INTHL7FT(1,3)\\250\@PID14
.S D0=INDA S X=$G(INA("PID14",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,250)
.S @INV@("PID14")=X K DXS,D0
.;SET PID17 = INSGX\^INTHL7FT(17,3)\\250\#.08
.S D0=INDA S Y(1)=$S($D(^DPT(D0,0)):^(0),1:"") S X=$P($G(^DIC(13,+$P(Y(1),U,8),0)),U)
.S X1="^INTHL7FT(17,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,250)
.S @INV@("PID17")=X K DXS,D0
.;SET PID19 = INSGX\^INTHL7FT(1,3)\\80\@PID19
.S D0=INDA S X=$G(INA("PID19",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,80)
.S @INV@("PID19")=X K DXS,D0
.;SET PID22 = INSGX\^INTHL7FT(1,3)\\200\@PID22
.S D0=INDA S X=$G(INA("PID22",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,200)
.S @INV@("PID22")=X K DXS,D0
.;SET PID24 = INSGX\^INTHL7FT(1,3)\\10\@PID24
.S D0=INDA S X=$G(INA("PID24",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,10)
.S @INV@("PID24")=X K DXS,D0
.D:'INVS MC^INHS
.K LINE S LINE="",CP=0 S L1="PID" S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,1,L1,.CP) S L1=$G(@INV@("PID1")) S:$TR(L1,$G(SUBDELIM))="" L1=""
.D SETPIECE^INHU(.LINE,DELIM,2,L1,.CP) S L1=$G(@INV@("PID3")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,4,L1,.CP) S L1=$G(@INV@("PID5"))
.S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,6,L1,.CP) S L1=$G(@INV@("PID6")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,7,L1,.CP)
.S L1=$G(@INV@("PID7")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,8,L1,.CP) S L1=$G(@INV@("PID8")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,9,L1,.CP)
.S L1=$G(@INV@("PID10")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,11,L1,.CP) S L1=$G(@INV@("PID11")) S:$TR(L1,$G(SUBDELIM))="" L1=""
.D SETPIECE^INHU(.LINE,DELIM,12,L1,.CP) S L1=$G(@INV@("PID12")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,13,L1,.CP) S L1=$G(@INV@("PID13"))
.S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,14,L1,.CP) S L1=$G(@INV@("PID14")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,15,L1,.CP)
.S L1=$G(@INV@("PID17")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,18,L1,.CP) S L1=$G(@INV@("PID19")) S:$TR(L1,$G(SUBDELIM))="" L1=""
.D SETPIECE^INHU(.LINE,DELIM,20,L1,.CP) S L1=$G(@INV@("PID22")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,23,L1,.CP) S L1=$G(@INV@("PID24"))
.S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,25,L1,.CP)
.S LCT=LCT+1,^UTILITY("INH",$J,LCT)=LINE I $D(LINE)>9 M ^UTILITY("INH",$J,LCT)=LINE
.Q
S INDA=INDA0 K INDA0
SET INSETID=0
S INDA0=INDA,INI(1)=0 F S INI(1)=$O(INDA(2,INI(1))) Q:'INI(1) S INDA=$S(INDA(2,INI(1)):INDA(2,INI(1)),1:INI(1)) D
.Q:'$D(^DPT(INDA,0))
.D PD1^BYIMSEGS
.;SET PD13 = INSGX\^INTHL7FT(1,3)\\250\@PD13
.S D0=INDA S X=$G(INA("PD13",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,250)
.S @INV@("PD13")=X K DXS,D0
.;SET PD111 = INSGX\^INTHL7FT(1,3)\\50\@PD111
.S D0=INDA S X=$G(INA("PD111",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,50)
.S @INV@("PD111")=X K DXS,D0
.;SET PD112 = INSGX\^INTHL7F(16991,5)\\4\@PD112
.S D0=INDA S X=$G(INA("PD112",INI(1)))
.S X1="^INTHL7F(16991,5)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,4)
.S @INV@("PD112")=X K DXS,D0
.;SET PD113 = INSGX\^INTHL7FT(1,3)\\8\@PD113
.S D0=INDA S X=$G(INA("PD113",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,8)
.S @INV@("PD113")=X K DXS,D0
.;SET PD116 = INSGX\^INTHL7FT(1,3)\\1\@PD116
.S D0=INDA S X=$G(INA("PD116",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,1)
.S @INV@("PD116")=X K DXS,D0
.;SET PD117 = INSGX\^INTHL7FT(1,3)\\50\@PD117
.S D0=INDA S X=$G(INA("PD117",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,50)
.S @INV@("PD117")=X K DXS,D0
.;SET PD118 = INSGX\^INTHL7FT(1,3)\\50\@PD118
.S D0=INDA S X=$G(INA("PD118",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,50)
.S @INV@("PD118")=X K DXS,D0
.D:'INVS MC^INHS
.K LINE S LINE="",CP=0 S L1="PD1" S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,1,L1,.CP) S L1=$G(@INV@("PD13")) S:$TR(L1,$G(SUBDELIM))="" L1=""
.D SETPIECE^INHU(.LINE,DELIM,4,L1,.CP) S L1=$G(@INV@("PD111")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,12,L1,.CP) S L1=$G(@INV@("PD112"))
.S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,13,L1,.CP) S L1=$G(@INV@("PD113")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,14,L1,.CP)
.S L1=$G(@INV@("PD116")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,17,L1,.CP) S L1=$G(@INV@("PD117")) S:$TR(L1,$G(SUBDELIM))="" L1=""
.D SETPIECE^INHU(.LINE,DELIM,18,L1,.CP) S L1=$G(@INV@("PD118")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,19,L1,.CP)
.S LCT=LCT+1,^UTILITY("INH",$J,LCT)=LINE I $D(LINE)>9 M ^UTILITY("INH",$J,LCT)=LINE
.Q
S INDA=INDA0 K INDA0
SET INSETID=0
S INDA0=INDA,INI(1)=0 F S INI(1)=$O(INDA(2,INI(1))) Q:'INI(1) S INDA=$S(INDA(2,INI(1)):INDA(2,INI(1)),1:INI(1)) D
.Q:'$D(^DPT(INDA,0))
.D NK1^BYIMSEGS
.;SET NK11 = INSGX\^INTHL7FT(1,3)\\100\@NK11
.S D0=INDA S X=$G(INA("NK11",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,100)
.S @INV@("NK11")=X K DXS,D0
.;SET NK12 = INSGX\^INTHL7FT(1,3)\\250\@NK12
.S D0=INDA S X=$G(INA("NK12",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,250)
.S @INV@("NK12")=X K DXS,D0
.;SET NK13 = INSGX\^INTHL7FT(1,3)\\250\@NK13
.S D0=INDA S X=$G(INA("NK13",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,250)
.S @INV@("NK13")=X K DXS,D0
.;SET NK14 = INSGX\^INTHL7FT(1,3)\\250\@NK14
.S D0=INDA S X=$G(INA("NK14",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,250)
.S @INV@("NK14")=X K DXS,D0
.;SET NK15 = INSGX\^INTHL7FT(1,3)\\50\@NK15
.S D0=INDA S X=$G(INA("NK15",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,50)
.S @INV@("NK15")=X K DXS,D0
.;SET NK17 = INSGX\^INTHL7FT(1,3)\\99\@NK17
.S D0=INDA S X=$G(INA("NK17",INI(1)))
.S X1="^INTHL7FT(1,3)" X:$L($G(@X1)) $G(@X1) S X=$E(X,1,99)
.S @INV@("NK17")=X K DXS,D0
.D:'INVS MC^INHS
.K LINE S LINE="",CP=0 S L1="NK1" S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,1,L1,.CP) S L1=$G(@INV@("NK11")) S:$TR(L1,$G(SUBDELIM))="" L1=""
.D SETPIECE^INHU(.LINE,DELIM,2,L1,.CP) S L1=$G(@INV@("NK12")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,3,L1,.CP) S L1=$G(@INV@("NK13"))
.S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,4,L1,.CP) S L1=$G(@INV@("NK14")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,5,L1,.CP)
.S L1=$G(@INV@("NK15")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,6,L1,.CP) S L1=$G(@INV@("NK17")) S:$TR(L1,$G(SUBDELIM))="" L1="" D SETPIECE^INHU(.LINE,DELIM,8,L1,.CP)
.S LCT=LCT+1,^UTILITY("INH",$J,LCT)=LINE I $D(LINE)>9 M ^UTILITY("INH",$J,LCT)=LINE
.Q
S INDA=INDA0 K INDA0
SET INSETID=0
I '$D(INDA(9000010)) S INI=0 F S INI=$O(^AUPNVSIT("AC",INDA,INI)) Q:'INI S INDA(9000010,INI)=""
9 G EN^IS00011A
IS00011(INTT,INDA,INA,INDEST,INQUE,INORDUZ,INORDIV) ;Compiled from script 'Generated: HL IHS IZV04 OUT-O' on AUG 15, 2018
+1 ;Part 1
+2 ;Copyright 2018 SAIC
EN SET X="ERROR^IS00011"
SET @^%ZOSF("TRAP")
+1 GOTO START
ERROR ;
+1 SET X=""
SET @^%ZOSF("TRAP")
XECUTE ^INTHOS(1,3)
DO ERROR^INHS($$GETERR^%ZTOS)
+2 QUIT 2
START ;Initialize variables
+1 KILL ^UTILITY("INH",$JOB)
SET (MESSID,INA("MESSID"))=$$MESSID^INHD
+2 KILL INUIF6
MERGE INUIF6=INDA
+3 KILL INREQERR,INHERR,INHERCNT,INV
DO SETDT^UTDT
SET DUZ(0)="@"
SET DUZ("AG")="^1"
SET DTIME=1
SET (LCT,GERR)=0
SET INMODE="O"
SET INVS=$PIECE(^INRHSITE(1,0),U,12)
SET INV=$SELECT(INVS<2:"INV",1:"^UTILITY(""INV"",$J)")
SET (MULT,INSTERR)=0
+4 SET INHLDUZ=$ORDER(^VA(200,"B","GIS,USER",0))
SET DUZ=$SELECT($GET(INHLDUZ):INHLDUZ,1:.5)
+5 SET BHLMIEN="12426"
+6 IF $GET(^INTHL7M(BHLMIEN,4,1,0))]""
XECUTE $GET(^INTHL7M(BHLMIEN,4,1,0))
+7 KILL INSETID
+8 SET INSMIN=$SELECT($PIECE($GET(^INRHSITE(1,0)),U,14):$PIECE(^(0),U,14),1:2500)
+9 SET (DELIM,INDELIM)=$$FIELD^INHUT()
SET (SUBDELIM,INSUBDEL)=$$COMP^INHUT()
SET INSUBCOM=$$SUBCOMP^INHUT()
+10 SET INDELIMS=$$FIELD^INHUT_$$COMP^INHUT_$$REP^INHUT_$$ESC^INHUT_$$SUBCOMP^INHUT
+11 ;Entering MUMPS section.
+12 DO VST^BHLV
DO PATH^BYIMIMM
+13 ;Entering DATA section.
+14 SET DELIM="|"
+15 SET SUBDELIM="^"
+16 SET INSETID=0
+17 DO MSH^BYIMSEGS
+18 ;SET MSH1 = INSGX\^INTHL7FT(1,3)\\4\@ENC
+19 SET D0=INDA
SET X=$GET(INA("ENC"))
+20 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,4)
+21 SET @INV@("MSH1")=X
KILL DXS,D0
+22 ;SET MSH2 = INSGX\^INTHL7FT(1,3)\\180\@MSH3
+23 SET D0=INDA
SET X=$GET(INA("MSH3"))
+24 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,180)
+25 SET @INV@("MSH2")=X
KILL DXS,D0
+26 ;SET MSH3 = INSGX\^INTHL7FT(1,3)\\180\@MSH4
+27 SET D0=INDA
SET X=$GET(INA("MSH4"))
+28 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,180)
+29 SET @INV@("MSH3")=X
KILL DXS,D0
+30 ;SET MSH4 = INSGX\^INTHL7FT(1,3)\\180\@MSH5
+31 SET D0=INDA
SET X=$GET(INA("MSH5"))
+32 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,180)
+33 SET @INV@("MSH4")=X
KILL DXS,D0
+34 ;SET MSH5 = INSGX\^INTHL7FT(1,3)\\180\@MSH6
+35 SET D0=INDA
SET X=$GET(INA("MSH6"))
+36 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,180)
+37 SET @INV@("MSH5")=X
KILL DXS,D0
+38 ;SET MSH6 = INSGX\^INTHL7FT(1,3)\\20\@MSH7
+39 SET D0=INDA
SET X=$GET(INA("MSH7"))
+40 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,20)
+41 SET @INV@("MSH6")=X
KILL DXS,D0
+42 ;SET MSH7 = INSGX\^INTHL7FT(1,3)\\20\@MSH8
+43 SET D0=INDA
SET X=$GET(INA("MSH8"))
+44 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,20)
+45 SET @INV@("MSH7")=X
KILL DXS,D0
+46 ;SET MSH8 = INSGX\^INTHL7FT(1,3)\\50\@MSH9
+47 SET D0=INDA
SET X=$GET(INA("MSH9"))
+48 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,50)
+49 SET @INV@("MSH8")=X
KILL DXS,D0
+50 ;SET MSH9 = INSGX\^INTHL7FT(1,3)\\20\@MSH10
+51 SET D0=INDA
SET X=$GET(INA("MSH10"))
+52 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,20)
+53 SET @INV@("MSH9")=X
KILL DXS,D0
+54 ;SET MSH10 = $E(INTERNAL(@PRID),1,1)
+55 SET D0=INDA
SET X=$GET(INA("PRID"))
SET X=X
SET X=X
SET Y(1)=$GET(X)
SET X=1
SET Y(2)=$GET(X)
SET X=1
SET X=$EXTRACT(Y(1),Y(2),X)
+56 SET @INV@("MSH10")=X
KILL DXS,D0
+57 ;SET MSH11 = @MSH12
+58 SET D0=INDA
SET X=$GET(INA("MSH12"))
+59 SET @INV@("MSH11")=X
KILL DXS,D0
+60 ;SET MSH12 = ""
+61 SET D0=INDA
SET X=""
+62 SET @INV@("MSH12")=X
KILL DXS,D0
+63 ;SET MSH13 = ""
+64 SET D0=INDA
SET X=""
+65 SET @INV@("MSH13")=X
KILL DXS,D0
+66 ;SET MSH14 = $E(INTERNAL(@ACA),1,2)
+67 SET D0=INDA
SET X=$GET(INA("ACA"))
SET X=X
SET X=X
SET Y(1)=$GET(X)
SET X=1
SET Y(2)=$GET(X)
SET X=2
SET X=$EXTRACT(Y(1),Y(2),X)
+68 SET @INV@("MSH14")=X
KILL DXS,D0
+69 ;SET MSH15 = $E(INTERNAL(@APA),1,2)
+70 SET D0=INDA
SET X=$GET(INA("APA"))
SET X=X
SET X=X
SET Y(1)=$GET(X)
SET X=1
SET Y(2)=$GET(X)
SET X=2
SET X=$EXTRACT(Y(1),Y(2),X)
+71 SET @INV@("MSH15")=X
KILL DXS,D0
+72 ;SET MSH16 = INSGX\^INTHL7FT(1,3)\\3\"USA"
+73 SET D0=INDA
SET X="USA"
+74 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,3)
+75 SET @INV@("MSH16")=X
KILL DXS,D0
+76 IF 'INVS
DO MC^INHS
+77 KILL LINE
SET LINE=""
SET CP=0
SET L1="MSH"
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,1,L1,.CP)
SET L1=$GET(@INV@("MSH1"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
+78 DO SETPIECE^INHU(.LINE,DELIM,2,L1,.CP)
SET L1=$GET(@INV@("MSH2"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,3,L1,.CP)
SET L1=$GET(@INV@("MSH3"))
+79 IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,4,L1,.CP)
SET L1=$GET(@INV@("MSH4"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,5,L1,.CP)
+80 SET L1=$GET(@INV@("MSH5"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,6,L1,.CP)
SET L1=$GET(@INV@("MSH6"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,7,L1,.CP)
+81 SET L1=$GET(@INV@("MSH7"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,8,L1,.CP)
SET L1=$GET(@INV@("MSH8"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,9,L1,.CP)
+82 SET L1=$GET(@INV@("MSH9"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,10,L1,.CP)
SET L1=$GET(@INV@("MSH10"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,11,L1,.CP)
+83 SET D0=INDA
SET X=@INV@("MSH11")
SET Y(1)=$GET(X)
SET X=1
SET Y(2)=$GET(X)
SET X=10
SET X=$EXTRACT(Y(1),Y(2),X)
SET L1=X
+84 IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,12,L1,.CP)
SET L1=$GET(@INV@("MSH12"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,13,L1,.CP)
+85 SET L1=$GET(@INV@("MSH13"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,14,L1,.CP)
SET L1=$GET(@INV@("MSH14"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
+86 DO SETPIECE^INHU(.LINE,DELIM,15,L1,.CP)
SET L1=$GET(@INV@("MSH15"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,16,L1,.CP)
SET L1=$GET(@INV@("MSH16"))
+87 IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,17,L1,.CP)
+88 SET LCT=LCT+1
SET ^UTILITY("INH",$JOB,LCT)=LINE
IF $DATA(LINE)>9
MERGE ^UTILITY("INH",$JOB,LCT)=LINE
+89 SET INSETID=0
+90 SET INDA0=INDA
SET INI(1)=0
FOR
SET INI(1)=$ORDER(INDA(2,INI(1)))
IF 'INI(1)
QUIT
SET INDA=$SELECT(INDA(2,INI(1)):INDA(2,INI(1)),1:INI(1))
Begin DoDot:1
+91 IF '$DATA(^DPT(INDA,0))
QUIT
+92 DO PID^BYIMSEGS
+93 ;SET PID1 = INSGX\^INTHL7FT(11,3)\\4\"PID"
+94 SET D0=INDA
SET X="PID"
+95 SET X1="^INTHL7FT(11,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,4)
+96 SET @INV@("PID1")=X
KILL DXS,D0
+97 ;SET PID3 = INSGX\^INTHL7FT(1,3)\\250\@PID3
+98 SET D0=INDA
SET X=$GET(INA("PID3",INI(1)))
+99 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,250)
+100 SET @INV@("PID3")=X
KILL DXS,D0
+101 ;SET PID5 = INSGX\^INTHL7FT(7,3)\\250\@PID5
+102 SET D0=INDA
SET X=$GET(INA("PID5",INI(1)))
+103 SET X1="^INTHL7FT(7,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,250)
+104 SET @INV@("PID5")=X
KILL DXS,D0
+105 ;SET PID6 = INSGX\^INTHL7FT(1,3)\\99\@PID6
+106 SET D0=INDA
SET X=$GET(INA("PID6",INI(1)))
+107 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,99)
+108 SET @INV@("PID6")=X
KILL DXS,D0
+109 ;SET PID7 = INSGX\^INTHL7FT(1,3)\\8\@PID7
+110 SET D0=INDA
SET X=$GET(INA("PID7",INI(1)))
+111 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,8)
+112 SET @INV@("PID7")=X
KILL DXS,D0
+113 ;SET PID8 = $E(INTERNAL(SEX),1,1)
+114 SET D0=INDA
SET Y(1)=$SELECT($DATA(^DPT(D0,0)):^(0),1:"")
SET X=$PIECE(Y(1),U,2)
SET X=X
SET X=X
SET Y(2)=$GET(X)
SET X=1
SET Y(3)=$GET(X)
SET X=1
SET X=$EXTRACT(Y(2),Y(3),X)
+115 SET @INV@("PID8")=X
KILL DXS,D0
+116 ;SET PID10 = INSGX\^INTHL7FT(1,3)\\99\@PID10
+117 SET D0=INDA
SET X=$GET(INA("PID10",INI(1)))
+118 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,99)
+119 SET @INV@("PID10")=X
KILL DXS,D0
+120 ;SET PID11 = INSGX\^INTHL7FT(1,3)\\250\@PID11
+121 SET D0=INDA
SET X=$GET(INA("PID11",INI(1)))
+122 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,250)
+123 SET @INV@("PID11")=X
KILL DXS,D0
+124 ;SET PID12 = $E(INTERNAL(#.117),1,4)
+125 SET D0=INDA
SET Y(1)=$SELECT($DATA(^DPT(D0,.11)):^(.11),1:"")
SET X=$PIECE(Y(1),U,7)
SET X=X
SET X=X
SET Y(2)=$GET(X)
SET X=1
SET Y(3)=$GET(X)
SET X=4
SET X=$EXTRACT(Y(2),Y(3),X)
+126 SET @INV@("PID12")=X
KILL DXS,D0
+127 ;SET PID13 = INSGX\^INTHL7FT(1,3)\\250\@PID13
+128 SET D0=INDA
SET X=$GET(INA("PID13",INI(1)))
+129 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,250)
+130 SET @INV@("PID13")=X
KILL DXS,D0
+131 ;SET PID14 = INSGX\^INTHL7FT(1,3)\\250\@PID14
+132 SET D0=INDA
SET X=$GET(INA("PID14",INI(1)))
+133 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,250)
+134 SET @INV@("PID14")=X
KILL DXS,D0
+135 ;SET PID17 = INSGX\^INTHL7FT(17,3)\\250\#.08
+136 SET D0=INDA
SET Y(1)=$SELECT($DATA(^DPT(D0,0)):^(0),1:"")
SET X=$PIECE($GET(^DIC(13,+$PIECE(Y(1),U,8),0)),U)
+137 SET X1="^INTHL7FT(17,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,250)
+138 SET @INV@("PID17")=X
KILL DXS,D0
+139 ;SET PID19 = INSGX\^INTHL7FT(1,3)\\80\@PID19
+140 SET D0=INDA
SET X=$GET(INA("PID19",INI(1)))
+141 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,80)
+142 SET @INV@("PID19")=X
KILL DXS,D0
+143 ;SET PID22 = INSGX\^INTHL7FT(1,3)\\200\@PID22
+144 SET D0=INDA
SET X=$GET(INA("PID22",INI(1)))
+145 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,200)
+146 SET @INV@("PID22")=X
KILL DXS,D0
+147 ;SET PID24 = INSGX\^INTHL7FT(1,3)\\10\@PID24
+148 SET D0=INDA
SET X=$GET(INA("PID24",INI(1)))
+149 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,10)
+150 SET @INV@("PID24")=X
KILL DXS,D0
+151 IF 'INVS
DO MC^INHS
+152 KILL LINE
SET LINE=""
SET CP=0
SET L1="PID"
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,1,L1,.CP)
SET L1=$GET(@INV@("PID1"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
+153 DO SETPIECE^INHU(.LINE,DELIM,2,L1,.CP)
SET L1=$GET(@INV@("PID3"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,4,L1,.CP)
SET L1=$GET(@INV@("PID5"))
+154 IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,6,L1,.CP)
SET L1=$GET(@INV@("PID6"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,7,L1,.CP)
+155 SET L1=$GET(@INV@("PID7"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,8,L1,.CP)
SET L1=$GET(@INV@("PID8"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,9,L1,.CP)
+156 SET L1=$GET(@INV@("PID10"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,11,L1,.CP)
SET L1=$GET(@INV@("PID11"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
+157 DO SETPIECE^INHU(.LINE,DELIM,12,L1,.CP)
SET L1=$GET(@INV@("PID12"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,13,L1,.CP)
SET L1=$GET(@INV@("PID13"))
+158 IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,14,L1,.CP)
SET L1=$GET(@INV@("PID14"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,15,L1,.CP)
+159 SET L1=$GET(@INV@("PID17"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,18,L1,.CP)
SET L1=$GET(@INV@("PID19"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
+160 DO SETPIECE^INHU(.LINE,DELIM,20,L1,.CP)
SET L1=$GET(@INV@("PID22"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,23,L1,.CP)
SET L1=$GET(@INV@("PID24"))
+161 IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,25,L1,.CP)
+162 SET LCT=LCT+1
SET ^UTILITY("INH",$JOB,LCT)=LINE
IF $DATA(LINE)>9
MERGE ^UTILITY("INH",$JOB,LCT)=LINE
+163 QUIT
End DoDot:1
+164 SET INDA=INDA0
KILL INDA0
+165 SET INSETID=0
+166 SET INDA0=INDA
SET INI(1)=0
FOR
SET INI(1)=$ORDER(INDA(2,INI(1)))
IF 'INI(1)
QUIT
SET INDA=$SELECT(INDA(2,INI(1)):INDA(2,INI(1)),1:INI(1))
Begin DoDot:1
+167 IF '$DATA(^DPT(INDA,0))
QUIT
+168 DO PD1^BYIMSEGS
+169 ;SET PD13 = INSGX\^INTHL7FT(1,3)\\250\@PD13
+170 SET D0=INDA
SET X=$GET(INA("PD13",INI(1)))
+171 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,250)
+172 SET @INV@("PD13")=X
KILL DXS,D0
+173 ;SET PD111 = INSGX\^INTHL7FT(1,3)\\50\@PD111
+174 SET D0=INDA
SET X=$GET(INA("PD111",INI(1)))
+175 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,50)
+176 SET @INV@("PD111")=X
KILL DXS,D0
+177 ;SET PD112 = INSGX\^INTHL7F(16991,5)\\4\@PD112
+178 SET D0=INDA
SET X=$GET(INA("PD112",INI(1)))
+179 SET X1="^INTHL7F(16991,5)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,4)
+180 SET @INV@("PD112")=X
KILL DXS,D0
+181 ;SET PD113 = INSGX\^INTHL7FT(1,3)\\8\@PD113
+182 SET D0=INDA
SET X=$GET(INA("PD113",INI(1)))
+183 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,8)
+184 SET @INV@("PD113")=X
KILL DXS,D0
+185 ;SET PD116 = INSGX\^INTHL7FT(1,3)\\1\@PD116
+186 SET D0=INDA
SET X=$GET(INA("PD116",INI(1)))
+187 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,1)
+188 SET @INV@("PD116")=X
KILL DXS,D0
+189 ;SET PD117 = INSGX\^INTHL7FT(1,3)\\50\@PD117
+190 SET D0=INDA
SET X=$GET(INA("PD117",INI(1)))
+191 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,50)
+192 SET @INV@("PD117")=X
KILL DXS,D0
+193 ;SET PD118 = INSGX\^INTHL7FT(1,3)\\50\@PD118
+194 SET D0=INDA
SET X=$GET(INA("PD118",INI(1)))
+195 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,50)
+196 SET @INV@("PD118")=X
KILL DXS,D0
+197 IF 'INVS
DO MC^INHS
+198 KILL LINE
SET LINE=""
SET CP=0
SET L1="PD1"
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,1,L1,.CP)
SET L1=$GET(@INV@("PD13"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
+199 DO SETPIECE^INHU(.LINE,DELIM,4,L1,.CP)
SET L1=$GET(@INV@("PD111"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,12,L1,.CP)
SET L1=$GET(@INV@("PD112"))
+200 IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,13,L1,.CP)
SET L1=$GET(@INV@("PD113"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,14,L1,.CP)
+201 SET L1=$GET(@INV@("PD116"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,17,L1,.CP)
SET L1=$GET(@INV@("PD117"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
+202 DO SETPIECE^INHU(.LINE,DELIM,18,L1,.CP)
SET L1=$GET(@INV@("PD118"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,19,L1,.CP)
+203 SET LCT=LCT+1
SET ^UTILITY("INH",$JOB,LCT)=LINE
IF $DATA(LINE)>9
MERGE ^UTILITY("INH",$JOB,LCT)=LINE
+204 QUIT
End DoDot:1
+205 SET INDA=INDA0
KILL INDA0
+206 SET INSETID=0
+207 SET INDA0=INDA
SET INI(1)=0
FOR
SET INI(1)=$ORDER(INDA(2,INI(1)))
IF 'INI(1)
QUIT
SET INDA=$SELECT(INDA(2,INI(1)):INDA(2,INI(1)),1:INI(1))
Begin DoDot:1
+208 IF '$DATA(^DPT(INDA,0))
QUIT
+209 DO NK1^BYIMSEGS
+210 ;SET NK11 = INSGX\^INTHL7FT(1,3)\\100\@NK11
+211 SET D0=INDA
SET X=$GET(INA("NK11",INI(1)))
+212 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,100)
+213 SET @INV@("NK11")=X
KILL DXS,D0
+214 ;SET NK12 = INSGX\^INTHL7FT(1,3)\\250\@NK12
+215 SET D0=INDA
SET X=$GET(INA("NK12",INI(1)))
+216 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,250)
+217 SET @INV@("NK12")=X
KILL DXS,D0
+218 ;SET NK13 = INSGX\^INTHL7FT(1,3)\\250\@NK13
+219 SET D0=INDA
SET X=$GET(INA("NK13",INI(1)))
+220 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,250)
+221 SET @INV@("NK13")=X
KILL DXS,D0
+222 ;SET NK14 = INSGX\^INTHL7FT(1,3)\\250\@NK14
+223 SET D0=INDA
SET X=$GET(INA("NK14",INI(1)))
+224 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,250)
+225 SET @INV@("NK14")=X
KILL DXS,D0
+226 ;SET NK15 = INSGX\^INTHL7FT(1,3)\\50\@NK15
+227 SET D0=INDA
SET X=$GET(INA("NK15",INI(1)))
+228 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,50)
+229 SET @INV@("NK15")=X
KILL DXS,D0
+230 ;SET NK17 = INSGX\^INTHL7FT(1,3)\\99\@NK17
+231 SET D0=INDA
SET X=$GET(INA("NK17",INI(1)))
+232 SET X1="^INTHL7FT(1,3)"
IF $LENGTH($GET(@X1))
XECUTE $GET(@X1)
SET X=$EXTRACT(X,1,99)
+233 SET @INV@("NK17")=X
KILL DXS,D0
+234 IF 'INVS
DO MC^INHS
+235 KILL LINE
SET LINE=""
SET CP=0
SET L1="NK1"
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,1,L1,.CP)
SET L1=$GET(@INV@("NK11"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
+236 DO SETPIECE^INHU(.LINE,DELIM,2,L1,.CP)
SET L1=$GET(@INV@("NK12"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,3,L1,.CP)
SET L1=$GET(@INV@("NK13"))
+237 IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,4,L1,.CP)
SET L1=$GET(@INV@("NK14"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,5,L1,.CP)
+238 SET L1=$GET(@INV@("NK15"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,6,L1,.CP)
SET L1=$GET(@INV@("NK17"))
IF $TRANSLATE(L1,$GET(SUBDELIM))=""
SET L1=""
DO SETPIECE^INHU(.LINE,DELIM,8,L1,.CP)
+239 SET LCT=LCT+1
SET ^UTILITY("INH",$JOB,LCT)=LINE
IF $DATA(LINE)>9
MERGE ^UTILITY("INH",$JOB,LCT)=LINE
+240 QUIT
End DoDot:1
+241 SET INDA=INDA0
KILL INDA0
+242 SET INSETID=0
+243 IF '$DATA(INDA(9000010))
SET INI=0
FOR
SET INI=$ORDER(^AUPNVSIT("AC",INDA,INI))
IF 'INI
QUIT
SET INDA(9000010,INI)=""
9 GOTO EN^IS00011A