1 | USRMEMBR ; SLC/JER - User Class Management actions ;05/05/98
|
---|
2 | ;;1.0;AUTHORIZATION/SUBSCRIPTION;**2,3,6,7**;Jun 20, 1997
|
---|
3 | EDIT ; Edit user's class membership
|
---|
4 | N USRDA,USRDATA,USREXPND,USRI,USRSTAT,DIROUT,USRCHNG,USRLST
|
---|
5 | I '$D(VALMY) D EN^VALM2(XQORNOD(0))
|
---|
6 | S (USRCHNG,USRI)=0
|
---|
7 | F S USRI=$O(VALMY(USRI)) Q:+USRI'>0 D Q:$D(DIROUT)
|
---|
8 | . S USRDATA=$G(^TMP("USRMMBRIDX",$J,USRI))
|
---|
9 | . W !!,"Editing #",+USRDATA,!
|
---|
10 | . S USRDA=+$P(USRDATA,U,2) D EDIT1
|
---|
11 | . I +$G(USRCHNG) S USRLST=$S($L($G(USRLST)):$G(USRLST)_", ",1:"")_USRI
|
---|
12 | . I $D(USRDATA) D UPDATE^USRM(USRDATA)
|
---|
13 | W !,"Refreshing the list."
|
---|
14 | S VALMSG="** "_$S($L($G(USRLST)):"Item"_$S($L($G(USRLST),",")>1:"s ",1:" ")_$G(USRLST),1:"Nothing")_" Edited **"
|
---|
15 | K VALMY S VALMBCK="R"
|
---|
16 | Q
|
---|
17 | EDIT1 ; Single record edit
|
---|
18 | ; Receives USRDA
|
---|
19 | N DA,DIE,DR
|
---|
20 | I '+$G(USRDA) W !,"No Classes selected." H 2 S USRCHNG=0 Q
|
---|
21 | S DIE="^USR(8930.3,",DA=USRDA,DR="[USR MEMBERSHIP EDIT]"
|
---|
22 | D FULL^VALM1,^DIE S USRCHNG=1
|
---|
23 | Q
|
---|
24 | ADD ; Add a member to the class
|
---|
25 | N DA,DR,DIC,DLAYGO,X,Y,USRCLASS,USRUSER,USRQUIT,USRCNT D FULL^VALM1
|
---|
26 | S USRCNT=0
|
---|
27 | F D Q:+$G(USRQUIT)
|
---|
28 | . W !
|
---|
29 | . S DIC=200,DIC(0)="AEMQ"
|
---|
30 | . S DIC("A")="Select "_$S(USRCNT'>0:"",1:"Another ")_"MEMBER: "
|
---|
31 | . S DIC("S")="I ('$$ISAWM^USRLM(+Y,USRDA))"
|
---|
32 | . D ^DIC I +Y'>0 S USRQUIT=1 Q
|
---|
33 | . I $$ISTERM^USRLM(+Y) D Q
|
---|
34 | .. S USRQUIT=1
|
---|
35 | .. W !,"The user you selected is terminated, cannot add them as a class member!"
|
---|
36 | .. H 2
|
---|
37 | . S (DIC,DLAYGO)=8930.3,DIC(0)="LM",X=""""_$P(Y,U,2)_""""
|
---|
38 | . S DIC("W")="D DICW^USRMEMBR"
|
---|
39 | . D ^DIC I +Y'>0 S USRQUIT=1 Q
|
---|
40 | . S USRCREAT=+$P(Y,U,3),USRCNT=USRCNT+1
|
---|
41 | . S DA=+Y,DIE=DIC,DIE("NO^")="BACK",DR="[USR CLASS EDIT]" D ^DIE
|
---|
42 | . I $D(Y) D Q
|
---|
43 | . . S DIK=DIC D ^DIK K DIK
|
---|
44 | . . S:+USRCNT'>1 VALMSG="** Nothing Added **"
|
---|
45 | . . S VALMBCK="R",USRQUIT=1
|
---|
46 | . I 'USRCREAT D Q
|
---|
47 | . . S:+USRCNT'>1 VALMSG="** Nothing Added **"
|
---|
48 | . . S VALMBCK="R",USRQUIT=1
|
---|
49 | W !,"Rebuilding membership list."
|
---|
50 | S USRCLASS=+$G(^TMP("USRM",$J,0))
|
---|
51 | D BUILD^USRMLST(USRCLASS)
|
---|
52 | I USRCNT'>1,+$G(DA) D
|
---|
53 | . S USRUSER=$$SIGNAME^USRLS(+$G(^USR(8930.3,+DA,0)))
|
---|
54 | . S VALMSG="** "_USRUSER_" Added **"
|
---|
55 | S VALMCNT=+$G(@VALMAR@(0))
|
---|
56 | S VALMBCK="R"
|
---|
57 | Q
|
---|
58 | DICW ; Write code for member look-up
|
---|
59 | N USRSIGNM,USRCLASS,USREFF,USREXP,USRMEM
|
---|
60 | S USRMEM=$G(^USR(8930.3,+Y,0))
|
---|
61 | S USRSIGNM=$$SIGNAME^USRLS(+USRMEM)
|
---|
62 | S USRCLASS=$E($$CLNAME^USRLM(+$P(USRMEM,U,2)),1,24)
|
---|
63 | S USREFF=$$DATE^USRLS($P(USRMEM,U,3),"MM/DD/YY")
|
---|
64 | S USREXP=$$DATE^USRLS($P(USRMEM,U,4),"MM/DD/YY")
|
---|
65 | W USRSIGNM," ",USRCLASS,?60,USREFF," - ",USREXP
|
---|
66 | Q
|
---|
67 | DELETE ; Delete a member to the class
|
---|
68 | N DIE,X,Y,USRCLASS D FULL^VALM1
|
---|
69 | N USRCLASS,USRDA,USRCHNG,USRDATA,USRI,USRLST,DIROUT
|
---|
70 | I '$D(VALMY) D EN^VALM2(XQORNOD(0))
|
---|
71 | S USRI=0
|
---|
72 | F S USRI=$O(VALMY(USRI)) Q:+USRI'>0 D Q:$D(DIROUT)
|
---|
73 | . S USRDATA=$G(^TMP("USRMMBRIDX",$J,USRI))
|
---|
74 | . S USRDA=+$P(USRDATA,U,2) D DELETE1(USRDA)
|
---|
75 | . S:+$G(USRCHNG) USRLST=$S(+$G(USRLST):USRLST_", ",1:"")_+USRDATA
|
---|
76 | . I $D(USRDATA) D UPDATE^USRM(USRDATA)
|
---|
77 | W !,"Rebuilding the list."
|
---|
78 | S USRCLASS=+$G(^TMP("USRM",$J,0))
|
---|
79 | D BUILD^USRMLST(USRCLASS)
|
---|
80 | S VALMCNT=+$G(@VALMAR@(0))
|
---|
81 | K VALMY S VALMBCK="R"
|
---|
82 | S VALMSG="** "_$S($L($G(USRLST)):"Item"_$S($L($G(USRLST),",")>1:"s ",1:" ")_$G(USRLST),1:"Nothing")_" removed **"
|
---|
83 | Q
|
---|
84 | DELETE1(DA) ; Delete one member from a class
|
---|
85 | N DIE,DR,USER,CLASS,USRMEM S USRMEM=$G(^USR(8930.3,+DA,0))
|
---|
86 | I USRMEM']"" W !,"Record #",DA," NOT FOUND!" Q
|
---|
87 | S USER=$P($G(^VA(200,+USRMEM,0)),U)
|
---|
88 | S CLASS=$P($G(^USR(8930,+$P(USRMEM,U,2),0)),U)
|
---|
89 | W !,"Removing ",USER," from ",CLASS
|
---|
90 | I '$$READ^USRU("Y","Are you SURE","NO") S USRCHNG=0 W !,USER," NOT Removed from ",CLASS,"." Q
|
---|
91 | S USRCHNG=1
|
---|
92 | S DIK="^USR(8930.3," D ^DIK K DIK W "."
|
---|
93 | Q
|
---|
94 | SCHEDULE ; Schedule changes in class membership
|
---|
95 | N DIC,DLAYGO,X,Y
|
---|
96 | N USRCREAT,USRDUZ,USRUSER,USRMIN,USRMAX,USREFF,USREXP,USRCLASS
|
---|
97 | N USRCLNM
|
---|
98 | D FULL^VALM1
|
---|
99 | I '$D(VALMY) D EN^VALM2(XQORNOD(0))
|
---|
100 | S DIC=8930,DIC(0)="AEMQZ",DIC("A")="Select CLASS: "
|
---|
101 | S DIC("B")=$P($G(^TMP("USRMMBR",$J,0)),U,2)
|
---|
102 | D ^DIC Q:+Y'>0
|
---|
103 | S USRCLASS=+Y,USRCLNM=$$CLNAME^USRLM(USRCLASS)
|
---|
104 | S USRMIN=DT,USRMAX=$$FMADD^XLFDT(DT,365)
|
---|
105 | S USREFF=$$READ^USRU("D^"_USRMIN_":"_USRMAX_":EXFT"," Specify EFFECTIVE DATE/TIME","TODAY")
|
---|
106 | S USREXP=$$READ^USRU("D^"_USRMIN_":"_USRMAX_":EXFT","Specify EXPIRATION DATE/TIME","T+365")
|
---|
107 | S USRI=0
|
---|
108 | F S USRI=$O(VALMY(USRI)) Q:+USRI'>0 D
|
---|
109 | . N USRDATA,USRDUZ,USRMEM,USRUSER,DIC,DIE,DA,DR,X,Y
|
---|
110 | . S USRDATA=$G(^TMP("USRMMBRIDX",$J,USRI))
|
---|
111 | . S USRMEM=$G(^USR(8930.3,+$P(USRDATA,U,2),0)),USRDUZ=+USRMEM
|
---|
112 | . S DIC=200,DIC(0)="NX",X="`"_USRDUZ
|
---|
113 | . D ^DIC Q:+Y'>0
|
---|
114 | . S (DIC,DLAYGO)=8930.3,DIC(0)="LM",X=""""_$P(Y,U,2)_""""
|
---|
115 | . D ^DIC Q:+Y'>0
|
---|
116 | . S USRCREAT=+$P(Y,U,3)
|
---|
117 | . S DA=+Y,DIE=DIC
|
---|
118 | . S DR=".02////"_USRCLASS_";.03////"_USREFF_";.04////"_USREXP
|
---|
119 | . D ^DIE
|
---|
120 | W !,"Rebuilding membership list."
|
---|
121 | S VALMBCK="R"
|
---|
122 | Q
|
---|