PSJXR58 ; COMPILED XREF FOR FILE #55.07 ; 10/28/97
;
S DA(1)=0 S DA=0
A1 ;
I $D(DIKILL) K DIKLM S:$D(DA(2)) DIKLM=1 G:$D(DA(2)) 2 S DA(2)=DA(1) S DA(1)=DA,DA=0 G @DIKM1
A S DA(1)=$O(^PS(55,DA(2),5,DA(1))) I DA(1)'>0 S DA(1)=0 G END
1 ;
B S DA=$O(^PS(55,DA(2),5,DA(1),1,DA)) I DA'>0 S DA=0 Q:DIKM1=1 G A
2 ;
S DIKZ(0)=$G(^PS(55,DA(2),5,DA(1),1,DA,0))
S X=$P(DIKZ(0),U,1)
I X'="" I '$D(DIU(0)),'$D(PSGPO) S PSGAL(701)=X,PSGAL("C")=6000,PSGALFF=.01,PSGALFN=55.07 D ^PSGAL5
S X=$P(DIKZ(0),U,1)
I X'="" K ^PS(55,DA(2),5,DA(1),1,"B",$E(X,1,30),DA)
S X=$P(DIKZ(0),U,2)
I X'="" I '$D(DIU(0)),'$D(PSGPO) S PSGAL(702)=X,PSGAL("C")=6000,PSGALFF=.02,PSGALFN=55.07 D ^PSGAL5
S X=$P(DIKZ(0),U,5)
I X'="" I '$D(DIU(0)),'$D(PSGPO) S PSGAL(705)=X,PSGAL("C")=6000,PSGALFF=.05,PSGALFN=55.07 D ^PSGAL5
S X=$P(DIKZ(0),U,6)
I X'="" I '$D(DIU(0)),'$D(PSGPO) S PSGAL(706)=X,PSGAL("C")=6000,PSGALFF=.06,PSGALFN=55.07 D ^PSGAL5
S X=$P(DIKZ(0),U,7)
I X'="" I '$D(PSGRET),'$D(DIU(0)),'$D(PSGPO) S PSGAL(707)=X,PSGAL("C")=6000,PSGALFF=.07,PSGALFN=55.07 D ^PSGAL5
S X=$P(DIKZ(0),U,9)
I X'="" I '$D(DIU(0)),'$D(PSGPO) S PSGAL(709)=X,PSGAL("C")=6000,PSGALFF=.09,PSGALFN=55.07 D ^PSGAL5
S X=$P(DIKZ(0),U,10)
I X'="" I '$D(DIU(0)),'$D(PSGPO) S PSGAL(710)=X,PSGAL("C")=6000,PSGALFF=.1,PSGALFN=55.07 D ^PSGAL5
S X=$P(DIKZ(0),U,12)
I X'="" I '$D(PSGPEN),'$D(DIU(0)),'$D(PSGPO) S PSGAL(712)=X,PSGAL("C")=6000,PSGALFF=.12,PSGALFN=55.07 D ^PSGAL5
G:'$D(DIKLM) B Q:$D(DIKILL)
END G ^PSJXR59
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPSJXR58 1505 printed Nov 22, 2024@17:19:39 Page 2
PSJXR58 ; COMPILED XREF FOR FILE #55.07 ; 10/28/97
+1 ;
+2 SET DA(1)=0
SET DA=0
A1 ;
+1 IF $DATA(DIKILL)
KILL DIKLM
if $DATA(DA(2))
SET DIKLM=1
if $DATA(DA(2))
GOTO 2
SET DA(2)=DA(1)
SET DA(1)=DA
SET DA=0
GOTO @DIKM1
A SET DA(1)=$ORDER(^PS(55,DA(2),5,DA(1)))
IF DA(1)'>0
SET DA(1)=0
GOTO END
1 ;
B SET DA=$ORDER(^PS(55,DA(2),5,DA(1),1,DA))
IF DA'>0
SET DA=0
if DIKM1=1
QUIT
GOTO A
2 ;
+1 SET DIKZ(0)=$GET(^PS(55,DA(2),5,DA(1),1,DA,0))
+2 SET X=$PIECE(DIKZ(0),U,1)
+3 IF X'=""
IF '$DATA(DIU(0))
IF '$DATA(PSGPO)
SET PSGAL(701)=X
SET PSGAL("C")=6000
SET PSGALFF=.01
SET PSGALFN=55.07
DO ^PSGAL5
+4 SET X=$PIECE(DIKZ(0),U,1)
+5 IF X'=""
KILL ^PS(55,DA(2),5,DA(1),1,"B",$EXTRACT(X,1,30),DA)
+6 SET X=$PIECE(DIKZ(0),U,2)
+7 IF X'=""
IF '$DATA(DIU(0))
IF '$DATA(PSGPO)
SET PSGAL(702)=X
SET PSGAL("C")=6000
SET PSGALFF=.02
SET PSGALFN=55.07
DO ^PSGAL5
+8 SET X=$PIECE(DIKZ(0),U,5)
+9 IF X'=""
IF '$DATA(DIU(0))
IF '$DATA(PSGPO)
SET PSGAL(705)=X
SET PSGAL("C")=6000
SET PSGALFF=.05
SET PSGALFN=55.07
DO ^PSGAL5
+10 SET X=$PIECE(DIKZ(0),U,6)
+11 IF X'=""
IF '$DATA(DIU(0))
IF '$DATA(PSGPO)
SET PSGAL(706)=X
SET PSGAL("C")=6000
SET PSGALFF=.06
SET PSGALFN=55.07
DO ^PSGAL5
+12 SET X=$PIECE(DIKZ(0),U,7)
+13 IF X'=""
IF '$DATA(PSGRET)
IF '$DATA(DIU(0))
IF '$DATA(PSGPO)
SET PSGAL(707)=X
SET PSGAL("C")=6000
SET PSGALFF=.07
SET PSGALFN=55.07
DO ^PSGAL5
+14 SET X=$PIECE(DIKZ(0),U,9)
+15 IF X'=""
IF '$DATA(DIU(0))
IF '$DATA(PSGPO)
SET PSGAL(709)=X
SET PSGAL("C")=6000
SET PSGALFF=.09
SET PSGALFN=55.07
DO ^PSGAL5
+16 SET X=$PIECE(DIKZ(0),U,10)
+17 IF X'=""
IF '$DATA(DIU(0))
IF '$DATA(PSGPO)
SET PSGAL(710)=X
SET PSGAL("C")=6000
SET PSGALFF=.1
SET PSGALFN=55.07
DO ^PSGAL5
+18 SET X=$PIECE(DIKZ(0),U,12)
+19 IF X'=""
IF '$DATA(PSGPEN)
IF '$DATA(DIU(0))
IF '$DATA(PSGPO)
SET PSGAL(712)=X
SET PSGAL("C")=6000
SET PSGALFF=.12
SET PSGALFN=55.07
DO ^PSGAL5
+20 if '$DATA(DIKLM)
GOTO B
if $DATA(DIKILL)
QUIT
END GOTO ^PSJXR59