- PSOXZA1 ; COMPILED XREF FOR FILE #52 ; 09/03/24
- ;
- S DIKZK=2
- S DIKZ(0)=$G(^PSRX(DA,0))
- S X=$P($G(DIKZ(0)),U,13)
- I X'="" K ^PSRX("AC",$E(X,1,30),DA)
- S X=$P($G(DIKZ(0)),U,2)
- I X'="" K:$P($G(^PSRX(DA,0)),"^",11)="W"&($P($G(^(2)),"^",2))&('$P($G(^(2)),"^",13))&('$P($G(^(2)),"^",15))&(+$G(^("IB"))) ^PSRX("ACP",X,$P(^PSRX(DA,2),"^",2),0,DA)
- S X=$P($G(DIKZ(0)),U,2)
- I X'="" X ^DD(52,2,1,2,2)
- S X=$P($G(DIKZ(0)),U,2)
- I X'="" K:$G(PSODEATH) ^PSRX("APSOD",X,DA)
- S DIKZ(0)=$G(^PSRX(DA,0))
- S X=$P($G(DIKZ(0)),U,6)
- I X'="" I X,$P(^PSRX(DA,2),"^",2) K ^PSRX("ADL",$P(^PSRX(DA,2),"^",2),X,DA)
- S X=$P($G(DIKZ(0)),U,11)
- I X'="" K:X="W"&($P(^PSRX(DA,0),"^",2))&($P($G(^(2)),"^",2))&('$P($G(^(2)),"^",13))&('$P($G(^(2)),"^",15))&(+$G(^("IB"))) ^PSRX("ACP",$P(^PSRX(DA,0),"^",2),$P(^(2),"^",2),0,DA)
- S DIKZ(2)=$G(^PSRX(DA,2))
- S X=$P($G(DIKZ(2)),U,9)
- I X'="" D KAS^PSOSUTL
- S X=$P($G(DIKZ(2)),U,2)
- I X'="" K ^PSRX("AD",X,DA,0)
- S X=$P($G(DIKZ(2)),U,2)
- I X'="" K:$P($G(^PSRX(DA,0)),"^",2)&($P($G(^(0)),"^",11)="W")&('$P($G(^(2)),"^",13))&('$P($G(^(2)),"^",15))&('+$G(^("IB"))) ^PSRX("ACP",$P(^PSRX(DA,0),"^",2),X,0,DA)
- S X=$P($G(DIKZ(2)),U,2)
- I X'="" D SUSFDK^PSOUTLA
- S X=$P($G(DIKZ(2)),U,2)
- I X'="" I X,$P(^PSRX(DA,0),"^",6) K ^PSRX("ADL",X,$P(^PSRX(DA,0),"^",6),DA)
- S X=$P($G(DIKZ(2)),U,6)
- I X'="" K ^PSRX("AG",$E(X,1,30),DA)
- S X=$P($G(DIKZ(2)),U,6)
- I X'="" K:$P($G(^PSRX(DA,"STA")),"^")'=12 ^PS(55,$P($G(^PSRX(DA,0)),"^",2),"P","A",X,DA)
- S DIKZ(3)=$G(^PSRX(DA,3))
- S X=$P($G(DIKZ(3)),U,5)
- I X'="" S ^PS(55,$P(^PSRX(DA,0),"^",2),"P","A",$P(^PSRX(DA,2),"^",6),DA)="" K ^PS(55,$P(^PSRX(DA,0),"^",2),"P","A",X,DA)
- S X=$P($G(DIKZ(2)),U,13)
- I X'="" K ^PSRX("AL",X,DA,0)
- S X=$P($G(DIKZ(2)),U,13)
- I X'="" S:$P(^PSRX(DA,0),"^",2)&($P(^(0),"^",11)="W")&($P($G(^(2)),"^",2))&('$P($G(^(2)),"^",15))&(+$G(^("IB"))) ^PSRX("ACP",$P(^PSRX(DA,0),"^",2),$P(^(2),"^",2),0,DA)=""
- S X=$P($G(DIKZ(2)),U,15)
- I X'="" K ^PSRX("AJ",X,DA,0)
- S DIKZ("OR1")=$G(^PSRX(DA,"OR1"))
- S X=$P($G(DIKZ("OR1")),U,8)
- I X'="" K ^PSRX("AFDT",$E(X,1,30),DA)
- S X=$P($G(DIKZ("OR1")),U,2)
- I X'="" K ^PSRX("APL",$E(X,1,30),DA)
- S X=$P($G(DIKZ("OR1")),U,3)
- I X'="" K ^PSRX("AO",$E(X,1,30),DA)
- S X=$P($G(DIKZ("OR1")),U,4)
- I X'="" K ^PSRX("AQ",$E(X,1,30),DA)
- S DIKZ("H")=$G(^PSRX(DA,"H"))
- S X=$P($G(DIKZ("H")),U,1)
- I X'="" K ^PSRX("AH",$E(X,1,30),DA)
- S X=$P($G(DIKZ(3)),U,3)
- I X'="" I $D(^VA(200,+$P(^PSRX(DA,0),"^",4),"PS")),$P(^("PS"),"^",7) S ^PSRX("ANCO",DA)=""
- S DIKZ("PARK")=$G(^PSRX(DA,"PARK"))
- S X=$P($G(DIKZ("PARK")),U,1)
- I X'="" K ^PSRX("APARK",$E(X,1,30),DA)
- S X=$P($G(DIKZ(0)),U,1)
- I X'="" K ^PSRX("B",$E(X,1,30),DA)
- CR1 S DIXR=175
- K X
- S DIKZ("EXT")=$G(^PSRX(DA,"EXT"))
- S X(1)=$P(DIKZ("EXT"),U,1)
- S X(2)=$P(DIKZ("EXT"),U,2)
- S X=$G(X(1))
- I $G(X(1))]"",$G(X(2))]"" D
- . K X1,X2 M X1=X,X2=X
- . S:$D(DIKIL) (X2,X2(1),X2(2))=""
- . K ^PSRX("D",$E(X(1),1,30),$E(X(2),1,60),DA)
- CR2 S DIXR=250
- K X
- S DIKZ(0)=$G(^PSRX(DA,0))
- S X(1)=$P(DIKZ(0),U,13)
- S X=$G(X(1))
- I $G(X(1))]"" D
- . K X1,X2 M X1=X,X2=X
- . S:$D(DIKIL) (X2,X2(1))=""
- . K ^PSRX("APKI",$E(X,1,30),DA)
- CR3 S DIXR=461
- K X
- S DIKZ(0)=$G(^PSRX(DA,0))
- S X(1)=$P(DIKZ(0),U,8)
- S DIKZ(2)=$G(^PSRX(DA,2))
- S X(2)=$P(DIKZ(2),U,13)
- S X=$G(X(1))
- I $G(X(1))]"",$G(X(2))]"" D
- . K X1,X2 M X1=X,X2=X
- . S:$D(DIKIL) (X2,X2(1),X2(2))=""
- . D SKIDX^PSOPXRMU(.X,.DA,"O","K")
- CR4 K X
- END G ^PSOXZA2
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPSOXZA1 3438 printed Feb 19, 2025@00:02:56 Page 2
- PSOXZA1 ; COMPILED XREF FOR FILE #52 ; 09/03/24
- +1 ;
- +2 SET DIKZK=2
- +3 SET DIKZ(0)=$GET(^PSRX(DA,0))
- +4 SET X=$PIECE($GET(DIKZ(0)),U,13)
- +5 IF X'=""
- KILL ^PSRX("AC",$EXTRACT(X,1,30),DA)
- +6 SET X=$PIECE($GET(DIKZ(0)),U,2)
- +7 IF X'=""
- if $PIECE($GET(^PSRX(DA,0)),"^",11)="W"&($PIECE($GET(^(2)),"^",2))&('$PIECE($GET(^(2)),"^",13))&('$PIECE($GET(^(2)),"^",15))&(+$GET(^("IB")))
- KILL ^PSRX("ACP",X,$PIECE(^PSRX(DA,2),"^",2),0,DA)
- +8 SET X=$PIECE($GET(DIKZ(0)),U,2)
- +9 IF X'=""
- XECUTE ^DD(52,2,1,2,2)
- +10 SET X=$PIECE($GET(DIKZ(0)),U,2)
- +11 IF X'=""
- if $GET(PSODEATH)
- KILL ^PSRX("APSOD",X,DA)
- +12 SET DIKZ(0)=$GET(^PSRX(DA,0))
- +13 SET X=$PIECE($GET(DIKZ(0)),U,6)
- +14 IF X'=""
- IF X
- IF $PIECE(^PSRX(DA,2),"^",2)
- KILL ^PSRX("ADL",$PIECE(^PSRX(DA,2),"^",2),X,DA)
- +15 SET X=$PIECE($GET(DIKZ(0)),U,11)
- +16 IF X'=""
- if X="W"&($PIECE(^PSRX(DA,0),"^",2))&($PIECE($GET(^(2)),"^",2))&('$PIECE($GET(^(2)),"^",13))&('$PIECE($GET(^(2)),"^",15))&(+$GET(^("IB")))
- KILL ^PSRX("ACP",$PIECE(^PSRX(DA,0),"^",2),$PIECE(^(2),"^",2),0,DA)
- +17 SET DIKZ(2)=$GET(^PSRX(DA,2))
- +18 SET X=$PIECE($GET(DIKZ(2)),U,9)
- +19 IF X'=""
- DO KAS^PSOSUTL
- +20 SET X=$PIECE($GET(DIKZ(2)),U,2)
- +21 IF X'=""
- KILL ^PSRX("AD",X,DA,0)
- +22 SET X=$PIECE($GET(DIKZ(2)),U,2)
- +23 IF X'=""
- if $PIECE($GET(^PSRX(DA,0)),"^",2)&($PIECE($GET(^(0)),"^",11)="W")&('$PIECE($GET(^(2)),"^",13))&('$PIECE($GET(^(2)),"^",15))&('+$GET(^("IB")))
- KILL ^PSRX("ACP",$PIECE(^PSRX(DA,0),"^",2),X,0,DA)
- +24 SET X=$PIECE($GET(DIKZ(2)),U,2)
- +25 IF X'=""
- DO SUSFDK^PSOUTLA
- +26 SET X=$PIECE($GET(DIKZ(2)),U,2)
- +27 IF X'=""
- IF X
- IF $PIECE(^PSRX(DA,0),"^",6)
- KILL ^PSRX("ADL",X,$PIECE(^PSRX(DA,0),"^",6),DA)
- +28 SET X=$PIECE($GET(DIKZ(2)),U,6)
- +29 IF X'=""
- KILL ^PSRX("AG",$EXTRACT(X,1,30),DA)
- +30 SET X=$PIECE($GET(DIKZ(2)),U,6)
- +31 IF X'=""
- if $PIECE($GET(^PSRX(DA,"STA")),"^")'=12
- KILL ^PS(55,$PIECE($GET(^PSRX(DA,0)),"^",2),"P","A",X,DA)
- +32 SET DIKZ(3)=$GET(^PSRX(DA,3))
- +33 SET X=$PIECE($GET(DIKZ(3)),U,5)
- +34 IF X'=""
- SET ^PS(55,$PIECE(^PSRX(DA,0),"^",2),"P","A",$PIECE(^PSRX(DA,2),"^",6),DA)=""
- KILL ^PS(55,$PIECE(^PSRX(DA,0),"^",2),"P","A",X,DA)
- +35 SET X=$PIECE($GET(DIKZ(2)),U,13)
- +36 IF X'=""
- KILL ^PSRX("AL",X,DA,0)
- +37 SET X=$PIECE($GET(DIKZ(2)),U,13)
- +38 IF X'=""
- if $PIECE(^PSRX(DA,0),"^",2)&($PIECE(^(0),"^",11)="W")&($PIECE($GET(^(2)),"^",2))&('$PIECE($GET(^(2)),"^",15))&(+$GET(^("IB")))
- SET ^PSRX("ACP",$PIECE(^PSRX(DA,0),"^",2),$PIECE(^(2),"^",2),0,DA)=""
- +39 SET X=$PIECE($GET(DIKZ(2)),U,15)
- +40 IF X'=""
- KILL ^PSRX("AJ",X,DA,0)
- +41 SET DIKZ("OR1")=$GET(^PSRX(DA,"OR1"))
- +42 SET X=$PIECE($GET(DIKZ("OR1")),U,8)
- +43 IF X'=""
- KILL ^PSRX("AFDT",$EXTRACT(X,1,30),DA)
- +44 SET X=$PIECE($GET(DIKZ("OR1")),U,2)
- +45 IF X'=""
- KILL ^PSRX("APL",$EXTRACT(X,1,30),DA)
- +46 SET X=$PIECE($GET(DIKZ("OR1")),U,3)
- +47 IF X'=""
- KILL ^PSRX("AO",$EXTRACT(X,1,30),DA)
- +48 SET X=$PIECE($GET(DIKZ("OR1")),U,4)
- +49 IF X'=""
- KILL ^PSRX("AQ",$EXTRACT(X,1,30),DA)
- +50 SET DIKZ("H")=$GET(^PSRX(DA,"H"))
- +51 SET X=$PIECE($GET(DIKZ("H")),U,1)
- +52 IF X'=""
- KILL ^PSRX("AH",$EXTRACT(X,1,30),DA)
- +53 SET X=$PIECE($GET(DIKZ(3)),U,3)
- +54 IF X'=""
- IF $DATA(^VA(200,+$PIECE(^PSRX(DA,0),"^",4),"PS"))
- IF $PIECE(^("PS"),"^",7)
- SET ^PSRX("ANCO",DA)=""
- +55 SET DIKZ("PARK")=$GET(^PSRX(DA,"PARK"))
- +56 SET X=$PIECE($GET(DIKZ("PARK")),U,1)
- +57 IF X'=""
- KILL ^PSRX("APARK",$EXTRACT(X,1,30),DA)
- +58 SET X=$PIECE($GET(DIKZ(0)),U,1)
- +59 IF X'=""
- KILL ^PSRX("B",$EXTRACT(X,1,30),DA)
- CR1 SET DIXR=175
- +1 KILL X
- +2 SET DIKZ("EXT")=$GET(^PSRX(DA,"EXT"))
- +3 SET X(1)=$PIECE(DIKZ("EXT"),U,1)
- +4 SET X(2)=$PIECE(DIKZ("EXT"),U,2)
- +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 if $DATA(DIKIL)
- SET (X2,X2(1),X2(2))=""
- +9 KILL ^PSRX("D",$EXTRACT(X(1),1,30),$EXTRACT(X(2),1,60),DA)
- End DoDot:1
- CR2 SET DIXR=250
- +1 KILL X
- +2 SET DIKZ(0)=$GET(^PSRX(DA,0))
- +3 SET X(1)=$PIECE(DIKZ(0),U,13)
- +4 SET X=$GET(X(1))
- +5 IF $GET(X(1))]""
- Begin DoDot:1
- +6 KILL X1,X2
- MERGE X1=X,X2=X
- +7 if $DATA(DIKIL)
- SET (X2,X2(1))=""
- +8 KILL ^PSRX("APKI",$EXTRACT(X,1,30),DA)
- End DoDot:1
- CR3 SET DIXR=461
- +1 KILL X
- +2 SET DIKZ(0)=$GET(^PSRX(DA,0))
- +3 SET X(1)=$PIECE(DIKZ(0),U,8)
- +4 SET DIKZ(2)=$GET(^PSRX(DA,2))
- +5 SET X(2)=$PIECE(DIKZ(2),U,13)
- +6 SET X=$GET(X(1))
- +7 IF $GET(X(1))]""
- IF $GET(X(2))]""
- Begin DoDot:1
- +8 KILL X1,X2
- MERGE X1=X,X2=X
- +9 if $DATA(DIKIL)
- SET (X2,X2(1),X2(2))=""
- +10 DO SKIDX^PSOPXRMU(.X,.DA,"O","K")
- End DoDot:1
- CR4 KILL X
- END GOTO ^PSOXZA2