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

ACRFPRC4.m

Go to the documentation of this file.
  1. ACRFPRC4 ;IHS/OIRM/DSD/THL,AEF - PROCESS PENDING DOCUMENTS; [ 11/01/2001 9:44 AM ]
  1. ;;2.1;ADMIN RESOURCE MGT SYSTEM;;NOV 05, 2001
  1. ;;CONTINUATION OF ACRFPRCS
  1. PONUM ;EP;
  1. N ACRFY
  1. S ACRNUM=$P(ACRDOC0,U,2)
  1. I ACRNUM]"",ACRNUM'["PENDING" Q
  1. Q:$E(ACRNUM,7,10)?4N
  1. S ACRPODA=$P(ACRDOC0,U,8)
  1. S ACRFY=$P(^ACRLOCB($P(ACRDOC0,U,6),"DT"),U)
  1. N S
  1. S X=^ACRPO(ACRPODA,0)
  1. S ACRAPT=$P(X,U,4)
  1. S ACRLC=$P(X,U,5)
  1. S ACRAREA=$P(X,U,10)
  1. S ACRFYX=$S(+$E(DT,4,5)<10:DT\10000,1:DT\10000+1)+1700
  1. S ACRFYX=$S(ACRFYX>ACRFY:ACRFYX,1:ACRFY)
  1. I ACRAPVT'=1 S ACRNUM="PENDING"
  1. S ACRNUM=$E(ACRFYX,4)_$E($P(^AUTTLCOD(ACRLC,0),U),1,3)_ACRNUM
  1. Q
  1. PONUM1 ;EP;
  1. S ACRNUM=$P(ACRDOC0,U,2)
  1. I ACRNUM]"",ACRNUM'["PENDING" Q
  1. Q:$E(ACRNUM,7,10)?4N
  1. I $P(ACRDOC0,U,15),$P($G(^ACRDOC(+$P(ACRDOC0,U,15),0)),U,2)]"" S ACRNUM=$P(^(0),U,2) Q
  1. S ACRFY=$P(^ACRLOCB($P(ACRDOC0,U,6),"DT"),U)
  1. S ACRFYX=$S(+$E(DT,4,5)<10:DT\10000,1:DT\10000+1)+1700
  1. S ACRFYX=$S(ACRFYX>ACRFY:ACRFYX,1:ACRFY)
  1. I '$D(^ACRPO(ACRPODA,1,0)) S ^ACRPO(ACRPODA,1,0)="^9002199.41"
  1. I '$D(^ACRPO(ACRPODA,1,"B",ACRFYX)) D
  1. .S DA(1)=ACRPODA
  1. .S (X,DINUM)=ACRFYX
  1. .S DIC="^ACRPO("_DA(1)_",1,"
  1. .S DIC(0)="L"
  1. .D FILE^ACRFDIC
  1. L +^ACRPO(ACRPODA):2
  1. I $T=1 D I 1
  1. .S ACRNUM=$P(^ACRPO(ACRPODA,1,ACRFYX,0),U,2)
  1. .S ACRNUM=ACRNUM+1
  1. .S $P(^ACRPO(ACRPODA,1,ACRFYX,0),U,2)=ACRNUM
  1. .L -^ACRPO(ACRPODA):0
  1. E G PONUM1
  1. F ACRJI=1:1:(4-$L(ACRNUM)) S ACRNUM="0"_ACRNUM
  1. S ACRLC=$P(^ACRPO(ACRPODA,0),U,5)
  1. S ACRNUM=$E(ACRFYX,4)_$E($P(^AUTTLCOD(ACRLC,0),U),1,3)_ACRNUM_$S('$P(^ACRDOC(ACRDOCDA,0),U,18):"00",1:"BP")
  1. I "^103^210^"[(U_ACRREF_U),$D(^ACRDOC("B",ACRNUM))!$D(^ACRDOC("C",ACRNUM)) G PONUM1
  1. K ACRTXDAX
  1. D NOW^%DTC
  1. S DA=ACRDOCDA
  1. S DIE="^ACRDOC("
  1. S DR=".02////"_ACRNUM_";.5////"_%
  1. D DIE^ACRFDIC
  1. N ACRX
  1. S ACRX=0
  1. F S ACRX=$O(^ACRDOC("MOD",ACRDOCDA,ACRX)) Q:'ACRX D
  1. .S DA=ACRDOCDA
  1. .S DIE="^ACRDOC("
  1. .S DR=".02////"_ACRNUM
  1. .D DIE^ACRFDIC
  1. S DA=$P(^ACRDOC(ACRDOCDA,0),U,16)
  1. S DIE="^ACGS("
  1. S DR="2////"_ACRNUM
  1. D:DA DIE^ACRFDIC
  1. Q
  1. PAUSE ;EP;
  1. S ACRI=ACRI+10
  1. I '$D(^TMP("ACRDATA",$J,ACRDUZ,ACRI+1)) S ACRQUIT="" Q
  1. K ACRQUIT
  1. S DIR(0)="YO"
  1. S DIR("A")="Display more documents"
  1. S DIR("B")="YES"
  1. W !
  1. D DIR^ACRFDIC
  1. I Y=1 W ! Q
  1. S ACRQUIT=""
  1. Q
  1. RELIST ;EP;RELISTS DOCUMENTS FOR CURRENT USER TO SIGN
  1. I $D(^TMP("ACRDATE",$J)) D R1 Q
  1. S ACR=0
  1. F ACRI=1:1 S ACR=$O(^TMP("ACRDATA",$J,ACRDUZ,ACR)) Q:'ACR!($L(ACR)>8) I ACRI<ACR D
  1. .S ^TMP("ACRDATA",$J,ACRDUZ,ACRI)=^TMP("ACRDATA",$J,ACRDUZ,ACR)
  1. .N ACRDOC
  1. .S ACRDOC=$P(^TMP("ACRDATA",$J,ACRDUZ,ACR),U,5)
  1. .S ^TMP("ACRDATA",$J,ACRDUZ,ACRDOC)=^TMP("ACRDATA",$J,ACRDUZ,ACR)
  1. .S $P(^TMP("ACRDATA",$J,ACRDUZ,ACRDOC),U,10)=ACRI
  1. .K ^TMP("ACRDATA",$J,ACRDUZ,ACR)
  1. Q
  1. R1 ;CHANGE DATE ORDER ARRAY TO NUMERIC ORDERED ARRAY
  1. S (ACR,ACRI)=0
  1. F S ACR=$O(^TMP("ACRDATE",$J,ACRDUZ,ACR)) Q:'ACR D
  1. .S ACR1=0
  1. .F S ACR1=$O(^TMP("ACRDATE",$J,ACRDUZ,ACR,ACR1)) Q:'ACR1!($L(ACR1)>8) D
  1. ..S ACRI=ACRI+1
  1. ..S ^TMP("ACRDATA",$J,ACRDUZ,ACRI)=^TMP("ACRDATE",$J,ACRDUZ,ACR,ACR1)
  1. ..N ACRDOC
  1. ..S ACRDOC=$P(^TMP("ACRDATE",$J,ACRDUZ,ACR,ACR1),U,5)
  1. ..S ^TMP("ACRDATA",$J,ACRDUZ,ACRDOC)=^TMP("ACRDATE",$J,ACRDUZ,ACR,ACR1)
  1. ..S $P(^TMP("ACRDATA",$J,ACRDUZ,ACRDOC),U,10)=ACRI
  1. ..K ^TMP("ACRDATE",$J,ACRDUZ,ACR,ACR1)
  1. K ^TMP("ACRDATE",$J)
  1. Q
  1. RECERT ;EP;PROCESS RECERT OF FUNDS
  1. S ACRFINAL="N"
  1. S ACRORDER=99
  1. S ACRLBDA=$P(ACRDOC0,U,6)
  1. S ACRUSER=+^ACRDOC(ACRDOCDA,"FA")
  1. S ACRDATE=$E(DT,1,3)_"1001"
  1. S ACRRDATE=ACRDATE
  1. K ACRQUIT
  1. N X,Y,Z
  1. S X=0
  1. F S X=$O(^ACRAPVS("AB",ACRDOCDA,X)) Q:'X!$D(ACRQUIT) D
  1. .S Y=$G(^ACRAPVS(X,0))
  1. .S Z=$G(^ACRAPVS(X,"DT"))
  1. .I $P(Z,U,8)=ACRDATE S ACRQUIT=""
  1. I $D(ACRQUIT) K ACRQUIT Q
  1. D SETAPP^ACRFAPVS
  1. S ^ACRAPVS("ANXT",ACRAPVT,ACRUSER,+Y)=ACRDOCDA
  1. Q
  1. 38 ;EP;ENTER TREASURY SCHEDULE NUMBER FOR THE TRAVEL VOUCHER PAYMENT
  1. S DA=ACRDOCDA
  1. S DIE="^ACRDOC("
  1. S DR="28T;29.5T;29T"
  1. S:$P($G(^ACRSYS(1,"DT1")),U,9)>1 DR="29.5T;29T"
  1. W !
  1. D DIE^ACRFDIC
  1. I $P(^ACRSYS(ACRADA,"DT"),U,34)<1,$P(^("DT"),U,33) D
  1. .W !,"The systems indicates the AIRFARE will be paid separately."
  1. .S DA=ACRDOCDA
  1. .S DIE="^ACROBL("
  1. .S DR="912T//PARTIAL"
  1. .D DIE^ACRFDIC
  1. I $P($G(^ACRDOC(ACRDOCDA,18)),U,3)="" D
  1. .W *7,*7
  1. .W !!,"The PAYMENT/COLLECTION DOCUMENT # (Treasury Schedule #) is required."
  1. .W !,"This TRAVEL VOUCHER can be signed and completed when the required"
  1. .W !,"information is available."
  1. .D PAUSE^ACRFWARN
  1. .S ACRQUIT=""
  1. Q
  1. LIST ;EP;CREATE LIST OF DOCUMENTS FOR USER TO APPROVE
  1. N ACRDOCDA,ACRDOC0
  1. S ACRDOCDA=+ACRAP0
  1. Q:'$D(^ACRDOC(ACRDOCDA,0))
  1. S ACRDOC0=^ACRDOC(ACRDOCDA,0)
  1. S ACRDOCDT=$G(^ACRDOC(ACRDOCDA,"DT"))
  1. S ACRDOC=$P(ACRDOC0,U)
  1. S ACRTXTYP=$P(ACRDOC0,U,4)
  1. I +ACRDOCDT,'$P(ACRDOCDT,U,2) Q
  1. I $D(ACRCSI),$D(ACRTXDA),ACRTXDA'=ACRTXTYP S ACRI=ACRI-1 Q
  1. S ACRI=ACRI+1
  1. S ACRLBDA=","_$P(ACRDOC0,U,6)_","
  1. S ACRREF=$P(ACRDOC0,U,13)
  1. S ACRREF1=$P(^AUTTDOCR(ACRREF,0),U)
  1. S ACRID=$E($P(ACRDOC0,U,14),1,15)
  1. I DUZ'=ACRINDV S ^TMP("ACRALTDT",$J,ACRINDV,ACRDATE,ACRI)=ACRDOCDA_U_ACRREF1_U_ACRTXTYP_U_ACRAPDA_U_ACRDOC_U_ACRID
  1. E S:$S>10000 ^TMP("ACRDATE",$J,DUZ,ACRDATE,ACRI)=ACRDOCDA_U_ACRREF1_U_ACRTXTYP_U_ACRAPDA_U_ACRDOC_U_ACRID
  1. Q
  1. TREPORT ;EP;REVIEW TRAVEL REPORT
  1. S DIR(0)="YO"
  1. S DIR("A")="Review Trip Report"
  1. S DIR("B")="NO"
  1. W !
  1. D DIR^ACRFDIC
  1. Q:$G(Y)'=1
  1. S ACRPTR=""
  1. D PTR^ACRFTO
  1. Q
  1. CERT ;EP;CHECKS WHETHER THERE ARE APPLICABLE CERTIFICATIONS FOR TYPE
  1. ;OF APPROVAL AND TYPE OF TRANSACTION AND ALLOWS FOR SELECTION
  1. ;AND PROCESSING OF CERTIFICATIONS.
  1. I $D(^ACRAPVC("AC",ACRAPVT,ACRTXTYP)) D DOCCERT^ACRFCERT
  1. Q
  1. ESIG ;EP;RECORD ELECTRONIC SIGNATURE PRIOR TO SIGNING DOCUMENTS
  1. W @IOF
  1. W !,"You have documents which are pending for your signature."
  1. W !!,"Enter your electronic signature to review documents now."
  1. W !!,"Enter '^' to bypass document review."
  1. W !
  1. D ^ACRFESIG
  1. Q
  1. CONFIRM ;EP;CONFIRM THAT YOU WANT TO APPROVE A DOCUMENT
  1. W !
  1. S DIR(0)="YO"
  1. S DIR("A",1)="Apply my AUTHORIZED signature to "_$S(ACRAPDAS="A":"APPROVE",1:"DISAPPROVE")
  1. S DIR("A")="document NO.: "_ACRDOC
  1. S DIR("B")="YES"
  1. D DIR^ACRFDIC
  1. S:$G(Y)'=1 ACRQUIT=""
  1. Q
  1. SECURITY ;EP;PRINT SIGNATURE SECURITY MESSGE
  1. W @IOF
  1. D WARNING^ACRFWARN
  1. W !!,"To PREVENT UNAUTHORIZED ACCESS to documents pending your approval,"
  1. W !,"NEVER LEAVE your computer UNATTENDED during the DOUMENT REVIEW process."
  1. D PAUSE^ACRFWARN
  1. Q