- DGMTXX22 ; COMPILED XREF FOR FILE #408.22 ; 01/05/16
- ;
- S DIKZK=1
- S DIKZ(0)=$G(^DGMT(408.22,DA,0))
- S X=$P($G(DIKZ(0)),U,1)
- I X'="" S ^DGMT(408.22,"B",$E(X,1,30),DA)=""
- S X=$P($G(DIKZ(0)),U,1)
- I X'="" S:$P(^DGMT(408.22,DA,0),U,2)&($P($G(^DGMT(408.22,DA,"MT")),U)) ^DGMT(408.22,"AMT",$P(^DGMT(408.22,DA,"MT"),U),X,$P(^DGMT(408.22,DA,0),U,2),DA)=""
- S X=$P($G(DIKZ(0)),U,2)
- I X'="" S ^DGMT(408.22,"AIND",$E(X,1,30),DA)=""
- S X=$P($G(DIKZ(0)),U,2)
- I X'="" S:$P($G(^DGMT(408.22,DA,"MT")),U) ^DGMT(408.22,"AMT",$P(^DGMT(408.22,DA,"MT"),U),+$P(^DGMT(408.22,DA,0),U),X,DA)=""
- S X=$P($G(DIKZ(0)),U,5)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(408.22,.05,1,1,1.3) I X S X=DIV S Y(1)=$S($D(^DGMT(408.22,D0,0)):^(0),1:"") S X=$P(Y(1),U,6),X=X S DIU=X K Y S X="" X ^DD(408.22,.05,1,1,1.4)
- S X=$P($G(DIKZ(0)),U,5)
- I X'="" I $D(^DGMT(408.22,DA,0)),'$P(^(0),U,5) D FUN^DGMTDD2:'$P(^(0),U,8),SP^DGMTDD2
- S X=$P($G(DIKZ(0)),U,5)
- I X'="" D E40822^DGRTRIG(DA)
- S DIKZ(0)=$G(^DGMT(408.22,DA,0))
- S X=$P($G(DIKZ(0)),U,6)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(408.22,.06,1,1,1.3) I X S X=DIV S Y(1)=$S($D(^DGMT(408.22,D0,0)):^(0),1:"") S X=$P(Y(1),U,7),X=X S DIU=X K Y S X="" X ^DD(408.22,.06,1,1,1.4)
- S X=$P($G(DIKZ(0)),U,6)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(408.22,.06,1,2,1.3) I X S X=DIV S Y(1)=$S($D(^DGMT(408.22,D0,0)):^(0),1:"") S X=$P(Y(1),U,10),X=X S DIU=X K Y S X="" X ^DD(408.22,.06,1,2,1.4)
- S X=$P($G(DIKZ(0)),U,6)
- I X'="" D E40822^DGRTRIG(DA)
- S DIKZ(0)=$G(^DGMT(408.22,DA,0))
- S X=$P($G(DIKZ(0)),U,7)
- I X'="" I $D(^DGMT(408.22,DA,0)),'$P(^(0),U,6),$P(^(0),U,7)<600 D SP^DGMTDD2
- S X=$P($G(DIKZ(0)),U,7)
- I X'="" D E40822^DGRTRIG(DA)
- S X=$P($G(DIKZ(0)),U,8)
- I X'="" I $D(^DGMT(408.22,DA,0)),$P(^(0),U,8)=0,'$P(^(0),U,5) D FUN^DGMTDD2
- S X=$P($G(DIKZ(0)),U,8)
- I X'="" D E40822^DGRTRIG(DA)
- S X=$P($G(DIKZ(0)),U,9)
- I X'="" D E40822^DGRTRIG(DA)
- S X=$P($G(DIKZ(0)),U,10)
- I X'="" D E40822^DGRTRIG(DA)
- S X=$P($G(DIKZ(0)),U,11)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(408.22,.11,1,1,1.3) I X S X=DIV S Y(1)=$S($D(^DGMT(408.22,D0,0)):^(0),1:"") S X=$P(Y(1),U,12),X=X S DIU=X K Y S X="" S DIH=$G(^DGMT(408.22,DIV(0),0)),DIV=X S $P(^(0),U,12)=DIV,DIH=408.22,DIG=.12 D ^DICR
- S X=$P($G(DIKZ(0)),U,11)
- I X'="" I $D(^DGMT(408.22,DA,0)),$P(^(0),U,11)=0 D INC^DGMTDD2
- S X=$P($G(DIKZ(0)),U,11)
- I X'="" D E40822^DGRTRIG(DA)
- S DIKZ(0)=$G(^DGMT(408.22,DA,0))
- S X=$P($G(DIKZ(0)),U,12)
- I X'="" I $D(^DGMT(408.22,DA,0)),$P(^(0),U,12)=0,$P(^(0),U,11) D INC^DGMTDD2
- S X=$P($G(DIKZ(0)),U,12)
- I X'="" D E40822^DGRTRIG(DA)
- S X=$P($G(DIKZ(0)),U,13)
- I X'="" D E40822^DGRTRIG(DA)
- S X=$P($G(DIKZ(0)),U,14)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(408.22,.14,1,1,1.3) I X S X=DIV S Y(1)=$S($D(^DGMT(408.22,D0,0)):^(0),1:"") S X=$P(Y(1),U,15),X=X S DIU=X K Y S X="" S DIH=$G(^DGMT(408.22,DIV(0),0)),DIV=X S $P(^(0),U,15)=DIV,DIH=408.22,DIG=.15 D ^DICR
- S X=$P($G(DIKZ(0)),U,14)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(408.22,.14,1,2,1.3) I X S X=DIV S Y(1)=$S($D(^DGMT(408.22,D0,0)):^(0),1:"") S X=$P(Y(1),U,16),X=X S DIU=X K Y S X="" S DIH=$G(^DGMT(408.22,DIV(0),0)),DIV=X S $P(^(0),U,16)=DIV,DIH=408.22,DIG=.16 D ^DICR
- S X=$P($G(DIKZ(0)),U,14)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(408.22,.14,1,3,1.3) I X S X=DIV S Y(1)=$S($D(^DGMT(408.22,D0,0)):^(0),1:"") S X=$P(Y(1),U,17),X=X S DIU=X K Y S X="" S DIH=$G(^DGMT(408.22,DIV(0),0)),DIV=X S $P(^(0),U,17)=DIV,DIH=408.22,DIG=.17 D ^DICR
- S DIKZ(0)=$G(^DGMT(408.22,DA,0))
- S X=$P($G(DIKZ(0)),U,16)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(408.22,.16,1,1,1.3) I X S X=DIV S Y(1)=$S($D(^DGMT(408.22,D0,0)):^(0),1:"") S X=$P(Y(1),U,15),X=X S DIU=X K Y S X=DIV S X="NO" S DIH=$G(^DGMT(408.22,DIV(0),0)),DIV=X S $P(^(0),U,15)=DIV,DIH=408.22,DIG=.15 D ^DICR
- S DIKZ(0)=$G(^DGMT(408.22,DA,0))
- S X=$P($G(DIKZ(0)),U,17)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(408.22,.17,1,1,1.3) I X S X=DIV S Y(1)=$S($D(^DGMT(408.22,D0,0)):^(0),1:"") S X=$P(Y(1),U,16),X=X S DIU=X K Y S X="" S DIH=$G(^DGMT(408.22,DIV(0),0)),DIV=X S $P(^(0),U,16)=DIV,DIH=408.22,DIG=.16 D ^DICR
- S DIKZ(0)=$G(^DGMT(408.22,DA,0))
- S X=$P($G(DIKZ(0)),U,18)
- I X'="" D E40822^DGRTRIG(DA)
- S X=$P($G(DIKZ(0)),U,20)
- I X'="" I $D(^DGMT(408.22,DA,0)),'$P(^(0),U,6),'$P(^(0),U,20) D SP^DGMTDD2
- S X=$P($G(DIKZ(0)),U,20)
- I X'="" D E40822^DGRTRIG(DA)
- S DIKZ("MT")=$G(^DGMT(408.22,DA,"MT"))
- S X=$P($G(DIKZ("MT")),U,1)
- I X'="" S:$P(^DGMT(408.22,DA,0),U,2) ^DGMT(408.22,"AMT",X,+$P(^DGMT(408.22,DA,0),U),+$P(^DGMT(408.22,DA,0),U,2),DA)=""
- END Q
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HDGMTXX22 4528 printed Feb 19, 2025@00:12:02 Page 2
- DGMTXX22 ; COMPILED XREF FOR FILE #408.22 ; 01/05/16
- +1 ;
- +2 SET DIKZK=1
- +3 SET DIKZ(0)=$GET(^DGMT(408.22,DA,0))
- +4 SET X=$PIECE($GET(DIKZ(0)),U,1)
- +5 IF X'=""
- SET ^DGMT(408.22,"B",$EXTRACT(X,1,30),DA)=""
- +6 SET X=$PIECE($GET(DIKZ(0)),U,1)
- +7 IF X'=""
- if $PIECE(^DGMT(408.22,DA,0),U,2)&($PIECE($GET(^DGMT(408.22,DA,"MT")),U))
- SET ^DGMT(408.22,"AMT",$PIECE(^DGMT(408.22,DA,"MT"),U),X,$PIECE(^DGMT(408.22,DA,0),U,2),DA)=""
- +8 SET X=$PIECE($GET(DIKZ(0)),U,2)
- +9 IF X'=""
- SET ^DGMT(408.22,"AIND",$EXTRACT(X,1,30),DA)=""
- +10 SET X=$PIECE($GET(DIKZ(0)),U,2)
- +11 IF X'=""
- if $PIECE($GET(^DGMT(408.22,DA,"MT")),U)
- SET ^DGMT(408.22,"AMT",$PIECE(^DGMT(408.22,DA,"MT"),U),+$PIECE(^DGMT(408.22,DA,0),U),X,DA)=""
- +12 SET X=$PIECE($GET(DIKZ(0)),U,5)
- +13 IF X'=""
- Begin DoDot:1
- +14 NEW DIK,DIV,DIU,DIN
- +15 XECUTE ^DD(408.22,.05,1,1,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGMT(408.22,D0,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,6)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- XECUTE ^DD(408.22,.05,1,1,1.4)
- End DoDot:1
- +16 SET X=$PIECE($GET(DIKZ(0)),U,5)
- +17 IF X'=""
- IF $DATA(^DGMT(408.22,DA,0))
- IF '$PIECE(^(0),U,5)
- if '$PIECE(^(0),U,8)
- DO FUN^DGMTDD2
- DO SP^DGMTDD2
- +18 SET X=$PIECE($GET(DIKZ(0)),U,5)
- +19 IF X'=""
- DO E40822^DGRTRIG(DA)
- +20 SET DIKZ(0)=$GET(^DGMT(408.22,DA,0))
- +21 SET X=$PIECE($GET(DIKZ(0)),U,6)
- +22 IF X'=""
- Begin DoDot:1
- +23 NEW DIK,DIV,DIU,DIN
- +24 XECUTE ^DD(408.22,.06,1,1,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGMT(408.22,D0,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,7)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- XECUTE ^DD(408.22,.06,1,1,1.4)
- End DoDot:1
- +25 SET X=$PIECE($GET(DIKZ(0)),U,6)
- +26 IF X'=""
- Begin DoDot:1
- +27 NEW DIK,DIV,DIU,DIN
- +28 XECUTE ^DD(408.22,.06,1,2,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGMT(408.22,D0,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,10)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- XECUTE ^DD(408.22,.06,1,2,1.4)
- End DoDot:1
- +29 SET X=$PIECE($GET(DIKZ(0)),U,6)
- +30 IF X'=""
- DO E40822^DGRTRIG(DA)
- +31 SET DIKZ(0)=$GET(^DGMT(408.22,DA,0))
- +32 SET X=$PIECE($GET(DIKZ(0)),U,7)
- +33 IF X'=""
- IF $DATA(^DGMT(408.22,DA,0))
- IF '$PIECE(^(0),U,6)
- IF $PIECE(^(0),U,7)<600
- DO SP^DGMTDD2
- +34 SET X=$PIECE($GET(DIKZ(0)),U,7)
- +35 IF X'=""
- DO E40822^DGRTRIG(DA)
- +36 SET X=$PIECE($GET(DIKZ(0)),U,8)
- +37 IF X'=""
- IF $DATA(^DGMT(408.22,DA,0))
- IF $PIECE(^(0),U,8)=0
- IF '$PIECE(^(0),U,5)
- DO FUN^DGMTDD2
- +38 SET X=$PIECE($GET(DIKZ(0)),U,8)
- +39 IF X'=""
- DO E40822^DGRTRIG(DA)
- +40 SET X=$PIECE($GET(DIKZ(0)),U,9)
- +41 IF X'=""
- DO E40822^DGRTRIG(DA)
- +42 SET X=$PIECE($GET(DIKZ(0)),U,10)
- +43 IF X'=""
- DO E40822^DGRTRIG(DA)
- +44 SET X=$PIECE($GET(DIKZ(0)),U,11)
- +45 IF X'=""
- Begin DoDot:1
- +46 NEW DIK,DIV,DIU,DIN
- +47 XECUTE ^DD(408.22,.11,1,1,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGMT(408.22,D0,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,12)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- SET DIH=$GET(^DGMT(408.22,DIV(0),0))
- SET DIV=X
- SET $PIECE(^(0),U,12)=DIV
- SET DIH=408.22
- SET DIG=.12
- DO ^DICR
- End DoDot:1
- +48 SET X=$PIECE($GET(DIKZ(0)),U,11)
- +49 IF X'=""
- IF $DATA(^DGMT(408.22,DA,0))
- IF $PIECE(^(0),U,11)=0
- DO INC^DGMTDD2
- +50 SET X=$PIECE($GET(DIKZ(0)),U,11)
- +51 IF X'=""
- DO E40822^DGRTRIG(DA)
- +52 SET DIKZ(0)=$GET(^DGMT(408.22,DA,0))
- +53 SET X=$PIECE($GET(DIKZ(0)),U,12)
- +54 IF X'=""
- IF $DATA(^DGMT(408.22,DA,0))
- IF $PIECE(^(0),U,12)=0
- IF $PIECE(^(0),U,11)
- DO INC^DGMTDD2
- +55 SET X=$PIECE($GET(DIKZ(0)),U,12)
- +56 IF X'=""
- DO E40822^DGRTRIG(DA)
- +57 SET X=$PIECE($GET(DIKZ(0)),U,13)
- +58 IF X'=""
- DO E40822^DGRTRIG(DA)
- +59 SET X=$PIECE($GET(DIKZ(0)),U,14)
- +60 IF X'=""
- Begin DoDot:1
- +61 NEW DIK,DIV,DIU,DIN
- +62 XECUTE ^DD(408.22,.14,1,1,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGMT(408.22,D0,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,15)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- SET DIH=$GET(^DGMT(408.22,DIV(0),0))
- SET DIV=X
- SET $PIECE(^(0),U,15)=DIV
- SET DIH=408.22
- SET DIG=.15
- DO ^DICR
- End DoDot:1
- +63 SET X=$PIECE($GET(DIKZ(0)),U,14)
- +64 IF X'=""
- Begin DoDot:1
- +65 NEW DIK,DIV,DIU,DIN
- +66 XECUTE ^DD(408.22,.14,1,2,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGMT(408.22,D0,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,16)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- SET DIH=$GET(^DGMT(408.22,DIV(0),0))
- SET DIV=X
- SET $PIECE(^(0),U,16)=DIV
- SET DIH=408.22
- SET DIG=.16
- DO ^DICR
- End DoDot:1
- +67 SET X=$PIECE($GET(DIKZ(0)),U,14)
- +68 IF X'=""
- Begin DoDot:1
- +69 NEW DIK,DIV,DIU,DIN
- +70 XECUTE ^DD(408.22,.14,1,3,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGMT(408.22,D0,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,17)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- SET DIH=$GET(^DGMT(408.22,DIV(0),0))
- SET DIV=X
- SET $PIECE(^(0),U,17)=DIV
- SET DIH=408.22
- SET DIG=.17
- DO ^DICR
- End DoDot:1
- +71 SET DIKZ(0)=$GET(^DGMT(408.22,DA,0))
- +72 SET X=$PIECE($GET(DIKZ(0)),U,16)
- +73 IF X'=""
- Begin DoDot:1
- +74 NEW DIK,DIV,DIU,DIN
- +75 XECUTE ^DD(408.22,.16,1,1,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGMT(408.22,D0,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,15)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=DIV
- SET X="NO"
- SET DIH=$GET(^DGMT(408.22,DIV(0),0))
- SET DIV=X
- SET $PIECE(^(0),U,15)=DIV
- SET DIH=408.22
- SET DIG=.15
- DO ^DICR
- End DoDot:1
- +76 SET DIKZ(0)=$GET(^DGMT(408.22,DA,0))
- +77 SET X=$PIECE($GET(DIKZ(0)),U,17)
- +78 IF X'=""
- Begin DoDot:1
- +79 NEW DIK,DIV,DIU,DIN
- +80 XECUTE ^DD(408.22,.17,1,1,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGMT(408.22,D0,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,16)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- SET DIH=$GET(^DGMT(408.22,DIV(0),0))
- SET DIV=X
- SET $PIECE(^(0),U,16)=DIV
- SET DIH=408.22
- SET DIG=.16
- DO ^DICR
- End DoDot:1
- +81 SET DIKZ(0)=$GET(^DGMT(408.22,DA,0))
- +82 SET X=$PIECE($GET(DIKZ(0)),U,18)
- +83 IF X'=""
- DO E40822^DGRTRIG(DA)
- +84 SET X=$PIECE($GET(DIKZ(0)),U,20)
- +85 IF X'=""
- IF $DATA(^DGMT(408.22,DA,0))
- IF '$PIECE(^(0),U,6)
- IF '$PIECE(^(0),U,20)
- DO SP^DGMTDD2
- +86 SET X=$PIECE($GET(DIKZ(0)),U,20)
- +87 IF X'=""
- DO E40822^DGRTRIG(DA)
- +88 SET DIKZ("MT")=$GET(^DGMT(408.22,DA,"MT"))
- +89 SET X=$PIECE($GET(DIKZ("MT")),U,1)
- +90 IF X'=""
- if $PIECE(^DGMT(408.22,DA,0),U,2)
- SET ^DGMT(408.22,"AMT",X,+$PIECE(^DGMT(408.22,DA,0),U),+$PIECE(^DGMT(408.22,DA,0),U,2),DA)=""
- END QUIT