- IBXX12 ; COMPILED XREF FOR FILE #399.0304 ; 02/13/06
- ;
- 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),"CP",DA)) I DA'>0 S DA=0 G END
- 1 ;
- S DIKZ(0)=$G(^DGCR(399,DA(1),"CP",DA,0))
- S X=$P(DIKZ(0),U,1)
- I X'="" S ^DGCR(399,DA(1),"CP","B",$E(X,1,30),DA)=""
- S X=$P(DIKZ(0),U,1)
- I X'="" I $P(X,";",2)="ICPT(",$D(^DGCR(399,DA(1),"CP",DA,0)),$P(^(0),"^",2) S ^DGCR(399,"ASD",-$P(^(0),"^",2),+X,DA(1),DA)=""
- S X=$P(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(1)=$S($D(^DGCR(399,D0,"CP",D1,0)):^(0),1:"") S X=$P(Y(1),U,5),X=X S DIU=X K Y X ^DD(399.0304,.01,1,3,1.1) X ^DD(399.0304,.01,1,3,1.4)
- S DIKZ(0)=$G(^DGCR(399,DA(1),"CP",DA,0))
- S X=$P(DIKZ(0),U,2)
- I X'="" I $D(^DGCR(399,DA(1),"CP",DA,0)),+^(0),$P($P(^(0),"^",1),";",2)="ICPT(" S ^DGCR(399,"ASD",-X,+^(0),DA(1),DA)=""
- S X=$P(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,"CP",D1,0)):^(0),1:"") S X=$P(Y(1),U,5),X=X S DIU=X K Y X ^DD(399.0304,1,1,2,1.1) X ^DD(399.0304,1,1,2,1.4)
- S DIKZ(0)=$G(^DGCR(399,DA(1),"CP",DA,0))
- S X=$P(DIKZ(0),U,4)
- I X'="" S ^DGCR(399,DA(1),"CP","D",$E(X,1,30),DA)=""
- S X=$P(DIKZ(0),U,5)
- I X'="" S DGRVRCAL=1
- S X=$P(DIKZ(0),U,5)
- I X'="" S ^DGCR(399,DA(1),"CP","ASC",$E(X,1,30),DA)=""
- S X=$P(DIKZ(0),U,6)
- 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,"CP",D1,0)):^(0),1:"") S X=$P(Y(1),U,5),X=X S DIU=X K Y X ^DD(399.0304,5,1,1,1.1) X ^DD(399.0304,5,1,1,1.4)
- G:'$D(DIKLM) A Q:$D(DISET)
- END G ^IBXX13
- IBXX12 ; COMPILED XREF FOR FILE #399.0304 ; 02/13/06
- +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),"CP",DA))
- IF DA'>0
- SET DA=0
- GOTO END
- 1 ;
- +1 SET DIKZ(0)=$GET(^DGCR(399,DA(1),"CP",DA,0))
- +2 SET X=$PIECE(DIKZ(0),U,1)
- +3 IF X'=""
- SET ^DGCR(399,DA(1),"CP","B",$EXTRACT(X,1,30),DA)=""
- +4 SET X=$PIECE(DIKZ(0),U,1)
- +5 IF X'=""
- IF $PIECE(X,";",2)="ICPT("
- IF $DATA(^DGCR(399,DA(1),"CP",DA,0))
- IF $PIECE(^(0),"^",2)
- SET ^DGCR(399,"ASD",-$PIECE(^(0),"^",2),+X,DA(1),DA)=""
- +6 SET X=$PIECE(DIKZ(0),U,1)
- +7 IF X'=""
- Begin DoDot:1
- +8 NEW DIK,DIV,DIU,DIN
- +9 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,"CP",D1,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,5)
- SET X=X
- SET DIU=X
- KILL Y
- XECUTE ^DD(399.0304,.01,1,3,1.1)
- XECUTE ^DD(399.0304,.01,1,3,1.4)
- End DoDot:1
- +10 SET DIKZ(0)=$GET(^DGCR(399,DA(1),"CP",DA,0))
- +11 SET X=$PIECE(DIKZ(0),U,2)
- +12 IF X'=""
- IF $DATA(^DGCR(399,DA(1),"CP",DA,0))
- IF +^(0)
- IF $PIECE($PIECE(^(0),"^",1),";",2)="ICPT("
- SET ^DGCR(399,"ASD",-X,+^(0),DA(1),DA)=""
- +13 SET X=$PIECE(DIKZ(0),U,2)
- +14 IF X'=""
- Begin DoDot:1
- +15 NEW DIK,DIV,DIU,DIN
- +16 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,"CP",D1,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,5)
- SET X=X
- SET DIU=X
- KILL Y
- XECUTE ^DD(399.0304,1,1,2,1.1)
- XECUTE ^DD(399.0304,1,1,2,1.4)
- End DoDot:1
- +17 SET DIKZ(0)=$GET(^DGCR(399,DA(1),"CP",DA,0))
- +18 SET X=$PIECE(DIKZ(0),U,4)
- +19 IF X'=""
- SET ^DGCR(399,DA(1),"CP","D",$EXTRACT(X,1,30),DA)=""
- +20 SET X=$PIECE(DIKZ(0),U,5)
- +21 IF X'=""
- SET DGRVRCAL=1
- +22 SET X=$PIECE(DIKZ(0),U,5)
- +23 IF X'=""
- SET ^DGCR(399,DA(1),"CP","ASC",$EXTRACT(X,1,30),DA)=""
- +24 SET X=$PIECE(DIKZ(0),U,6)
- +25 IF X'=""
- Begin DoDot:1
- +26 NEW DIK,DIV,DIU,DIN
- +27 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,"CP",D1,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,5)
- SET X=X
- SET DIU=X
- KILL Y
- XECUTE ^DD(399.0304,5,1,1,1.1)
- XECUTE ^DD(399.0304,5,1,1,1.4)
- End DoDot:1
- +28 IF '$DATA(DIKLM)
- GOTO A
- IF $DATA(DISET)
- QUIT
- END GOTO ^IBXX13