- IBXX21 ; COMPILED XREF FOR FILE #399.0222 ; 10/03/23
- ;
- S DA(1)=DA S DA=0
- A1 ;
- I $D(DISET) K DIKLM S:DIKM1=1 DIKLM=1 G @DIKM1
- 0 ;
- A S DA=$O(^DGCR(399,DA(1),"PRV",DA)) I DA'>0 S DA=0 G END
- 1 ;
- S DIKZ(0)=$G(^DGCR(399,DA(1),"PRV",DA,0))
- S X=$P($G(DIKZ(0)),U,1)
- I X'="" S ^DGCR(399,DA(1),"PRV","B",$E(X,1,30),DA)=""
- S X=$P($G(DIKZ(0)),U,1)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .K DIV S DIV=X,D0=DA(1),DIV(0)=D0,D1=DA,DIV(1)=D1 S Y(0)=X S X=Y(0),X=X S X=X'=1 I X S X=DIV S Y(1)=$S($D(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"") S X=$P(Y(1),U,4),X=X S DIU=X K Y S X="" X ^DD(399.0222,.01,1,2,1.4)
- S X=$P($G(DIKZ(0)),U,1)
- I X'="" S ^DGCR(399,DA(1),"PRV","C",$E($$EXTERNAL^DILFD(399.0222,.01,,X),1,30),DA)=""
- S X=$P($G(DIKZ(0)),U,1)
- I X'="" S ^DGCR(399,DA(1),"PRV","C",$$LOW^XLFSTR($E($$EXTERNAL^DILFD(399.0222,.01,,X),1,30)),DA)=""
- S DIKZ(0)=$G(^DGCR(399,DA(1),"PRV",DA,0))
- S X=$P($G(DIKZ(0)),U,2)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(399.0222,.02,1,1,1.3) I X S X=DIV S Y(1)=$S($D(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"") S X=$P(Y(1),U,5),X=X S DIU=X K Y S X="" X ^DD(399.0222,.02,1,1,1.4)
- S X=$P($G(DIKZ(0)),U,2)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(399.0222,.02,1,2,1.3) I X S X=DIV S Y(1)=$S($D(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"") S X=$P(Y(1),U,3),X=X S DIU=X K Y S X=DIV S X=$$EXTCR^IBCEU5(X) X ^DD(399.0222,.02,1,2,1.4)
- S X=$P($G(DIKZ(0)),U,2)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .X ^DD(399.0222,.02,1,3,1.3) I X S X=DIV S Y(1)=$S($D(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"") S X=$P(Y(1),U,8),X=X S DIU=X K Y S X=DIV S X=$$SPEC^IBCEU(X,$P($G(^DGCR(399,D0,"U")),U)) X ^DD(399.0222,.02,1,3,1.4)
- S X=$P($G(DIKZ(0)),U,2)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .K DIV S DIV=X,D0=DA(1),DIV(0)=D0,D1=DA,DIV(1)=D1 S Y(1)=$S($D(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"") S X=$P(Y(1),U,15),X=X S DIU=X K Y X ^DD(399.0222,.02,1,7,1.1) X ^DD(399.0222,.02,1,7,1.4)
- S DIKZ(0)=$G(^DGCR(399,DA(1),"PRV",DA,0))
- S X=$P($G(DIKZ(0)),U,5)
- I X'="" D
- .N DIK,DIV,DIU,DIN
- .K DIV S DIV=X,D0=DA(1),DIV(0)=D0,D1=DA,DIV(1)=D1 S Y(0)=X S X=Y(0)="SLF000" I X S X=DIV S Y(1)=$S($D(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"") S X=$P(Y(1),U,2),X=X S DIU=X K Y S X="" X ^DD(399.0222,.05,1,1,1.4)
- S X=$P($G(DIKZ(0)),U,5)
- I X'="" D ATTREND^IBCU1(DA(1),DA,.05)
- S DIKZ(0)=$G(^DGCR(399,DA(1),"PRV",DA,0))
- S X=$P($G(DIKZ(0)),U,6)
- I X'="" D ATTREND^IBCU1(DA(1),DA,.06)
- S X=$P($G(DIKZ(0)),U,7)
- I X'="" D ATTREND^IBCU1(DA(1),DA,.07)
- S X=$P($G(DIKZ(0)),U,12)
- I X'="" D ATTREND^IBCU1(DA(1),DA,.12)
- S X=$P($G(DIKZ(0)),U,13)
- I X'="" D ATTREND^IBCU1(DA(1),DA,.13)
- S X=$P($G(DIKZ(0)),U,14)
- I X'="" D ATTREND^IBCU1(DA(1),DA,.14)
- G:'$D(DIKLM) A Q:$D(DISET)
- END G ^IBXX22
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HIBXX21 2669 printed Feb 18, 2025@23:59:29 Page 2
- IBXX21 ; COMPILED XREF FOR FILE #399.0222 ; 10/03/23
- +1 ;
- +2 SET DA(1)=DA
- SET DA=0
- A1 ;
- +1 IF $DATA(DISET)
- KILL DIKLM
- if DIKM1=1
- SET DIKLM=1
- GOTO @DIKM1
- 0 ;
- A SET DA=$ORDER(^DGCR(399,DA(1),"PRV",DA))
- IF DA'>0
- SET DA=0
- GOTO END
- 1 ;
- +1 SET DIKZ(0)=$GET(^DGCR(399,DA(1),"PRV",DA,0))
- +2 SET X=$PIECE($GET(DIKZ(0)),U,1)
- +3 IF X'=""
- SET ^DGCR(399,DA(1),"PRV","B",$EXTRACT(X,1,30),DA)=""
- +4 SET X=$PIECE($GET(DIKZ(0)),U,1)
- +5 IF X'=""
- Begin DoDot:1
- +6 NEW DIK,DIV,DIU,DIN
- +7 KILL DIV
- SET DIV=X
- SET D0=DA(1)
- SET DIV(0)=D0
- SET D1=DA
- SET DIV(1)=D1
- SET Y(0)=X
- SET X=Y(0)
- SET X=X
- SET X=X'=1
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,4)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- XECUTE ^DD(399.0222,.01,1,2,1.4)
- End DoDot:1
- +8 SET X=$PIECE($GET(DIKZ(0)),U,1)
- +9 IF X'=""
- SET ^DGCR(399,DA(1),"PRV","C",$EXTRACT($$EXTERNAL^DILFD(399.0222,.01,,X),1,30),DA)=""
- +10 SET X=$PIECE($GET(DIKZ(0)),U,1)
- +11 IF X'=""
- SET ^DGCR(399,DA(1),"PRV","C",$$LOW^XLFSTR($EXTRACT($$EXTERNAL^DILFD(399.0222,.01,,X),1,30)),DA)=""
- +12 SET DIKZ(0)=$GET(^DGCR(399,DA(1),"PRV",DA,0))
- +13 SET X=$PIECE($GET(DIKZ(0)),U,2)
- +14 IF X'=""
- Begin DoDot:1
- +15 NEW DIK,DIV,DIU,DIN
- +16 XECUTE ^DD(399.0222,.02,1,1,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,5)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- XECUTE ^DD(399.0222,.02,1,1,1.4)
- End DoDot:1
- +17 SET X=$PIECE($GET(DIKZ(0)),U,2)
- +18 IF X'=""
- Begin DoDot:1
- +19 NEW DIK,DIV,DIU,DIN
- +20 XECUTE ^DD(399.0222,.02,1,2,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,3)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=DIV
- SET X=$$EXTCR^IBCEU5(X)
- XECUTE ^DD(399.0222,.02,1,2,1.4)
- End DoDot:1
- +21 SET X=$PIECE($GET(DIKZ(0)),U,2)
- +22 IF X'=""
- Begin DoDot:1
- +23 NEW DIK,DIV,DIU,DIN
- +24 XECUTE ^DD(399.0222,.02,1,3,1.3)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,8)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=DIV
- SET X=$$SPEC^IBCEU(X,$PIECE($GET(^DGCR(399,D0,"U")),U))
- XECUTE ^DD(399.0222,.02,1,3,1.4)
- End DoDot:1
- +25 SET X=$PIECE($GET(DIKZ(0)),U,2)
- +26 IF X'=""
- Begin DoDot:1
- +27 NEW DIK,DIV,DIU,DIN
- +28 KILL DIV
- SET DIV=X
- SET D0=DA(1)
- SET DIV(0)=D0
- SET D1=DA
- SET DIV(1)=D1
- SET Y(1)=$SELECT($DATA(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,15)
- SET X=X
- SET DIU=X
- KILL Y
- XECUTE ^DD(399.0222,.02,1,7,1.1)
- XECUTE ^DD(399.0222,.02,1,7,1.4)
- End DoDot:1
- +29 SET DIKZ(0)=$GET(^DGCR(399,DA(1),"PRV",DA,0))
- +30 SET X=$PIECE($GET(DIKZ(0)),U,5)
- +31 IF X'=""
- Begin DoDot:1
- +32 NEW DIK,DIV,DIU,DIN
- +33 KILL DIV
- SET DIV=X
- SET D0=DA(1)
- SET DIV(0)=D0
- SET D1=DA
- SET DIV(1)=D1
- SET Y(0)=X
- SET X=Y(0)="SLF000"
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGCR(399,D0,"PRV",D1,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,2)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- XECUTE ^DD(399.0222,.05,1,1,1.4)
- End DoDot:1
- +34 SET X=$PIECE($GET(DIKZ(0)),U,5)
- +35 IF X'=""
- DO ATTREND^IBCU1(DA(1),DA,.05)
- +36 SET DIKZ(0)=$GET(^DGCR(399,DA(1),"PRV",DA,0))
- +37 SET X=$PIECE($GET(DIKZ(0)),U,6)
- +38 IF X'=""
- DO ATTREND^IBCU1(DA(1),DA,.06)
- +39 SET X=$PIECE($GET(DIKZ(0)),U,7)
- +40 IF X'=""
- DO ATTREND^IBCU1(DA(1),DA,.07)
- +41 SET X=$PIECE($GET(DIKZ(0)),U,12)
- +42 IF X'=""
- DO ATTREND^IBCU1(DA(1),DA,.12)
- +43 SET X=$PIECE($GET(DIKZ(0)),U,13)
- +44 IF X'=""
- DO ATTREND^IBCU1(DA(1),DA,.13)
- +45 SET X=$PIECE($GET(DIKZ(0)),U,14)
- +46 IF X'=""
- DO ATTREND^IBCU1(DA(1),DA,.14)
- +47 if '$DATA(DIKLM)
- GOTO A
- if $DATA(DISET)
- QUIT
- END GOTO ^IBXX22