PRSARC09 ;WOIFO/JAH - automatically load continuous recess;5/31/07 ;;4.0;PAID;**112**;Sep 21, 1995;Build 54 ;;Per VHA Directive 2004-038, this routine should not be modified. Q ; AUTOREC(AWSST,AWSEND) ; Ask user: automatically schedule all available ; recess, continuously from a user specified date. W @IOF,!! N DIR,X,Y,DIRUT,I S DIR("A")="Set available recess, continously from a particular date" S DIR("?",1)=" You may now select a recess start date and all available " S DIR("?",2)=" recess will automatically be scheduled fully for each " S DIR("?",3)=" week from the date you pick. If you answer NO, you may" S DIR("?",4)=" schedule recess by selecting weeks in the recess editor." S DIR("?",5)=" " S DIR("?",6)=" There are "_$P(PRSRWHRS,U,3)_" weeks or "_$P(PRSRWHRS,U,2)_" hours available for recess." S I=0 F S I=$O(DIR("?",I)) Q:I'>0 W !,DIR("?",I) S DIR("B")="YES" S DIR(0)="Y" D ^DIR S (PRSAUTOR)=+Y Q:'PRSAUTOR 0 ; Find last date recess can start N X,X1,X2,RECSTART S X2=-(7*(($P(PRSRWHRS,U,3)+.9\1)-1)),X1=AWSEND D C^%DTC S AWSEND=X S RECSTART=$$AWSTART^PRSARC03(AWSST,AWSEND,"Enter Recess Start Date") Q:RECSTART'>0 0 ; convert RECESS start to 1st day of week N D1,DAY,PPI,PPE S D1=RECSTART D PP^PRSAPPU N X1,X2,X,%H S X1=D1,X2=-$S(DAY<8:DAY-1,1:DAY-8) D C^%DTC S RECSTART=X Q PRSAUTOR_U_RECSTART ; ; ADDAUTOR(PRSAUTOR) ; auto add recess to listman ; N LSTITEM,CTRH1,CTRH2,LOFHRS,LOFTH1,LOFTH2,WKDY1 N ITEM,Y,RH1,RH2,OUT,HRSLEFT,RDEFAULT,CRH,TOURHRS,D1,PPI,PPE ; ; get tour hours from latest pay period on file N PPI S PPI=$O(^PRST(458,999999),-1) N TH D TOURHRS^PRSARC07(.TH,PPI,+PRSNURSE,"") S LOFTH1=TH("W1"),LOFTH2=TH("W2") ; ; Initialize hours left for recess to 20 since 1 pay period minimum ; is 25% of 80 hours S HRSLEFT=20 S (OUT,ITEM,RDEFAULT)=0 S WKDY1=$P(PRSAUTOR,U,2)-1 F S WKDY1=$O(FMWKS(WKDY1)) Q:WKDY1'>0!(HRSLEFT'>0) D . S HRSLEFT=$$HRSLEFT^PRSARC03() . Q:HRSLEFT'>0 . S ITEM=$G(FMWKS(WKDY1)) . S LSTITEM=$G(^TMP("PRSLI",$J,ITEM)) . S D1=WKDY1 D PP^PRSAPPU . N TH D TOURHRS^PRSARC07(.TH,PPI,+PRSNURSE,"") . S CTRH1=+TH("W1"),CTRH2=+TH("W2") . S TOURHRS=$S(ITEM#2:CTRH1,1:CTRH2) . S LOFHRS=$S(ITEM#2:LOFTH1,1:LOFTH2) . I TOURHRS'>0 S TOURHRS=LOFHRS . ;get remaining hours to schedule for FY . I HRSLEFT0 D .. K ^TMP("PRSRW",$J,ITEM) . E D .. S ^TMP("PRSRW",$J,ITEM)=LSTITEM_U_RDEFAULT_U_WKDY1_U_"0" ; Q ;