Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: APCDFPRG

APCDFPRG.m

Go to the documentation of this file.
  1. APCDFPRG ; IHS/CMI/LAB - PURGE FORMS TRACKING DATA ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. D INIT
  1. D GETDATE
  1. I $D(APCDQUIT) D EOJ Q
  1. ZIS W !! S %ZIS="PQ" D ^%ZIS
  1. I POP D EOJ Q
  1. I $D(IO("Q")) D TSKMN,EOJ Q
  1. DRIVER ;
  1. D PURGE
  1. W !!,"A Total of ",APCDCNT," Dates Purged.",!
  1. D EOJ
  1. Q
  1. ;
  1. INIT ;
  1. W !!,"Purging Data from Forms Tracking File!"
  1. S APCDCNT=0
  1. K APCDQUIT
  1. Q
  1. ;
  1. GETDATE ;
  1. S Y=DT X ^DD("DD") S APCDDTP=Y
  1. S %DT("A")="Purge forms up to and including what POSTING DATE? ",%DT="AEPX" W ! D ^%DT
  1. I Y=-1 S APCDQUIT="" Q
  1. S APCDPGE=Y X ^DD("DD") S APCDPGEY=Y
  1. Q
  1. ;
  1. PURGE ;
  1. S APCDX=0 F S APCDX=$O(^APCDFORM("B",APCDX)) Q:APCDX=""!(APCDX>APCDPGE) S APCDY=$O(^APCDFORM("B",APCDX,"")) I APCDY]"" D KILL
  1. Q
  1. ;
  1. KILL ;
  1. K DIE,DIU,DIV,DA,X,Y
  1. S DIE="^APCDFORM(",DA=APCDY,DR=".01///@" D ^DIE
  1. I $D(Y),'$D(ZTSK) W !,"****ERROR DELETING POSTING DATE ",APCDX," ***** - Notify Programmer!" Q
  1. K DIE,DR,DA,X,Y
  1. S APCDCNT=APCDCNT+1
  1. Q
  1. ;
  1. TSKMN ;
  1. K ZTSAVE F %="APCDPGE","APCDCNT" S ZTSAVE(%)=""
  1. S ZTIO=ION,ZTCPU=$G(IOCPU),ZTRTN="DRIVER^APCDFPRG",ZTDTH="",ZTDESC="PURGE DATA ENTRY FORMS FILE" D ^%ZTLOAD
  1. Q
  1. EOJ ;
  1. K APCDCNT,APCDPGE,X,Y,DIC,DA,DIE,DR,%DT,D,D0,D1,DQ,APCDDTP,APCDPGEY,POP,APCDX,APCDDUZ,APCDY
  1. I $D(ZTQUEUED) S ZTREQ="@" K ZTSK
  1. D ^%ZISC
  1. Q