ABSVTC ;VAMC ALTOONA/CTB_CLH - ALTOONA CREATE TIME CARD ;3/8/00 4:21 PM V ;;4.0;VOLUNTARY TIMEKEEPING;**6,10,18**;JULY 6, 1994 K ^TMP("ABSV",$J),N,REC,TCREC,X S ABSVXA="This program should ONLY be run during the first six (6) workdays of each month." S ABSVXA(1)="ARE YOU SURE YOU WANT TO CONTINUE",%=2 D ^ABSVYN Q:%'=1 W !! D ^ABSVSITE G OUT:'% W !! S %DT="AE",%DT("A")="Select Processing Month: " D ^%DT G OUT:Y<0 S DATE=$E(Y,1,5)_"00" I $D(^ABS(503331,"AF",DATE))<9 W !,"No daily records have been entered for this month.",*7 Q I $D(^ABS(503335,"AK",DATE)) D I %'=1 S X="< No Action Taken>*" D MSG^ABSVQ G OUT . S N=0,COUNT=0 F I=1:1 S N=$O(^ABS(503335,"AK",DATE,N)) Q:'N I $D(^ABS(503335,N,0)),$P(^(0),"^",12)=ABSV("SITE") S COUNT=COUNT+1 . I 'COUNT S %=1 Q . S ABSVXA=COUNT_" Time Card"_$S((I-1)>0:"s",1:"")_" already exist"_$S((I-1)>0:"",1:"s")_" for station "_ABSV("SITE")_" for "_$$FULLDAT^ABSVU2(DATE)_"." . S ABSVXA(1)="Continuing will DELETE all these cards from the system.",ABSVXA(1.5)=" " . S ABSVXA(2)="ARE YOU SURE YOU WANT TO CONTINUE",ABSVXB="",%=2 D ^ABSVYN . QUIT:%'=1 . S ABSVXA="ARE YOU ABSOLUTELY POSITIVE",ABSVXB="",%=2 W !,*7 D ^ABSVYN . I %=1 W !!,"OK, Here we go.",!,*7 . QUIT S ZTDESC="Roll up Voluntary time card data",ZTRTN="QUE^ABSVTC",ZTSAVE("DATE")="",ZTSAVE("ABSV*")="" D ^ABSVQ OUT K %,%DT,ABSVXW,ABSVXX,ABSVX1,ABSVXY1,COMB,COUNT,DATE,DAY,DCC,DIJ,DIOP,DIPT,DLAYGO,F,FLDS,HRS,I,L,N,NAME,O,ORG,R1,REC,W,X,Y,VOLDA,Z,ZX Q QUE ; ;THE FOLLOWING LINE DELETES ALL TIME CARDS FOR THE MONTH I $D(^ABS(503335,"AK",DATE)) D . I '$D(ZTQUEUED)&(IO=IO(0)) S X="**while I clean up the time card file" D WAIT^ABSVYN . S DA=0 F S DA=$O(^ABS(503335,"AK",DATE,DA)) Q:'DA I $D(^ABS(503335,DA,0)),$P(^(0),"^",12)=ABSV("SITE") S DIK="^ABS(503335," D ^DIK W "." . QUIT ; ;THE FOLLOWING CODE ROLLS UP ALL THE TIME FOR EACH VOLUNTEER AND STORES IN IT ^TMP("ABSV",$J,VOLUNTEER DA NUMBER) I '$D(ZTQUEUED)&(IO=IO(0)) S X="**while I roll up the times for each volunteer" D WAIT^ABSVYN K ^TMP("ABSV",$J) S N=0 F S N=$O(^ABS(503331,"AF",DATE,N)) Q:'N I $D(^ABS(503331,N,0)) S REC=^(0) I $P(REC,"^",2)=DATE,$P(REC,"^",7)=ABSV("SITE") D . S NAME=$P(REC,"^"),HRS=$P(REC,"^",5),COMB=$P(REC,"^",6),DAY=+$E($P(REC,"^",3),6,7) . S:'$D(^TMP("ABSV",$J,NAME,COMB)) $P(^(COMB),"^",32)="" S:'$D(^TMP("ABSV",$J,NAME,COMB,0)) ^(0)=$P(REC,"^",4)_"^"_$P(REC,"^",8) . I +HRS'=0 S:HRS>9 HRS=9 S $P(^(COMB),"^",DAY)=$P(^TMP("ABSV",$J,NAME,COMB),"^",DAY)+HRS,$P(^(COMB),"^",32)=$P(^(COMB),"^",32)+HRS . QUIT ; S VOLDA=0 F S VOLDA=$O(^TMP("ABSV",$J,VOLDA)) Q:'VOLDA W "." D . S COMB=0 F S COMB=$O(^TMP("ABSV",$J,VOLDA,COMB)) Q:COMB="" W "." D . . Q:'$D(^ABS(503330,+$G(VOLDA),0)) . . S X=VOLDA,DLAYGO=503335,DIC="^ABS(503335,",DIC(0)="LMNZ" . . K DO D FILE^DICN K DIC,DLAYGO . . I +Y<0 W "*Problem with "_$P(^ABS(503330,VOLDA,0),"^")_", Combination "_COMB_". Time Card was not created. *" QUIT . . S DA=+Y,ORG=$G(^TMP("ABSV",$J,VOLDA,COMB,0)),DR="1////"_COMB_";2////0;4////"_DATE_";1.9////1;1.1////"_$P(ORG,"^")_";1.2////"_$P(ORG,"^",2)_";3////"_ABSV("SITE")_";4.5////1" . . S DIE="^ABS(503335," D ^DIE . . S ^ABS(503335,DA,1)=^TMP("ABSV",$J,VOLDA,COMB) . . QUIT . QUIT ;;PRINT TIME CARD S IOP=ABIOP X S DIC="^ABS(503335,",L=0,(TO,FR)=DATE,DIS(0)="I $P($G(^ABS(503335,D0,0)),U,12)=ABSV(""SITE"")",BY="[ABSV TC SORT]",FLDS="[ABSV TC PRINT]" D EN1^DIP S IOP=ABIOP S DIC="^ABS(503335,",L=0,(TO,FR)=DATE,DIS(0)="I $P($G(^ABS(503335,D0,0)),U,12)=ABSV(""SITE""),$$COUNT^ABSVTC($G(^ABS(503335,D0,1)))>26",BY="[ABSV TC SORT]",FLDS="[ABSV TC PRINT]",DHD="TIMECARDS HAVING MORE THAN 26 ENTRIES" D EN1^DIP S IOP=ABIOP S DIC="^ABS(503335,",L=0,(TO,FR)=DATE,DIS(0)="I $P($G(^ABS(503335,D0,0)),U,12)=ABSV(""SITE""),'$$COMB^ABSVTC(D0)",BY="[ABSV TC SORT]",FLDS="[ABSV ERROR LIST]",DHD="TIMECARDS WITH COMBINATIONS NOT FOUND IN MASTER FILE" D EN1^DIP K ^TMP("ABSV",$J),%W,%X,B,DP,DR QUIT COUNT(X) ;DOES RECORD HAVE MORE THAN 26 ENTRIES N COUNT,I S COUNT=0 F I=1:1:31 I $P(X,"^",I)>0 S COUNT=COUNT+1 Q COUNT COMB(D0) ;DETERMINES IF COMBINATION STILL EXISTS IN MASTER FILE ;VERIFIES THAT 135AQ is not used in combination N N,DA,OK,X,XCOMB,XSITE,SITE,COMB S OK=0,X=$G(^ABS(503335,D0,0)),DA=+X,COMB=$P(X,"^",2),SITE=$P(X,"^",12) S N=0 F S N=$O(^ABS(503330,DA,1,N)) Q:'N S X=$G(^ABS(503330,DA,1,N,0)) Q:X="" D Q:OK . S XCOMB=$P(X,"^",5),XSITE=$P(X,"-") . I (XCOMB=COMB),XSITE=SITE S OK=1 . QUIT Q OK VISIT(D0) ; N Z,I,X S Z=$G(^ABS(503335,D0,1)) S X=0 F I=1:1:31 I $P(Z,"^",I)]"" S X=X+1 Q X