[613] | 1 | PRCFOOR1 ;WISC@ALTOONA/CTB-SNAPSHOT OF CP BALANCES ;9/29/94 8:40 AM
|
---|
| 2 | V ;;5.1;IFCAP;;Oct 20, 2000
|
---|
| 3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
| 4 | ;;THIS ROUTINE WILL RECALCULATE ALL CP BALANCES FOR THE CURRENT FY,
|
---|
| 5 | ;;THEN TAKE A SNAPSHOT OF THE BALANCE FOR THE CURRENT QUARTER
|
---|
| 6 | ;;AND STORE THE BALANCE IN 420. IT WILL THEN ZERO OUT ALL QUARTERS
|
---|
| 7 | ;;IN THE CURRENT FY - EXCEPT FOR THE CURRENT QUARTER.
|
---|
| 8 | ;;
|
---|
| 9 | ;RECALCULATE ALL CONTROL POINTS
|
---|
| 10 | S X="Beginning recalculation of balances for ALL Fund Control Points." D MSG^PRCFQ
|
---|
| 11 | D ALLCP^PRCBRCP
|
---|
| 12 | S X="< Recalculation complete>*" D MSG^PRCFQ
|
---|
| 13 | X S X=DT D FYQ^PRCFSITE
|
---|
| 14 | STA W !! S X="Beginning process to record existing Fund Control Point balances in file 420.99. (Snapshot)" D MSG^PRCFQ
|
---|
| 15 | F PRC("SITE")=0:0 S PRC("SITE")=$O(^PRC(420,PRC("SITE"))) Q:+PRC("SITE")=0 W !,PRC("SITE") D CP
|
---|
| 16 | S X="< Snapshot complete>*" D MSG^PRCFQ
|
---|
| 17 | ZERO W !! S X="Beginning process to 'zero' out previous quarter balances.*" D MSG^PRCFQ
|
---|
| 18 | N PRCRI S PRCRI(420.99)=0
|
---|
| 19 | F S PRCRI(420.99)=$O(^PRCU(420.99,PRCRI(420.99))) Q:'PRCRI(420.99) S DA=PRCRI(420.99) D XF
|
---|
| 20 | S X="< Process complete>*" D MSG^PRCFQ
|
---|
| 21 | GPF W !! S X="Beginning process to summarize General Post Fund Control Points" D MSG^PRCFQ
|
---|
| 22 | ;CREATE RECORD FOR GENERAL POST FUND SUMMARY CONTROL POINT
|
---|
| 23 | ;SUMMARIZE, BY STATION, GPF BALANCES
|
---|
| 24 | ;SET BALANCES
|
---|
| 25 | ;ZERO CURRENT QUARTER
|
---|
| 26 | S XDA=0 F S XDA=$O(^PRCU(420.99,XDA)) Q:'XDA I $P(^(XDA,0),"^",11)=1 D GPF1(XDA)
|
---|
| 27 | S SITE=0
|
---|
| 28 | F S SITE=$O(GPFBAL(SITE)) Q:'SITE D GPF2(SITE,GPFBAL(SITE))
|
---|
| 29 | K PRC
|
---|
| 30 | S X="< Process complete>*" D MSG^PRCFQ
|
---|
| 31 | QUIT
|
---|
| 32 | GPF2(SITE,AMT) ;SET BALANCE TO GPF SUMMARY CONTROL POINT
|
---|
| 33 | S PRC("CP")=$O(^PRC(420,SITE,1,"C","GPFS FMS CONVERSION",0))
|
---|
| 34 | I PRC("CP")="" QUIT
|
---|
| 35 | S PRC("CP")=$P(^PRC(420,SITE,1,PRC("CP"),0)," ")
|
---|
| 36 | S STRING=SITE_"-"_PRC("FY")_"-"_PRC("QTR")_"-"_PRC("CP")
|
---|
| 37 | S X=STRING,DIC=420.99,DIC(0)="M" D ^DIC Q:+Y<0
|
---|
| 38 | S $P(^PRCU(420.99,+Y,0),"^",3)=AMT
|
---|
| 39 | D CONV^PRCSREC2(STRING,-AMT,"FMS CONVERSION ADJUSTMENT")
|
---|
| 40 | QUIT
|
---|
| 41 | GPF1(XDA) ;ZERO BALANCE IN EXISTING GPF CONTROL POINTS
|
---|
| 42 | N BAL,SITE,NODE,ID,AMT,STRING
|
---|
| 43 | S SITE=$P(^PRCU(420.99,XDA,0),"-"),BAL=$P(^(0),"^",3),GPFBAL(SITE)=$G(GPFBAL(SITE))+BAL
|
---|
| 44 | ;ZERO CURRENT QUARTER FOR GPF CP
|
---|
| 45 | S NODE=$G(^PRCU(420.99,XDA,0)) Q:NODE=""
|
---|
| 46 | S ID=$P(NODE,"^"),AMT=+$P(NODE,"^",3)
|
---|
| 47 | Q:AMT=0
|
---|
| 48 | S STRING=ID,$P(STRING,"-",3)=PRC("QTR") D CONV^PRCSREC2(STRING,+AMT,"FMS CONVERSION ADJUSTMENT")
|
---|
| 49 | S $P(^PRCU(420.99,XDA,0),"^",3)=0
|
---|
| 50 | W "."
|
---|
| 51 | QUIT
|
---|
| 52 | XF ;
|
---|
| 53 | N NODE,ID,QTR,I,STRING
|
---|
| 54 | S NODE=$G(^PRCU(420.99,DA,0)) Q:NODE=""
|
---|
| 55 | S ID=$P(NODE,"^"),QTR(1)=$P(NODE,"^",4),QTR(2)=$P(NODE,"^",5),QTR(3)=$P(NODE,"^",6)
|
---|
| 56 | F I=1:1:3 Q:'$D(QTR(I)) I +QTR(I)'=0 S STRING=ID,$P(STRING,"-",3)=I D CONV^PRCSREC2(STRING,+QTR(I),"FMS CONVERSION ADJUSTMENT")
|
---|
| 57 | W "."
|
---|
| 58 | QUIT
|
---|
| 59 | CP F PRC("CPN")=0:0 S PRC("CPN")=$O(^PRC(420,PRC("SITE"),1,PRC("CPN"))),PRC("CP")="" Q:+PRC("CPN")=0!(PRC("CPN")=9999) I $D(^(PRC("CPN"),0)) S PRC("CP")=$P(^(0)," ") Q:PRC("CP")="" D QTR
|
---|
| 60 | Q
|
---|
| 61 | QTR ;
|
---|
| 62 | NEW SNAP,DIC,DLAYGO,AMT,DATE,Y,DA,DR,DIE,TYPE,QTRBAL
|
---|
| 63 | S TYPE=$P($G(^PRC(420,PRC("SITE"),1,+PRC("CP"),0)),"^",12)
|
---|
| 64 | S X=$G(^PRC(420,PRC("SITE"),1,+PRC("CP"),4,PRC("FY"),0))
|
---|
| 65 | S SNAP=$P(X,"^",PRC("QTR")+5),SNAP=0 ;mod for conversion 3 only
|
---|
| 66 | I PRC("QTR")>1 F I=1:1:(PRC("QTR")-1) S QTRBAL(I)=$P(X,"^",I+5)
|
---|
| 67 | S (DIC,DLAYGO)=420.99,DIC(0)="MNL",AMT=X,X=PRC("SITE")_"-"_PRC("FY")_"-"_PRC("QTR")_"-"_PRC("CP"),DATE=DT D ^DIC
|
---|
| 68 | I Y<0 S FAIL="" QUIT
|
---|
| 69 | S DA=+Y,$P(^PRCU(420.99,DA,0),"^",2)=DATE,$P(^(0),"^",3)=SNAP,$P(^(0),"^",4)=$G(QTRBAL(1)),$P(^(0),"^",5)=$G(QTRBAL(2)),$P(^(0),"^",6)=$G(QTRBAL(3))
|
---|
| 70 | S $P(^PRCU(420.99,DA,0),"^",11)=+TYPE,$P(^(0),"^",7)=PRC("QTR")
|
---|
| 71 | W "." QUIT
|
---|