- LRARPLM ; IHS/DIR/AAB - PURGE LAB MONTHLY WORKLOADS (67.9) ; [ 07/22/2002 1:11 PM ]
- ;;5.2;LR;**1002,1003,1013**;JUL 15, 2002
- ;;5.2;LAB SERVICE;**59,162**;Sep 27, 1994
- START ;
- ;FIND ACTIVE LAB ARCHIVAL ACTIVITY
- S LRART=67.9,LRAR=90,LRARC=0 S LRARC=$O(^LAB(95.11,"O",3,LRART,LRARC)) G:LRARC="" ERROR D FILE^LRARU G:'$D(LRARC) EXIT
- ;UPDATE ACTION IN PROGRESS FIELDS
- S LRAR=90 D MRK^LRARU1
- MAKE ;Ask if backup tape made
- W !!!! S DIR(0)="Y",DIR("A")="Did you make a backup of the ARCHIVED LAB MONTHLY WORKLOADS file (67.99999)" D ^DIR K DIR
- I $D(DIRUT) D COMP^LRARU1 G EXIT
- I 'Y W !!!!,$C(7),"Make a backup of the ARCHIVED LAB MONTHLY WORKLOADS file before purging!" D COMP^LRARU1 G EXIT
- CHECK ;Ask if checked backup tape
- W !!!! S DIR(0)="Y",DIR("A")="Did you check the backup of the ARCHIVED LAB MONTHLY WORKLOADS file" D ^DIR K DIR
- I $D(DIRUT) D COMP^LRARU1 G EXIT
- I 'Y W !!!!,$C(7),"Check the backup before purging!" D COMP^LRARU1 G EXIT
- OKAY ;Ask if okay to delete
- W !!!! S DIR(0)="Y",DIR("A")="Okay to delete LAB MONTHLY WORKLOADS entries: " D ^DIR K DIR
- I $D(DIRUT)!('Y) W !!!!,"No purging done." D COMP^LRARU1 G EXIT
- QUEUE ;queue purge
- S ZTRTN="DOIT^LRARPLM",ZTSAVE("LR*")="",ZTDESC="PURGE ARCHIVED WKLD DATA",ZTIO="" D ^%ZTLOAD W:$D(ZTSK) !,"TASK #",ZTSK G EXIT
- ;
- DOIT ;Deleting dates in 67.9
- S LRAIEN=0
- F LRAI=0:0 S LRAIEN=$O(^LAB(95.11,LRARC,"RESULT",67.911,LRAIEN)) Q:+LRAIEN'>0 D
- . S DA(2)=$P(LRAIEN,",",3),DA(1)=$P(LRAIEN,",",2),DA=$P(LRAIEN,",")
- . S DIK="^LRO(67.9,"_DA(2)_",1,"_DA(1)_",1," D ^DIK
- END W !!!!,"DONE."
- D COMP^LRARU1
- I '$D(DIRUT) S LRAR=90 D UPDATE^LRARU1
- W !!,"I will now CLEAR out the Archived Lab Monthly Workloads global."
- S LRARX="" F LRARI=0:0 S LRARX=$O(^LAR(67.99999,LRARX)) Q:LRARX="" K ^LAR(67.99999,LRARX)
- S ^LAR(67.99999,0)="ARCHIVED LAB MONTHLY WORKLOADS^67.99999"
- W !!,">>> DONE <<<"
- K ^LAB(95.11,LRARC,"RESULT")
- S ZTREQ="@"
- EXIT K DA,DIK,DIR,DIRUT,LRADATE,LRADIV,LRADIVN,LRAI,LRAIEN,LRAINST,LRAJ,LRAK,LRAR,LRARC,LRARF,LRARI,LRARP,LRARST,LRART,LRARU,LRARX,Y
- D CLN^LRARU1
- Q
- ERROR W !!,$C(7),"I cannot find an active archival activity for file 67.9!"
- G EXIT
- Q
- LRARPLM ; IHS/DIR/AAB - PURGE LAB MONTHLY WORKLOADS (67.9) ; [ 07/22/2002 1:11 PM ]
- +1 ;;5.2;LR;**1002,1003,1013**;JUL 15, 2002
- +2 ;;5.2;LAB SERVICE;**59,162**;Sep 27, 1994
- START ;
- +1 ;FIND ACTIVE LAB ARCHIVAL ACTIVITY
- +2 SET LRART=67.9
- SET LRAR=90
- SET LRARC=0
- SET LRARC=$ORDER(^LAB(95.11,"O",3,LRART,LRARC))
- IF LRARC=""
- GOTO ERROR
- DO FILE^LRARU
- IF '$DATA(LRARC)
- GOTO EXIT
- +3 ;UPDATE ACTION IN PROGRESS FIELDS
- +4 SET LRAR=90
- DO MRK^LRARU1
- MAKE ;Ask if backup tape made
- +1 WRITE !!!!
- SET DIR(0)="Y"
- SET DIR("A")="Did you make a backup of the ARCHIVED LAB MONTHLY WORKLOADS file (67.99999)"
- DO ^DIR
- KILL DIR
- +2 IF $DATA(DIRUT)
- DO COMP^LRARU1
- GOTO EXIT
- +3 IF 'Y
- WRITE !!!!,$CHAR(7),"Make a backup of the ARCHIVED LAB MONTHLY WORKLOADS file before purging!"
- DO COMP^LRARU1
- GOTO EXIT
- CHECK ;Ask if checked backup tape
- +1 WRITE !!!!
- SET DIR(0)="Y"
- SET DIR("A")="Did you check the backup of the ARCHIVED LAB MONTHLY WORKLOADS file"
- DO ^DIR
- KILL DIR
- +2 IF $DATA(DIRUT)
- DO COMP^LRARU1
- GOTO EXIT
- +3 IF 'Y
- WRITE !!!!,$CHAR(7),"Check the backup before purging!"
- DO COMP^LRARU1
- GOTO EXIT
- OKAY ;Ask if okay to delete
- +1 WRITE !!!!
- SET DIR(0)="Y"
- SET DIR("A")="Okay to delete LAB MONTHLY WORKLOADS entries: "
- DO ^DIR
- KILL DIR
- +2 IF $DATA(DIRUT)!('Y)
- WRITE !!!!,"No purging done."
- DO COMP^LRARU1
- GOTO EXIT
- QUEUE ;queue purge
- +1 SET ZTRTN="DOIT^LRARPLM"
- SET ZTSAVE("LR*")=""
- SET ZTDESC="PURGE ARCHIVED WKLD DATA"
- SET ZTIO=""
- DO ^%ZTLOAD
- IF $DATA(ZTSK)
- WRITE !,"TASK #",ZTSK
- GOTO EXIT
- +2 ;
- DOIT ;Deleting dates in 67.9
- +1 SET LRAIEN=0
- +2 FOR LRAI=0:0
- SET LRAIEN=$ORDER(^LAB(95.11,LRARC,"RESULT",67.911,LRAIEN))
- IF +LRAIEN'>0
- QUIT
- Begin DoDot:1
- +3 SET DA(2)=$PIECE(LRAIEN,",",3)
- SET DA(1)=$PIECE(LRAIEN,",",2)
- SET DA=$PIECE(LRAIEN,",")
- +4 SET DIK="^LRO(67.9,"_DA(2)_",1,"_DA(1)_",1,"
- DO ^DIK
- End DoDot:1
- END WRITE !!!!,"DONE."
- +1 DO COMP^LRARU1
- +2 IF '$DATA(DIRUT)
- SET LRAR=90
- DO UPDATE^LRARU1
- +3 WRITE !!,"I will now CLEAR out the Archived Lab Monthly Workloads global."
- +4 SET LRARX=""
- FOR LRARI=0:0
- SET LRARX=$ORDER(^LAR(67.99999,LRARX))
- IF LRARX=""
- QUIT
- KILL ^LAR(67.99999,LRARX)
- +5 SET ^LAR(67.99999,0)="ARCHIVED LAB MONTHLY WORKLOADS^67.99999"
- +6 WRITE !!,">>> DONE <<<"
- +7 KILL ^LAB(95.11,LRARC,"RESULT")
- +8 SET ZTREQ="@"
- EXIT KILL DA,DIK,DIR,DIRUT,LRADATE,LRADIV,LRADIVN,LRAI,LRAIEN,LRAINST,LRAJ,LRAK,LRAR,LRARC,LRARF,LRARI,LRARP,LRARST,LRART,LRARU,LRARX,Y
- +1 DO CLN^LRARU1
- +2 QUIT
- ERROR WRITE !!,$CHAR(7),"I cannot find an active archival activity for file 67.9!"
- +1 GOTO EXIT
- +2 QUIT