- DGPTXX12 ; COMPILED XREF FOR FILE #45.05 ; 10/15/12
- ;
- S DA=0
- A1 ;
- I $D(DISET) K DIKLM S:DIKM1=1 DIKLM=1 G @DIKM1
- 0 ;
- A S DA=$O(^DGPT(DA(1),"P",DA)) I DA'>0 S DA=0 G END
- 1 ;
- S DIKZ(0)=$G(^DGPT(DA(1),"P",DA,0))
- S X=$P($G(DIKZ(0)),U,3)
- 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=$P(^DGPT(DA(1),0),U,11)=1 I X S X=DIV S Y(1)=$S($D(^DGPT(D0,"P",D1,0)):^(0),1:"") S X=$P(Y(1),U,4),X=X S DIU=X K Y S X="" X ^DD(45.05,2,1,1,1.4)
- S DIKZ(0)=$G(^DGPT(DA(1),"P",DA,0))
- S X=$P($G(DIKZ(0)),U,5)
- I X'="" S ^DGPT(DA(1),"P","AP6",$E(X,1,30),DA)=""
- S X=$P($G(DIKZ(0)),U,6)
- I X'="" S ^DGPT(DA(1),"P","AP6",$E(X,1,30),DA)=""
- S X=$P($G(DIKZ(0)),U,7)
- I X'="" S ^DGPT(DA(1),"P","AP6",$E(X,1,30),DA)=""
- S X=$P($G(DIKZ(0)),U,8)
- I X'="" S ^DGPT(DA(1),"P","AP6",$E(X,1,30),DA)=""
- S X=$P($G(DIKZ(0)),U,9)
- I X'="" S ^DGPT(DA(1),"P","AP6",$E(X,1,30),DA)=""
- CR1 S DIXR=356
- K X
- S X(1)=$P(DIKZ(0),U,1)
- S X(2)=$P(DIKZ(0),U,5)
- S X=$G(X(1))
- I $G(X(1))]"",$G(X(2))]"" D
- . K X1,X2 M X1=X,X2=X
- . D SDGPT0^DGPTDDCR(.X,.DA,"P",1)
- CR2 S DIXR=357
- K X
- S DIKZ(0)=$G(^DGPT(DA(1),"P",DA,0))
- S X(1)=$P(DIKZ(0),U,1)
- S X(2)=$P(DIKZ(0),U,6)
- S X=$G(X(1))
- I $G(X(1))]"",$G(X(2))]"" D
- . K X1,X2 M X1=X,X2=X
- . D SDGPT0^DGPTDDCR(.X,.DA,"P",2)
- CR3 S DIXR=358
- K X
- S DIKZ(0)=$G(^DGPT(DA(1),"P",DA,0))
- S X(1)=$P(DIKZ(0),U,1)
- S X(2)=$P(DIKZ(0),U,7)
- S X=$G(X(1))
- I $G(X(1))]"",$G(X(2))]"" D
- . K X1,X2 M X1=X,X2=X
- . D SDGPT0^DGPTDDCR(.X,.DA,"P",3)
- CR4 S DIXR=359
- K X
- S DIKZ(0)=$G(^DGPT(DA(1),"P",DA,0))
- S X(1)=$P(DIKZ(0),U,1)
- S X(2)=$P(DIKZ(0),U,8)
- S X=$G(X(1))
- I $G(X(1))]"",$G(X(2))]"" D
- . K X1,X2 M X1=X,X2=X
- . D SDGPT0^DGPTDDCR(.X,.DA,"P",4)
- CR5 S DIXR=360
- K X
- S DIKZ(0)=$G(^DGPT(DA(1),"P",DA,0))
- S X(1)=$P(DIKZ(0),U,1)
- S X(2)=$P(DIKZ(0),U,9)
- S X=$G(X(1))
- I $G(X(1))]"",$G(X(2))]"" D
- . K X1,X2 M X1=X,X2=X
- . D SDGPT0^DGPTDDCR(.X,.DA,"P",5)
- CR6 K X
- G:'$D(DIKLM) A Q:$D(DISET)
- END G ^DGPTXX13
- DGPTXX12 ; COMPILED XREF FOR FILE #45.05 ; 10/15/12
- +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(^DGPT(DA(1),"P",DA))
- IF DA'>0
- SET DA=0
- GOTO END
- 1 ;
- +1 SET DIKZ(0)=$GET(^DGPT(DA(1),"P",DA,0))
- +2 SET X=$PIECE($GET(DIKZ(0)),U,3)
- +3 IF X'=""
- Begin DoDot:1
- +4 NEW DIK,DIV,DIU,DIN
- +5 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=$PIECE(^DGPT(DA(1),0),U,11)=1
- IF X
- SET X=DIV
- SET Y(1)=$SELECT($DATA(^DGPT(D0,"P",D1,0)):^(0),1:"")
- SET X=$PIECE(Y(1),U,4)
- SET X=X
- SET DIU=X
- KILL Y
- SET X=""
- XECUTE ^DD(45.05,2,1,1,1.4)
- End DoDot:1
- +6 SET DIKZ(0)=$GET(^DGPT(DA(1),"P",DA,0))
- +7 SET X=$PIECE($GET(DIKZ(0)),U,5)
- +8 IF X'=""
- SET ^DGPT(DA(1),"P","AP6",$EXTRACT(X,1,30),DA)=""
- +9 SET X=$PIECE($GET(DIKZ(0)),U,6)
- +10 IF X'=""
- SET ^DGPT(DA(1),"P","AP6",$EXTRACT(X,1,30),DA)=""
- +11 SET X=$PIECE($GET(DIKZ(0)),U,7)
- +12 IF X'=""
- SET ^DGPT(DA(1),"P","AP6",$EXTRACT(X,1,30),DA)=""
- +13 SET X=$PIECE($GET(DIKZ(0)),U,8)
- +14 IF X'=""
- SET ^DGPT(DA(1),"P","AP6",$EXTRACT(X,1,30),DA)=""
- +15 SET X=$PIECE($GET(DIKZ(0)),U,9)
- +16 IF X'=""
- SET ^DGPT(DA(1),"P","AP6",$EXTRACT(X,1,30),DA)=""
- CR1 SET DIXR=356
- +1 KILL X
- +2 SET X(1)=$PIECE(DIKZ(0),U,1)
- +3 SET X(2)=$PIECE(DIKZ(0),U,5)
- +4 SET X=$GET(X(1))
- +5 IF $GET(X(1))]""
- IF $GET(X(2))]""
- Begin DoDot:1
- +6 KILL X1,X2
- MERGE X1=X,X2=X
- +7 DO SDGPT0^DGPTDDCR(.X,.DA,"P",1)
- End DoDot:1
- CR2 SET DIXR=357
- +1 KILL X
- +2 SET DIKZ(0)=$GET(^DGPT(DA(1),"P",DA,0))
- +3 SET X(1)=$PIECE(DIKZ(0),U,1)
- +4 SET X(2)=$PIECE(DIKZ(0),U,6)
- +5 SET X=$GET(X(1))
- +6 IF $GET(X(1))]""
- IF $GET(X(2))]""
- Begin DoDot:1
- +7 KILL X1,X2
- MERGE X1=X,X2=X
- +8 DO SDGPT0^DGPTDDCR(.X,.DA,"P",2)
- End DoDot:1
- CR3 SET DIXR=358
- +1 KILL X
- +2 SET DIKZ(0)=$GET(^DGPT(DA(1),"P",DA,0))
- +3 SET X(1)=$PIECE(DIKZ(0),U,1)
- +4 SET X(2)=$PIECE(DIKZ(0),U,7)
- +5 SET X=$GET(X(1))
- +6 IF $GET(X(1))]""
- IF $GET(X(2))]""
- Begin DoDot:1
- +7 KILL X1,X2
- MERGE X1=X,X2=X
- +8 DO SDGPT0^DGPTDDCR(.X,.DA,"P",3)
- End DoDot:1
- CR4 SET DIXR=359
- +1 KILL X
- +2 SET DIKZ(0)=$GET(^DGPT(DA(1),"P",DA,0))
- +3 SET X(1)=$PIECE(DIKZ(0),U,1)
- +4 SET X(2)=$PIECE(DIKZ(0),U,8)
- +5 SET X=$GET(X(1))
- +6 IF $GET(X(1))]""
- IF $GET(X(2))]""
- Begin DoDot:1
- +7 KILL X1,X2
- MERGE X1=X,X2=X
- +8 DO SDGPT0^DGPTDDCR(.X,.DA,"P",4)
- End DoDot:1
- CR5 SET DIXR=360
- +1 KILL X
- +2 SET DIKZ(0)=$GET(^DGPT(DA(1),"P",DA,0))
- +3 SET X(1)=$PIECE(DIKZ(0),U,1)
- +4 SET X(2)=$PIECE(DIKZ(0),U,9)
- +5 SET X=$GET(X(1))
- +6 IF $GET(X(1))]""
- IF $GET(X(2))]""
- Begin DoDot:1
- +7 KILL X1,X2
- MERGE X1=X,X2=X
- +8 DO SDGPT0^DGPTDDCR(.X,.DA,"P",5)
- End DoDot:1
- CR6 KILL X
- +1 IF '$DATA(DIKLM)
- GOTO A
- IF $DATA(DISET)
- QUIT
- END GOTO ^DGPTXX13