BPSOSK ;BHAM ISC/FCS/DRS/DLF - Winnow ECME data ;06/01/2004 ;;1.0;E CLAIMS MGMT ENGINE;**1,5**;JUN 2004;Build 45 ;;Per VHA Directive 2004-038, this routine should not be modified. Q ; ; MAIN MAIN ; ; Set lock so only one job is running at a time L +^TMP($T(+0)):0 Q:'$T ; ; New the common variables N SLOT,TESTING ; ; Initialize the log and store slot in BPS Setup ; Also keep previous two logs. S SLOT=DT+.5 D LOG^BPSOSL(SLOT,"Start Purge","DT") ; S TESTING=$$GET1^DIQ(9002313.99,1,2341.01,"I") I TESTING D LOG^BPSOSL(SLOT,"Test Mode - no data will be deleted") I 'TESTING D LOG^BPSOSL(SLOT,"Purge Mode - data may be deleted") ; ; Delete the log file N FILE,AGE,IEN,UPDT,IENS,MSG,FDA,ENDDT S FILE=9002313.12 ; ; Log start message D LOG^BPSOSL(SLOT,"Winnowing file BPS LOG") ; ; Get number of days to keep on the system S AGE=$$GET1^DIQ(9002313.99,1,2341.03) I 'AGE D . S AGE=365 . I '$D(^BPS(9002313.99,1)) Q . N DIE,DA,DR,DTOUT . S DIE=9002313.99,DA=1,DR="2341.03///"_AGE . D ^DIE ; ; Calculate end date of purge N X,X1,X2 S X1=DT,X2=(AGE*-1) D C^%DTC S ENDDT=X D LOG^BPSOSL(SLOT,"AGE is "_AGE_". End Date is "_ENDDT) ; ; Loop through data and delete it S UPDT="" F S UPDT=$O(^BPS(FILE,"AC",UPDT)) Q:UPDT'