- IBXX25 ; COMPILED XREF FOR FILE #399.042 ; 10/03/23
- ;
- 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),"RC",DA)) I DA'>0 S DA=0 G END
- 1 ;
- S DIKZ(0)=$G(^DGCR(399,DA(1),"RC",DA,0))
- S X=$P($G(DIKZ(0)),U,1)
- I X'="" S ^DGCR(399,DA(1),"RC","B",$E(X,1,30),DA)=""
- S X=$P($G(DIKZ(0)),U,1)
- I X'="" I $P(^DGCR(399,DA(1),"RC",DA,0),U,5) S ^DGCR(399,DA(1),"RC","ABS",$P(^DGCR(399,DA(1),"RC",DA,0),U,5),$E(X,1,30),DA)=""
- S X=$P($G(DIKZ(0)),U,2)
- I X'="" D 21^IBCU2
- 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(0)=X S X=+$G(IBMAED) I X S X=DIV S Y(1)=$S($D(^DGCR(399,D0,"RC",D1,0)):^(0),1:"") S X=$P(Y(1),U,16),X=X S DIU=X K Y S X=DIV S X=1 X ^DD(399.042,.02,1,2,1.4)
- S DIKZ(0)=$G(^DGCR(399,DA(1),"RC",DA,0))
- S X=$P($G(DIKZ(0)),U,3)
- I X'="" D 31^IBCU2
- S X=$P($G(DIKZ(0)),U,4)
- I X'="" S DGXRF=1 D TC^IBCU2 K DGXRF
- S X=$P($G(DIKZ(0)),U,5)
- I X'="" S ^DGCR(399,DA(1),"RC","ABS",$E(X,1,30),+^DGCR(399,DA(1),"RC",DA,0),DA)=""
- S X=$P($G(DIKZ(0)),U,6)
- I X'="" I $$RC^IBEFUNC1(DA(1),DA) S ^DGCR(399,"ASC1",$E(X,1,30),DA(1),DA)=""
- S X=$P($G(DIKZ(0)),U,6)
- I X'="" I $$RC^IBEFUNC1(DA(1),DA) S ^DGCR(399,"ASC2",DA(1),$E(X,1,30),DA)=""
- S X=$P($G(DIKZ(0)),U,7)
- I X'="" I $$RC^IBEFUNC1(DA(1),DA) S ^DGCR(399,"ASC1",$P(^DGCR(399,DA(1),"RC",DA,0),U,6),DA(1),DA)=""
- S X=$P($G(DIKZ(0)),U,7)
- I X'="" I $$RC^IBEFUNC1(DA(1),DA) S ^DGCR(399,"ASC2",DA(1),$P(^DGCR(399,DA(1),"RC",DA,0),U,6),DA)=""
- S X=$P($G(DIKZ(0)),U,15)
- I X'="" S ^DGCR(399,DA(1),"RC","ACP",$E(X,1,30),DA)=""
- G:'$D(DIKLM) A Q:$D(DISET)
- END G ^IBXX26
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HIBXX25 1650 printed Feb 18, 2025@23:59:32 Page 2
- IBXX25 ; COMPILED XREF FOR FILE #399.042 ; 10/03/23
- +1 ;
- +2 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),"RC",DA))
- IF DA'>0
- SET DA=0
- GOTO END
- 1 ;
- +1 SET DIKZ(0)=$GET(^DGCR(399,DA(1),"RC",DA,0))
- +2 SET X=$PIECE($GET(DIKZ(0)),U,1)
- +3 IF X'=""
- SET ^DGCR(399,DA(1),"RC","B",$EXTRACT(X,1,30),DA)=""
- +4 SET X=$PIECE($GET(DIKZ(0)),U,1)
- +5 IF X'=""
- IF $PIECE(^DGCR(399,DA(1),"RC",DA,0),U,5)
- SET ^DGCR(399,DA(1),"RC","ABS",$PIECE(^DGCR(399,DA(1),"RC",DA,0),U,5),$EXTRACT(X,1,30),DA)=""
- +6 SET X=$PIECE($GET(DIKZ(0)),U,2)
- +7 IF X'=""
- DO 21^IBCU2
- +8 SET X=$PIECE($GET(DIKZ(0)),U,2)
- +9 IF X'=""
- Begin DoDot:1
- +10 NEW DIK,DIV,DIU,DIN
- +11 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=+$GET(IBMAED)
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGCR(399,D0,"RC",D1,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,16)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=DIV
- SET X=1
- XECUTE ^DD(399.042,.02,1,2,1.4)
- End DoDot:1
- +12 SET DIKZ(0)=$GET(^DGCR(399,DA(1),"RC",DA,0))
- +13 SET X=$PIECE($GET(DIKZ(0)),U,3)
- +14 IF X'=""
- DO 31^IBCU2
- +15 SET X=$PIECE($GET(DIKZ(0)),U,4)
- +16 IF X'=""
- SET DGXRF=1
- DO TC^IBCU2
- KILL DGXRF
- +17 SET X=$PIECE($GET(DIKZ(0)),U,5)
- +18 IF X'=""
- SET ^DGCR(399,DA(1),"RC","ABS",$EXTRACT(X,1,30),+^DGCR(399,DA(1),"RC",DA,0),DA)=""
- +19 SET X=$PIECE($GET(DIKZ(0)),U,6)
- +20 IF X'=""
- IF $$RC^IBEFUNC1(DA(1),DA)
- SET ^DGCR(399,"ASC1",$EXTRACT(X,1,30),DA(1),DA)=""
- +21 SET X=$PIECE($GET(DIKZ(0)),U,6)
- +22 IF X'=""
- IF $$RC^IBEFUNC1(DA(1),DA)
- SET ^DGCR(399,"ASC2",DA(1),$EXTRACT(X,1,30),DA)=""
- +23 SET X=$PIECE($GET(DIKZ(0)),U,7)
- +24 IF X'=""
- IF $$RC^IBEFUNC1(DA(1),DA)
- SET ^DGCR(399,"ASC1",$PIECE(^DGCR(399,DA(1),"RC",DA,0),U,6),DA(1),DA)=""
- +25 SET X=$PIECE($GET(DIKZ(0)),U,7)
- +26 IF X'=""
- IF $$RC^IBEFUNC1(DA(1),DA)
- SET ^DGCR(399,"ASC2",DA(1),$PIECE(^DGCR(399,DA(1),"RC",DA,0),U,6),DA)=""
- +27 SET X=$PIECE($GET(DIKZ(0)),U,15)
- +28 IF X'=""
- SET ^DGCR(399,DA(1),"RC","ACP",$EXTRACT(X,1,30),DA)=""
- +29 if '$DATA(DIKLM)
- GOTO A
- if $DATA(DISET)
- QUIT
- END GOTO ^IBXX26