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

ACRFEDG.m

Go to the documentation of this file.
  1. ACRFEDG ;IHS/OIRM/DSD/THL,AEF - ESTABLISH DISTRIBUTION GROUP; [ 11/01/2001 9:44 AM ]
  1. ;;2.1;ADMIN RESOURCE MGT SYSTEM;;NOV 05, 2001
  1. ;;ROUTINE TO ESTABLISH FUND DISTRIBUTION GROUP
  1. EN N ACRI
  1. F D EN1 Q:$D(ACRQUIT)!$D(ACROUT)
  1. EXIT K ACRQUIT,ACRX,ACRY,ACRDGDA,ACRDG,ACRDGMDA,ACRDGM,ACRPRCT,ACRFEDG
  1. Q
  1. EN1 W @IOF
  1. S ACRX="MANAGE FUND DISTRIBUTION GROUPS"
  1. W !!?80-$L(ACRX)\2,ACRX
  1. W !?80-$L(ACRX)\2
  1. F ACRI=1:1:$L(ACRX) W "="
  1. S DIR(0)="SO^1:ADD/EDIT;2:DELETE^K:X'?1N!(X<1)!(X>2) X"
  1. S DIR("A")=" Option"
  1. D DIR^ACRFDIC
  1. Q:$D(ACRQUIT)!$D(ACROUT)
  1. I X=1 D ADD Q
  1. D DELETE
  1. K ACRQUIT
  1. Q
  1. ADD F D ADD1 Q:$D(ACRQUIT)!$D(ACROUT)
  1. K ACRQUIT
  1. Q
  1. ADD1 D GET^ACRFEDG1
  1. Q:$D(ACRQUIT)!$D(ACROUT)
  1. F D DISPLAY,SIB:ACRJ=1,A1:ACRJ>1 I $D(ACRQUIT)!$D(ACROUT) K ACRQUIT Q
  1. Q
  1. SIB W !!,"Add MEMBERS for the ",@ACRON,ACRDG,@ACROF," Fund Distribution Group by:"
  1. S DIR(0)="SO^1:Office/Div/Branch/Dept;2:Area;3:Service Unit;4:Facility^K:X'?1N!(X<1)!(X>5) X"
  1. S DIR("A")="Member Type"
  1. D DIR^ACRFDIC
  1. Q:$D(ACRQUIT)!$D(ACROUT)
  1. S ACRX=$S(X=1:"OFFICE",X=2:"AREA",X=3:"SU",X=4:"FAC")
  1. F D S1 Q:+Y<1
  1. Q
  1. S1 S ACRY=$P($T(@ACRX),";;",2,99)
  1. S DIC(0)="AEMQZ"
  1. S (ACRGLB,DIC)=$P(ACRY,";;")
  1. S DIC=U_DIC
  1. S DIC("A")=$P(ACRY,";;",2)
  1. W !
  1. D DIC^ACRFDIC
  1. Q:+Y<1
  1. S ACRDFN=+Y,ACRY=Y(0,0)
  1. D NEWM
  1. Q
  1. SIB1 D GETM^ACRFEDG1
  1. Q:+Y<1
  1. I $D(^ACRDG(ACRDGDA,"GP","B")) D I 1
  1. .S (ACRX,ACRY)=0
  1. .F S ACRX=$O(^ACRDG(ACRDGDA,"GP",ACRX)) Q:'ACRX S:$D(^ACRDG(ACRDGDA,"GP",ACRX,"DT")) ACRY=ACRY+$P(^("DT"),U,3)
  1. E S ACRY=0
  1. S DA=ACRDGMDA
  1. S DIE="^ACRDG("_ACRDGDA_",""GP"","
  1. S DIE("NO^")="NO"
  1. S DR=".02T;.03T;.04T;S ACRY=ACRY-$P(^ACRDG(ACRDGDA,""GP"",DA,""DT""),U,3);10T;I $P(^ACRDG(ACRDGDA,""GP"",DA,""DT""),U,3)+ACRY>100 K X S $P(^(""DT""),U,3)=100-ACRY W *7,*7,!!,""TOTAL PERCENT CANNOT BE GREATER THAN 100."" S Y=10"
  1. D DIE^ACRFDIC
  1. Q
  1. NEWM S:'$D(@("^ACRDG("_ACRDGDA_",""GP"",0)")) @("^ACRDG("_ACRDGDA_",""GP"",0)")="^9002198.01^^"
  1. S DA(1)=ACRDGDA
  1. S X=ACRY
  1. S DIC="^ACRDG("_ACRDGDA_",""GP"","
  1. S DIC(0)="AELMQZ"
  1. S DIC("DR")=".02T;.03T;.04T;1////"_ACRGLB_";2////"_ACRDFN_";10T"
  1. D FILE^ACRFDIC
  1. Q
  1. DISPLAY ;EP;TO DISPLAY DISTRIBUTION
  1. D HEAD
  1. S (ACRJ,ACRX)=0
  1. F S ACRX=$O(^ACRDG(ACRDGDA,"GP",ACRX)) Q:'ACRX D D1 Q:$D(ACRPSE)
  1. I ACRJ=0,'$D(ACRFEDG) D Q
  1. .W !,"NO FUND DISTRIBUTION GROUP MEMBERS"
  1. .W !,"GROUP MEMBERS MUST BE ESTABLISHED"
  1. .W !,"VIA SYSTEM SETUP. CONSULT YOUR SYSTEMS"
  1. .W !,"MANAGER FOR ASSISTANCE."
  1. .S ACRQUIT=""
  1. .H 3
  1. I ACRJ=0,$D(ACRFEDG) D SIB Q
  1. I ACRJ>0 D
  1. .S (ACRX,ACRPRCT)=0
  1. .F S ACRX=$O(^ACRDG(ACRDGDA,"GP",ACRX)) Q:'ACRX D D2
  1. I ACRJ>1 D
  1. .W !?19,"TOTAL PERCENT:"
  1. .W ?35,$J(ACRPRCT,3)
  1. Q
  1. D1 S ACRJ=ACRJ+1
  1. S ACRY=$E($P(^ACRDG(ACRDGDA,"GP",ACRX,0),U),1,25)
  1. S ACRP=$P(^ACRDG(ACRDGDA,"GP",ACRX,"DT"),U,3)
  1. W:ACRJ#2=1 !
  1. W:ACRJ#2=0 ?40,"| "
  1. W ACRX
  1. W ?$X+8-$L(ACRX),ACRY
  1. W ?$X+28-$L(ACRY),ACRP
  1. D:ACRJ#20=0 PAUSE
  1. Q
  1. D2 S:$D(^ACRDG(ACRDGDA,"GP",ACRX,"DT")) ACRPRCT=ACRPRCT+$P(^("DT"),U,3)
  1. Q
  1. A1 S DIR(0)="SO^1:ADD;2:EDIT;3:DELETE^K:X'?1N!(X<1)!(X>3) X"
  1. S DIR("A")=" Option"
  1. D DIR^ACRFDIC
  1. Q:$D(ACRQUIT)!$D(ACROUT)
  1. I X=1 D SIB I $D(ACRQUIT)!$D(ACROUT) S X=1 K ACRQUIT Q
  1. I X=2 F D SIB1 I $D(ACRQUIT)!$D(ACROUT) S X=1 K ACRQUIT Q
  1. D:X=3 DELETEM
  1. K ACRQUIT
  1. Q
  1. DELETE D GET^ACRFEDG1
  1. Q:+Y<1
  1. S DA=ACRDGDA
  1. S DIK="^ACRDG("
  1. D DIK^ACRFDIC
  1. Q
  1. DELETEM D GETM^ACRFEDG1
  1. Q:+Y<1
  1. S DA(1)=ACRDGDA
  1. S DA=ACRDGMDA
  1. S DIK="^ACRDG("_ACRDGDA_",""GP"","
  1. D DIK^ACRFDIC
  1. Q
  1. PAUSE K ACRPSE
  1. S DIR(0)="YO"
  1. S DIR("A")=" List more MEMBERS"
  1. S DIR("B")="NO"
  1. W !
  1. D DIR^ACRFDIC
  1. S:Y'=1 ACRPSE=""
  1. Q
  1. AREA ;;AUTTAREA(;;AREA OFFICE.........: ;;
  1. SU ;;AUTTSU(;;SERVICE UNIT........: ;;
  1. FAC ;;AUTTLOC(;;FACILITY............: ;;
  1. OFFICE ;;AUTTPRG(;;OFFICE/DIV/BR/DEPT..: ;;
  1. W !!,@ACRON,ACRDG,@ACROF," Fund Distribution Group"
  1. W !!?35,"STD"
  1. W ?77,"STD"
  1. W !,"ID NO."
  1. W ?8,"MEMBER"
  1. W ?36,"%"
  1. W ?42,"ID NO."
  1. W ?50,"MEMBER"
  1. W ?78,"%"
  1. W !,"------"
  1. W ?8,"-------------------------"
  1. W ?35,"---"
  1. W ?40,"| ------"
  1. W ?50,"-------------------------"
  1. W ?77,"---"
  1. Q
  1. ACREDG ;EP;
  1. S ACRFEDG="" D EN
  1. Q