Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: PRCFFUD1

PRCFFUD1.m

Go to the documentation of this file.
  1. PRCFFUD1 ;WISC/SJG-UTILITY FOR CARRY FORWARD ;3/27/96 15:14
  1. ;;5.1;IFCAP;**58**;Oct 20, 2000
  1. ;Per VHA Directive 10-93-142, this routine should not be modified.
  1. ;
  1. QUIT
  1. ; This utility will determine the date that is to be used for the
  1. ; obligation processing date for Supply Fund transactions
  1. ;
  1. EN() ;
  1. N OPENQTR,PRIMARY,PODATE
  1. S RETDATE=""
  1. S OPENQTR=$$NP^PRC0B("^PRC(420,"_+PRC("SITE")_",",0,9)
  1. S PRIMARY=$$NP^PRC0B("^PRC(442,"_+PO_",",0,12)
  1. S PODATE=$$NP^PRC0B("^PRC(442,"_+PO_",",1,15)
  1. REQ ; 2237 Request on Purchase Order
  1. I $G(PRIMARY)]"" D G QUIT
  1. .S RETDATE=$G(OPENQTR)
  1. .I $G(PODATE)>$G(OPENQTR) S RETDATE=PODATE
  1. .I $G(PODATE)<$G(OPENQTR) D NOW^%DTC S RETDATE=X
  1. .Q
  1. NOREQ ; No 2237 Request on Purchase Order
  1. I $G(PRIMARY)="" D G QUIT
  1. .I $G(PODATE)<$G(OPENQTR) D NOW^%DTC S RETDATE=X Q
  1. .S RETDATE=PODATE
  1. .Q
  1. QUIT I RETDATE="" D NOW^%DTC S RETDATE=X
  1. QUIT RETDATE
  1. ;
  1. ;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
  1. 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)
  1. N PRCA,Z
  1. S PRCA=$S($G(C)="":442,1:$G(C))
  1. I $G(D) S PRC("AMENDT")=$P($G(^PRC(PRCA,A,6,D,0)),U,2)
  1. S:$G(B)="" B=^PRC(PRCA,A,0)
  1. S PRCFA("REQUEST")=$P(B,U,12),PRC("RBDT")=""
  1. I PRCA=442 D GENDIQ^PRCFFU7(442,A,".1;.07;.03;17","IEN","")
  1. 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
  1. 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)
  1. S PRCFA("BBFY")=+$$DATE^PRC0C(PRCFA("BBFY"),"I"),PRC("BBFY")=PRCFA("BBFY")
  1. S PRC("FYQDT")=$P($$QTRDATE^PRC0D(PRC("FY"),PRC("QTR")),"^",7)
  1. I 'PRC("RBDT") S PRC("RBDT")=$$RBDT^PRC0G(PRC("SITE")_U_PRC("FY")_U_PRC("QTR")_U_+PRC("CP")_U_PRCFA("BBFY"))
  1. QUIT
  1. ;
  1. ;a = running balance date (fileman), b = p.o date or amend date
  1. DTOBL(A,B) ;ef = default obligation date
  1. QUIT $S(A<DT:DT,1:B)
  1. ;
  1. OBLDAT(A,B) ; a new subroutine added as part of PRC*5.1*58.
  1. ; This new subroutine will enable the software to look for
  1. ; amendment funds in the correct fiscal quarter. The NOIS
  1. ; addressed by this code is LAH-0602-61845.
  1. ;
  1. S RBDT=A,AMENDT=B
  1. I AMENDT]"",PRC("FY")=$E(DT,2,3) S OBLDAT=AMENDT
  1. E S OBLDAT=RBDT
  1. K RBDT,AMENDT
  1. Q OBLDAT