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

ACRFNY.m

Go to the documentation of this file.
  1. ACRFNY ;IHS/OIRM/DSD/THL,AEF - CREATE FINANCIAL ACCOUNTS FOR THE NEW FISCAL YEAR, ALL ACCOUNTS; [ 01/02/2003 8:02 AM ]
  1. ;;2.1;ADMIN RESOURCE MGT SYSTEM;**5**;NOV 05, 2001
  1. ;;ROUTINE TO CREATE FINANCIAL ACCOUNTS FOR THE NEW FISCAL YEAR
  1. EN D EXIT
  1. D EN1
  1. EXIT K ACR,^TMP("ACRAPP",$J),ACR0,ACR1,ACR2,ACR3,ACR4,ACRACTDA,ACRALC,ACRALW,ACRAPP,ACRAPPDA,ACRDAC,ACRFY,ACRFYN,ACRFYNEW,ACRRTN,ACRY,ACRNO,ACRNEWDA,ACRALCDA,ACRALWDA,ACRMM,ACRDIK,ACRQUIT,ACROUT,ACRLBDA,ACROLD,ACRAPPX
  1. Q
  1. EN1 D SELECT
  1. Q:$D(ACRQUIT)
  1. S ACRAPPX=""
  1. I ACRAPP["/" D Q:$D(ACRQUIT)
  1. .N X,Y,Z
  1. .S X=$P(ACRAPP,"/")
  1. .S Y=$P(ACRAPP,"/",2)
  1. .S Z=$E(X,$L(X))+1
  1. .S:$L(Z)=2 Z=$E(Z,2)
  1. .S X=$E(X,1,$L(X)-1)_Z
  1. .S Z=$E(Y)+1
  1. .S:$L(Z)=2 Z=$E(Z,2)
  1. .S Y=Z_$E(Y,2,99)
  1. .S ACRAPPX=X_"/"_Y
  1. .S DIR(0)="SO^1:Create FY "_$E(X,$L(X))_" Dept. Accts for "_ACRAPP_";2:Create FY "_$E(X,$L(X))_" Dept. Accts for "_ACRAPPX
  1. .S DIR("A")="Which one"
  1. .W !
  1. .D DIR^ACRFDIC
  1. .I +Y<1 S ACRQUIT="" Q
  1. .S ACRAPP=$S(Y=1:ACRAPP,1:ACRAPPX)
  1. .S ACRAPPX=$S(Y=2:"",1:ACRAPPX)
  1. .D ^ACRFNY2
  1. S DIR(0)="PO^9999999.51:AENQ"
  1. S DIR("A")="Create NEXT FY Accounts for APPROPRIATION NO."
  1. S DIR("B")=ACRAPP
  1. W !
  1. D DIR^ACRFDIC:$G(ACRNO)'=2
  1. Q:+Y<1
  1. S ACRAPPDA=$S($G(ACRNO)'=2:+Y,1:ACRAPPDA)
  1. I $G(ACRNO)=2 S DA=ACRAPPDA,DIE="^ACRAPP(" D NO
  1. D NFY
  1. Q:$G(ACRFYNEW)=""
  1. W !!,"Create NEW ",$S($G(ACRNO)'=2:"Allowances, Sub-Allowances and ",1:""),"Department Accounts"
  1. W !,"for APPROPRIATION ",$P(^AUTTPRO(ACRAPPDA,0),U)," (FY ",ACRFYNEW,")"
  1. W !,"Based on accounts from Fiscal Year ",ACRFY
  1. S DIR(0)="YO"
  1. S DIR("A")="Is that correct"
  1. S DIR("B")="NO"
  1. W !
  1. D DIR^ACRFDIC
  1. Q:Y'=1
  1. D ZIS
  1. Q
  1. NO Q:$G(DIE)=""!($G(DA)="")
  1. N X,Y,Z
  1. S DR=".16////2"
  1. D DIE^ACRFDIC
  1. Q
  1. SELECT ;EP;SELECT APPROPRIATION ACCOUNT
  1. S DIR(0)="PO^9002185:AENQ"
  1. S DIR("A")="Select THIS FY appropriation account ID NO."
  1. W !
  1. D DIR^ACRFDIC
  1. I +Y<1 S ACRQUIT="" Q
  1. S ACRACTDA=+Y
  1. S ACRFY=$P(^ACRAPP(+Y,"DT"),U) ; fiscal year in in the format 9999
  1. S ACRAPPDA=$P(^ACRAPP(+Y,"DT"),U,4)
  1. S ACRAPP=$P(^AUTTPRO(ACRAPPDA,0),U)
  1. ;S:ACRAPP["X" ACRNO=2 ;ACR*2.1*5.07
  1. S ACRFYN=ACRFY+1
  1. S:$L(ACRFYN)=4 ACRFYN=$E(ACRFYN,4)
  1. S ACRAPP=$S(ACRAPP'["X"&(ACRAPP'["/"):(75_ACRFYN_$E(ACRAPP,4,7)),1:ACRAPP)
  1. Q
  1. CREATE ;EP;TO CREATE NEW FY ACCOUNTS
  1. D APP,CREATE^ACRFNY1
  1. Q
  1. APP ;CREATE TMP ARRAY OF ALL CURRENT YEAR ACCOUNTS FROM THE APPROPRIAITON
  1. ;LEVEL DOWN TO THE DEPARTMENT ACCOUNT LEVEL
  1. N X,Y,Z,J
  1. K ACRNO
  1. S X=ACRACTDA
  1. S ACRAPP=$P(^AUTTPRO($P(^ACRAPP(X,"DT"),U,4),0),U)
  1. ;S:ACRAPP["X" ACRNO=2 ;ACR*2.1*5.07
  1. ;S:ACRAPP["X"&'$D(ACRMM) ACRNO=2 ;ACR*2.1*5.07
  1. S ^TMP("ACRAPP",$J,X)=""
  1. S Y=0
  1. F S Y=$O(^ACRALW("M",X,Y)) Q:'Y I $D(^ACRALW(Y,0)),$D(^ACRALW(Y,"DT")) D
  1. .I $G(ACRNO)=2 S DA=Y,DIE="^ACRALW(" D NO
  1. .S ^TMP("ACRAPP",$J,X,Y)=""
  1. .S Z=0
  1. .F S Z=$O(^ACRALC("M",Y,Z)) Q:'Z I $D(^ACRALC(Z,0)),$D(^ACRALC(Z,"DT")) D
  1. ..I $G(ACRNO)=2 S DA=Z,DIE="^ACRALC(" D NO
  1. ..S ^TMP("ACRAPP",$J,X,Y,Z)=""
  1. ..S J=0
  1. ..F S J=$O(^ACRLOCB("M",Z,J)) Q:'J I $D(^ACRLOCB(J,0)),$D(^ACRLOCB(J,"DT")) D
  1. ...S ACR0=^ACRLOCB(J,0)
  1. ...I $P(ACR0,U,16)=1 S ^TMP("ACRAPP",$J,X,Y,Z,J)=""
  1. Q
  1. ZIS S ACRRTN="CREATE^ACRFNY"
  1. S ZTDESC="ARMS FUND ACCOUNT CREATION REPORT"
  1. D ^ACRFZIS
  1. Q
  1. NFY ;SELECT FISCAL YEAR FOR NEW ACCOUNTS
  1. I ACRAPP'["X",ACRAPP'["/" S ACRFYNEW=ACRFY+1
  1. E S ACRFYNEW=$S($E(DT,4,5)<7:DT\10000,1:DT\10000+1)+1700
  1. S DIR(0)="NO^1000:9999"
  1. S DIR("A")="Fiscal Year for new Accounts"
  1. S DIR("B")=ACRFYNEW
  1. D DIR^ACRFDIC
  1. I $L(Y)'=4 K ACRFYNEW S ACDQUIT="" Q
  1. S ACRFYNEW=Y
  1. Q