PRC5C1 ;WISC/PLT-PRC5C continue ; 10/13/94 9:13 AM
V ;;5.0;IFCAP;**27**;4/21/95
QUIT ;invalid entry
;
EN(PRCZ) ;PRCZ='FND', 'PCL', 'PAC' OR 'CPF'
N PRCRI,PRCA,PRCB,A
S PRCRI(420.92)=0,PRCERR=""
F S PRCRI(420.92)=$O(^PRCU(420.92,"B",PRCZ,PRCRI(420.92))) Q:'PRCRI(420.92) D
. S PRCA=^PRCU(420.92,PRCRI(420.92),0)
. QUIT:$P(PRCA,"^",7)=""
. S PRCA($P(PRCA,"^",7))=$P(PRCA,"^",4)
. S:$G(PRCB)="" PRCB=$P($P(PRCA,"^",7),"-",2)
. QUIT
S:$G(PRCB)="" PRCB=1
F A=1:1:PRCB S PRCA=A_"-"_PRCB S:$G(PRCA(PRCA))="" PRCERR=1
QUIT
;
EN1 ;check prelode distributed standard dictionaty (prc*4*28 installation)
N A
S PRCERR=""
F A=420.13,420.131:.001:420.138 I '$D(^PRCD(A,0)) S PRCERR=1 QUIT
I 'PRCERR F A=420.14:.01:420.19 I '$D(^PRCD(A,0)) S PRCERR=1 QUIT
I 'PRCERR F A=420.1999 I '$D(^PRCD(A,0)) S PRCERR=1 QUIT
QUIT
;
EN2 ;check fms security code in file 411
N PRCRI
S PRCRI(411)=0 F S PRCRI(411)=$O(^PRC(411,PRCRI(411))) QUIT:PRCRI(411)>999999!'PRCRI(411) I '$P($G(^(PRCRI(411),9)),"^",2) S PRCERR=1 QUIT
QUIT
EN3 ;REINDEX FILE 420 SPECIAL CONTROL POINT "AD"
D EN^DDIOL("REINDEX SPECIAL CONTROL POINT INDEX 'AD' STARTS AT "_$$NOW^PRC5A)
N PRCRI
S PRCRI(420)=0
F S PRCRI(420)=$O(^PRC(420,PRCRI(420))) Q:'PRCRI(420) D
. S PRCRI(420.01)=0
. F S PRCRI(420.01)=$O(^PRC(420,PRCRI(420),1,PRCRI(420.01))) Q:'PRCRI(420.01) D:$P($G(^(PRCRI(420.01),0)),"^",12)
.. N DIK,DA
.. S DIK="^PRC(420,"_PRCRI(420)_",1,",DIK(1)="13^AD"
.. S DA(1)=PRCRI(420),DA=PRCRI(420.01)
.. D EN^DIK
.. QUIT
. QUIT
D EN^DDIOL("REINDEX SPECIAL CONTROL POINT INDEX 'AD' ENDS AT "_$$NOW^PRC5A)
QUIT
;
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPRC5C1 1646 printed Oct 16, 2024@18:00:44 Page 2
PRC5C1 ;WISC/PLT-PRC5C continue ; 10/13/94 9:13 AM
V ;;5.0;IFCAP;**27**;4/21/95
+1 ;invalid entry
QUIT
+2 ;
EN(PRCZ) ;PRCZ='FND', 'PCL', 'PAC' OR 'CPF'
+1 NEW PRCRI,PRCA,PRCB,A
+2 SET PRCRI(420.92)=0
SET PRCERR=""
+3 FOR
SET PRCRI(420.92)=$ORDER(^PRCU(420.92,"B",PRCZ,PRCRI(420.92)))
if 'PRCRI(420.92)
QUIT
Begin DoDot:1
+4 SET PRCA=^PRCU(420.92,PRCRI(420.92),0)
+5 if $PIECE(PRCA,"^",7)=""
QUIT
+6 SET PRCA($PIECE(PRCA,"^",7))=$PIECE(PRCA,"^",4)
+7 if $GET(PRCB)=""
SET PRCB=$PIECE($PIECE(PRCA,"^",7),"-",2)
+8 QUIT
End DoDot:1
+9 if $GET(PRCB)=""
SET PRCB=1
+10 FOR A=1:1:PRCB
SET PRCA=A_"-"_PRCB
if $GET(PRCA(PRCA))=""
SET PRCERR=1
+11 QUIT
+12 ;
EN1 ;check prelode distributed standard dictionaty (prc*4*28 installation)
+1 NEW A
+2 SET PRCERR=""
+3 FOR A=420.13,420.131:.001:420.138
IF '$DATA(^PRCD(A,0))
SET PRCERR=1
QUIT
+4 IF 'PRCERR
FOR A=420.14:.01:420.19
IF '$DATA(^PRCD(A,0))
SET PRCERR=1
QUIT
+5 IF 'PRCERR
FOR A=420.1999
IF '$DATA(^PRCD(A,0))
SET PRCERR=1
QUIT
+6 QUIT
+7 ;
EN2 ;check fms security code in file 411
+1 NEW PRCRI
+2 SET PRCRI(411)=0
FOR
SET PRCRI(411)=$ORDER(^PRC(411,PRCRI(411)))
if PRCRI(411)>999999!'PRCRI(411)
QUIT
IF '$PIECE($GET(^(PRCRI(411),9)),"^",2)
SET PRCERR=1
QUIT
+3 QUIT
EN3 ;REINDEX FILE 420 SPECIAL CONTROL POINT "AD"
+1 DO EN^DDIOL("REINDEX SPECIAL CONTROL POINT INDEX 'AD' STARTS AT "_$$NOW^PRC5A)
+2 NEW PRCRI
+3 SET PRCRI(420)=0
+4 FOR
SET PRCRI(420)=$ORDER(^PRC(420,PRCRI(420)))
if 'PRCRI(420)
QUIT
Begin DoDot:1
+5 SET PRCRI(420.01)=0
+6 FOR
SET PRCRI(420.01)=$ORDER(^PRC(420,PRCRI(420),1,PRCRI(420.01)))
if 'PRCRI(420.01)
QUIT
if $PIECE($GET(^(PRCRI(420.01),0)),"^",12)
Begin DoDot:2
+7 NEW DIK,DA
+8 SET DIK="^PRC(420,"_PRCRI(420)_",1,"
SET DIK(1)="13^AD"
+9 SET DA(1)=PRCRI(420)
SET DA=PRCRI(420.01)
+10 DO EN^DIK
+11 QUIT
End DoDot:2
+12 QUIT
End DoDot:1
+13 DO EN^DDIOL("REINDEX SPECIAL CONTROL POINT INDEX 'AD' ENDS AT "_$$NOW^PRC5A)
+14 QUIT
+15 ;