PSSJXR18 ; COMPILED XREF FOR FILE #55.174 ; 10/05/22
;
S DA(1)=0 S DA=0
A1 ;
I $D(DIKILL) K DIKLM S:DIKM1=2 DIKLM=1 S:DIKM1'=2&'$G(DIKPUSH(2)) DIKPUSH(2)=1,DA(2)=DA(1),DA(1)=DA,DA=0 G @DIKM1
A S DA(1)=$O(^PS(55,DA(2),"PC",DA(1))) I DA(1)'>0 S DA(1)=0 G END
1 ;
B S DA=$O(^PS(55,DA(2),"PC",DA(1),"PCH",DA)) I DA'>0 S DA=0 Q:DIKM1=1 G A
2 ;
S DIKZ(0)=$G(^PS(55,DA(2),"PC",DA(1),"PCH",DA,0))
S X=$P($G(DIKZ(0)),U,1)
I X'="" K ^PS(55,DA(2),"PC",DA(1),"PCH","B",$E(X,1,30),DA)
G:'$D(DIKLM) B Q:$D(DIKILL)
END G ^PSSJXR19
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPSSJXR18 539 printed Nov 22, 2024@17:42:23 Page 2
PSSJXR18 ; COMPILED XREF FOR FILE #55.174 ; 10/05/22
+1 ;
+2 SET DA(1)=0
SET DA=0
A1 ;
+1 IF $DATA(DIKILL)
KILL DIKLM
if DIKM1=2
SET DIKLM=1
if DIKM1'=2&'$GET(DIKPUSH(2))
SET DIKPUSH(2)=1
SET DA(2)=DA(1)
SET DA(1)=DA
SET DA=0
GOTO @DIKM1
A SET DA(1)=$ORDER(^PS(55,DA(2),"PC",DA(1)))
IF DA(1)'>0
SET DA(1)=0
GOTO END
1 ;
B SET DA=$ORDER(^PS(55,DA(2),"PC",DA(1),"PCH",DA))
IF DA'>0
SET DA=0
if DIKM1=1
QUIT
GOTO A
2 ;
+1 SET DIKZ(0)=$GET(^PS(55,DA(2),"PC",DA(1),"PCH",DA,0))
+2 SET X=$PIECE($GET(DIKZ(0)),U,1)
+3 IF X'=""
KILL ^PS(55,DA(2),"PC",DA(1),"PCH","B",$EXTRACT(X,1,30),DA)
+4 if '$DATA(DIKLM)
GOTO B
if $DATA(DIKILL)
QUIT
END GOTO ^PSSJXR19