DGPTXX14 ; COMPILED XREF FOR FILE #45.06 ; 02/01/23
;
S DA=0
A1 ;
I $D(DISET) K DIKLM S:DIKM1=1 DIKLM=1 G @DIKM1
0 ;
A S DA=$O(^DGPT(DA(1),"C",DA)) I DA'>0 S DA=0 G END
1 ;
S DIKZ(0)=$G(^DGPT(DA(1),"C",DA,0))
S X=$P($G(DIKZ(0)),U,1)
I X'="" S ^DGPT(DA(1),"C","B",$E(X,1,30),DA)=""
S X=$P($G(DIKZ(0)),U,6)
I X'="" D ADD^AUPNVSIT
CR1 S DIXR=624
K X
S X(1)=$P(DIKZ(0),U,1)
S X(2)=$P(DIKZ(0),U,7)
S X(3)=$P(DIKZ(0),U,9)
S X=$G(X(1))
D
. K X1,X2 M X1=X,X2=X
. N DIKXARR M DIKXARR=X S DIKCOND=1
. S X='X2(2)&'X2(3)&X2(1)
. S DIKCOND=$G(X) K X M X=DIKXARR
. Q:'DIKCOND
. S ^DGPT("AB",X2(1),DA(1),DA)=""
CR2 S DIXR=834
K X
S DIKZ(0)=$G(^DGPT(DA(1),"C",DA,0))
S X(1)=$P(DIKZ(0),U,1)
S X(2)=$P(DIKZ(0),U,4)
S X(3)=$P(DIKZ(0),U,9)
S X=$G(X(1))
D
. K X1,X2 M X1=X,X2=X
. D NOTIFY^DGPTDD(.X1,.X2,.DA,45,"SERVICE","SET")
CR3 K X
G:'$D(DIKLM) A Q:$D(DISET)
END Q
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HDGPTXX14 918 printed Oct 16, 2024@18:54:56 Page 2
DGPTXX14 ; COMPILED XREF FOR FILE #45.06 ; 02/01/23
+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),"C",DA))
IF DA'>0
SET DA=0
GOTO END
1 ;
+1 SET DIKZ(0)=$GET(^DGPT(DA(1),"C",DA,0))
+2 SET X=$PIECE($GET(DIKZ(0)),U,1)
+3 IF X'=""
SET ^DGPT(DA(1),"C","B",$EXTRACT(X,1,30),DA)=""
+4 SET X=$PIECE($GET(DIKZ(0)),U,6)
+5 IF X'=""
DO ADD^AUPNVSIT
CR1 SET DIXR=624
+1 KILL X
+2 SET X(1)=$PIECE(DIKZ(0),U,1)
+3 SET X(2)=$PIECE(DIKZ(0),U,7)
+4 SET X(3)=$PIECE(DIKZ(0),U,9)
+5 SET X=$GET(X(1))
+6 Begin DoDot:1
+7 KILL X1,X2
MERGE X1=X,X2=X
+8 NEW DIKXARR
MERGE DIKXARR=X
SET DIKCOND=1
+9 SET X='X2(2)&'X2(3)&X2(1)
+10 SET DIKCOND=$GET(X)
KILL X
MERGE X=DIKXARR
+11 if 'DIKCOND
QUIT
+12 SET ^DGPT("AB",X2(1),DA(1),DA)=""
End DoDot:1
CR2 SET DIXR=834
+1 KILL X
+2 SET DIKZ(0)=$GET(^DGPT(DA(1),"C",DA,0))
+3 SET X(1)=$PIECE(DIKZ(0),U,1)
+4 SET X(2)=$PIECE(DIKZ(0),U,4)
+5 SET X(3)=$PIECE(DIKZ(0),U,9)
+6 SET X=$GET(X(1))
+7 Begin DoDot:1
+8 KILL X1,X2
MERGE X1=X,X2=X
+9 DO NOTIFY^DGPTDD(.X1,.X2,.DA,45,"SERVICE","SET")
End DoDot:1
CR3 KILL X
+1 if '$DATA(DIKLM)
GOTO A
if $DATA(DISET)
QUIT
END QUIT