1 | PRCFFUD1 ;WISC/SJG-UTILITY FOR CARRY FORWARD ;3/27/96 15:14
|
---|
2 | ;;5.1;IFCAP;**58**;Oct 20, 2000
|
---|
3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | ;
|
---|
5 | QUIT
|
---|
6 | ; This utility will determine the date that is to be used for the
|
---|
7 | ; obligation processing date for Supply Fund transactions
|
---|
8 | ;
|
---|
9 | EN() ;
|
---|
10 | N OPENQTR,PRIMARY,PODATE
|
---|
11 | S RETDATE=""
|
---|
12 | S OPENQTR=$$NP^PRC0B("^PRC(420,"_+PRC("SITE")_",",0,9)
|
---|
13 | S PRIMARY=$$NP^PRC0B("^PRC(442,"_+PO_",",0,12)
|
---|
14 | S PODATE=$$NP^PRC0B("^PRC(442,"_+PO_",",1,15)
|
---|
15 | REQ ; 2237 Request on Purchase Order
|
---|
16 | I $G(PRIMARY)]"" D G QUIT
|
---|
17 | .S RETDATE=$G(OPENQTR)
|
---|
18 | .I $G(PODATE)>$G(OPENQTR) S RETDATE=PODATE
|
---|
19 | .I $G(PODATE)<$G(OPENQTR) D NOW^%DTC S RETDATE=X
|
---|
20 | .Q
|
---|
21 | NOREQ ; No 2237 Request on Purchase Order
|
---|
22 | I $G(PRIMARY)="" D G QUIT
|
---|
23 | .I $G(PODATE)<$G(OPENQTR) D NOW^%DTC S RETDATE=X Q
|
---|
24 | .S RETDATE=PODATE
|
---|
25 | .Q
|
---|
26 | QUIT I RETDATE="" D NOW^%DTC S RETDATE=X
|
---|
27 | QUIT RETDATE
|
---|
28 | ;
|
---|
29 | ;A = RI OF 442 or 443.6, B = node 0 of file 442 or 443.6, C=file # 442 or 443.6,D=amend ri
|
---|
30 | DT442(A,B,C,D) ; set up prcfa(bbfy),prc(site),prc(fy),prc(qtr),prc(cp),prcfa(request),prc(rbdt),prc(bbfy),prc(podt),prc(amendt)
|
---|
31 | N PRCA,Z
|
---|
32 | S PRCA=$S($G(C)="":442,1:$G(C))
|
---|
33 | I $G(D) S PRC("AMENDT")=$P($G(^PRC(PRCA,A,6,D,0)),U,2)
|
---|
34 | S:$G(B)="" B=^PRC(PRCA,A,0)
|
---|
35 | S PRCFA("REQUEST")=$P(B,U,12),PRC("RBDT")=""
|
---|
36 | I PRCA=442 D GENDIQ^PRCFFU7(442,A,".1;.07;.03;17","IEN","")
|
---|
37 | I PRCFA("REQUEST") S Z=$G(^PRCS(410,PRCFA("REQUEST"),0)),PRC("RBDT")=$P(Z,U,11),PRCFA("BBFY")=$P(^(3),U,11),PRC("SITE")=$P(Z,"-"),PRC("FY")=$P(Z,"-",2),PRC("QTR")=$P(Z,"-",3),PRC("CP")=$P(Z,"-",4) I 1
|
---|
38 | S Z=$G(^PRC(PRCA,A,1)),PRC("PODT")=$P(Z,U,15) E S PRCFA("BBFY")=$P(^(23),U,2),PRC("SITE")=$P(B,"-"),PRC("CP")=$P(B,U,3),Z=$$DATE^PRC0C($P(Z,U,15),"I"),PRC("FY")=$E(Z,3,4),PRC("QTR")=$P(Z,U,2)
|
---|
39 | S PRCFA("BBFY")=+$$DATE^PRC0C(PRCFA("BBFY"),"I"),PRC("BBFY")=PRCFA("BBFY")
|
---|
40 | S PRC("FYQDT")=$P($$QTRDATE^PRC0D(PRC("FY"),PRC("QTR")),"^",7)
|
---|
41 | I 'PRC("RBDT") S PRC("RBDT")=$$RBDT^PRC0G(PRC("SITE")_U_PRC("FY")_U_PRC("QTR")_U_+PRC("CP")_U_PRCFA("BBFY"))
|
---|
42 | QUIT
|
---|
43 | ;
|
---|
44 | ;a = running balance date (fileman), b = p.o date or amend date
|
---|
45 | DTOBL(A,B) ;ef = default obligation date
|
---|
46 | QUIT $S(A<DT:DT,1:B)
|
---|
47 | ;
|
---|
48 | OBLDAT(A,B) ; a new subroutine added as part of PRC*5.1*58.
|
---|
49 | ; This new subroutine will enable the software to look for
|
---|
50 | ; amendment funds in the correct fiscal quarter. The NOIS
|
---|
51 | ; addressed by this code is LAH-0602-61845.
|
---|
52 | ;
|
---|
53 | S RBDT=A,AMENDT=B
|
---|
54 | I AMENDT]"",PRC("FY")=$E(DT,2,3) S OBLDAT=AMENDT
|
---|
55 | E S OBLDAT=RBDT
|
---|
56 | K RBDT,AMENDT
|
---|
57 | Q OBLDAT
|
---|