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

ACRFTXT1.m

Go to the documentation of this file.
  1. ACRFTXT1 ;IHS/OIRM/DSD/THL,AEF - EDIT TRANSACTION TYPE USER ACCESS; [ 09/26/2005 9:44 AM ]
  1. ;;2.1;ADMIN RESOURCE MGT SYSTEM;**19**;NOV 05, 2001
  1. ;;ROUTINE TO EDIT TRANSACTION TYPE USER ACCESS
  1. EN F D EN1 Q:'$D(ACRDUZ)
  1. EXIT K ACRX,ACRTXNAM,ACRTX,ACRTXPFX,ACRQUIT,ACRDOCDA,ACRTXDOC,ACRDATA,ACRDUZ,ACRJ,ACRI,ACRQK,ACRCNT,ACRLI,ACRUSER,ACR,ACRQK1,ACRZ,ACRMAX
  1. Q
  1. EN1 W @IOF
  1. W !?22,"EDIT USER TRANSACTION ACCESS"
  1. W !?22,"============================"
  1. S DIC="^VA(200,"
  1. S DIC(0)="AEMQZ"
  1. S DIC("A")="EMPLOYEE............: "
  1. W !
  1. D DIC^ACRFDIC
  1. I $E(X)["U"!(+Y<1) S ACRQUIT="" K ACRDUZ Q
  1. S ACRDUZ=+Y
  1. ; S ACRUSER=Y(0,0) ;ACR*2.1*19.02 IM16848
  1. ; S ACRUSER=$P(ACRUSER,",",2)_" "_$P(ACRUSER,",") ;ACR*2.1*19.02 IM16848
  1. S ACRUSER=$$NAME3^ACRFUTL1(+Y) ;ACR*2.1*19.02 IM16848
  1. F D DISPLAY Q:$D(ACRQUIT)!$D(ACROUT)
  1. K ACRQUIT
  1. Q
  1. DISPLAY W @IOF
  1. W !,"Transaction access for: ",@ACRON,ACRUSER,@ACROF
  1. W !!,"NO."
  1. W ?5,"TYPE OF TRANSACTION"
  1. W ?40,"NO."
  1. W ?45,"TYPE OF TRANSACTION"
  1. W !,"---"
  1. W ?5,"-----------------------------"
  1. W ?40,"---"
  1. W ?45,"-----------------------------"
  1. S (ACRTXDO,ACRJ)=0
  1. F S ACRTXDO=$O(^ACRTXTYP("DO",ACRTXDO)) Q:'ACRTXDO D
  1. .S ACRY=0
  1. .F S ACRY=$O(^ACRTXTYP("DO",ACRTXDO,ACRY)) Q:'ACRY D
  1. ..S ACRJ=ACRJ+1
  1. ..S ACRX=$P(^ACRTXTYP(ACRY,0),U)
  1. ..S ACRDATA(ACRJ)=ACRY_U_ACRX
  1. S ACRMAX=ACRJ\2+(ACRJ#2)
  1. S ACRJ=0
  1. F S ACRJ=$O(ACRDATA(ACRJ)) Q:'ACRJ!(ACRJ>(ACRMAX)) D
  1. .S ACRY=$P(ACRDATA(ACRJ),U)
  1. .S ACRX=$P(ACRDATA(ACRJ),U,2)
  1. .W !,$J(ACRJ,2)_")"
  1. .W ?$X+2,ACRX
  1. .W ?35
  1. .D ACRK
  1. .S ACRZ(ACRJ)=ACRY
  1. .D D1:$D(ACRDATA(ACRJ+ACRMAX))
  1. S ACRJ=$S('ACRJ:ACRMAX,$D(ACRDATA(ACRJ-1+ACRMAX)):ACRJ+ACRMAX,1:ACRJ+ACRMAX-1)
  1. W:ACRJ#2=1 !
  1. W:ACRJ#2=0 ?40
  1. W $J(ACRJ,2),") All data types"
  1. DISP1 W !!?10,"'<==' indicates user already has access to the transaction."
  1. S DIR(0)="SO^1:Add TRANSACTION TYPES 1 thru 10;2:Add OTHER TYPES;3:Delete TRANSACTION TYPE(S)^K:X'?1N!(X<1)!(X>3) X"
  1. D DIR^ACRFDIC
  1. Q:$D(ACRQUIT)!$D(ACROUT)
  1. K ACRDR
  1. I X=1 S ACRJ=11 D ALL Q
  1. I X=3 S ACRDR=".01///@"
  1. S DIR(0)="LO^1:"_(ACRJ)
  1. S DIR("A")="Select transaction type(s) ==> "
  1. W !
  1. D DIR^ACRFDIC
  1. Q:$D(ACRQUIT)!$D(ACROUT)
  1. S ACRQK=Y(0)
  1. S:$E(ACRQK,$L(ACRQK))="," ACRQK=$E(ACRQK,1,$L(ACRQK)-1)
  1. S ACRQK=$P(ACRQK,",20")
  1. I ACRQK["," D LOOP Q
  1. I ACRQK=ACRJ D ALL Q
  1. D SET2
  1. Q
  1. D1 S ACRX=$P(ACRDATA(ACRJ+ACRMAX),U,2)
  1. S ACRY=$P(ACRDATA(ACRJ+ACRMAX),U)
  1. W ?40,$J(ACRJ+ACRMAX,2),")"
  1. W ?$X+2,ACRX
  1. W ?76
  1. D ACRK
  1. S ACRZ(ACRJ+ACRMAX)=ACRY
  1. Q
  1. LOOP S:ACRQK[",20" ACRQK=$P(ACRQK,",20")
  1. S ACRCNT=$L(ACRQK,",")
  1. S ACRQK1=ACRQK
  1. W !
  1. D:$E($G(IOST),1,2)="C-" WAIT^DICD
  1. W !
  1. F ACRLI=1:1:ACRCNT S ACRQK=$P(ACRQK1,",",ACRLI) D SET2
  1. Q
  1. SLT1 S ACRY=0
  1. F S ACRY=$O(^ACRTXTYP("DO",ACR,ACRY)) Q:'ACRY D
  1. .S ACRJ=ACRJ+1
  1. .S ACRX=$P(^ACRTXTYP(ACRY,0),U)
  1. .W:ACRJ#2=1 !
  1. .W:ACRJ#2=0 ?40
  1. .W $J(ACRJ,2)_")"
  1. .W ?$X+2,ACRX
  1. .W ?35
  1. .D ACRK
  1. .S ACRZ(ACRJ)=ACRY
  1. Q
  1. SET2 S (ACRTXDA,DA(1))=ACRZ(ACRQK)
  1. S (X,DINUM)=ACRDUZ
  1. S DIC="^ACRTXTYP("_ACRTXDA_",""ACCESS"","
  1. S DIC(0)="L"
  1. I '$D(^ACRTXTYP(ACRTXDA,"ACCESS",0)) S ^(0)="^9002194.01P^^"
  1. I '$D(ACRDR) D FILE^ACRFDIC Q
  1. S DA=ACRDUZ
  1. S DIE="^ACRTXTYP("_ACRTXDA_",""ACCESS"","
  1. S DR=ACRDR
  1. D DIE^ACRFDIC
  1. Q
  1. ALL F ACRQK=1:1:(ACRJ-1) D SET2
  1. Q
  1. ACRK I $D(^ACRTXTYP(ACRY,"ACCESS","B",ACRDUZ)) W "<=="
  1. Q