| 1 | FSCLMPNF ;SLC/STAFF NOIS List Manager Protocol Notification Find ;1/13/98  12:58
 | 
|---|
| 2 |  ;;1.1;NOIS;;Sep 06, 1998
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 | NOTIFY ; from FSCLMPN
 | 
|---|
| 5 |  N OK,TYPE,USER,USERNAME K ^TMP("FSC LIST",$J)
 | 
|---|
| 6 |  S USER=DUZ D USER(.USER,.USERNAME,.OK)
 | 
|---|
| 7 |  I 'OK Q
 | 
|---|
| 8 |  S TYPE="ONLY" D CALLS(.TYPE,USERNAME,.OK)
 | 
|---|
| 9 |  I 'OK Q
 | 
|---|
| 10 |  I TYPE="ALL" D ALL(USER)
 | 
|---|
| 11 |  I TYPE="ONLY" D ONLY(USER)
 | 
|---|
| 12 |  S FSCQUERY=1 S:FSCLNAME'["(MODIFIED)" FSCLNAME=FSCLNAME_" (MODIFIED)"
 | 
|---|
| 13 |  S VALMBG=1 K VALMQUIT D ENTRY^FSCLML I $D(VALMQUIT) S VALMBCK="Q" Q
 | 
|---|
| 14 |  D HEADER^FSCLML
 | 
|---|
| 15 |  Q
 | 
|---|
| 16 |  ;
 | 
|---|
| 17 | USER(USER,USERNAME,OK) ;
 | 
|---|
| 18 |  N DIC,X,Y K DIC S OK=0
 | 
|---|
| 19 |  S DIC=200,DIC(0)="AEMQ",DIC("A")="Notification user: ",DIC("B")=$$VALUE^FSCGET(USER,7100,2.1)
 | 
|---|
| 20 |  D ^DIC K DIC
 | 
|---|
| 21 |  I Y<1 Q
 | 
|---|
| 22 |  S USER=+Y,USERNAME=$P(Y,U,2),OK=1
 | 
|---|
| 23 |  Q
 | 
|---|
| 24 |  ;
 | 
|---|
| 25 | CALLS(TYPE,USERNAME,OK) ;
 | 
|---|
| 26 |  N DIR,X,Y K DIR S OK=0
 | 
|---|
| 27 |  S DIR(0)="SAMO^ALL:ALL;ONLY:ONLY"
 | 
|---|
| 28 |  S DIR("A")="Find (A)ll calls for "_USERNAME_" or (O)nly those calls on this list? ",DIR("B")=TYPE
 | 
|---|
| 29 |  S DIR("?",1)="Enter ALL to find all calls scheduled for this person."
 | 
|---|
| 30 |  S DIR("?",2)="Enter ONLY to find only those calls scheduled for this person"
 | 
|---|
| 31 |  S DIR("?",3)="that are on this list."
 | 
|---|
| 32 |  S DIR("?")="^D HELP^FSCU(.DIR)"
 | 
|---|
| 33 |  S DIR("??")="FSC U1 NOIS"
 | 
|---|
| 34 |  D ^DIR K DIR
 | 
|---|
| 35 |  I $D(DTOUT)!$D(DUOUT) Q
 | 
|---|
| 36 |  S TYPE=Y,OK=1
 | 
|---|
| 37 |  Q
 | 
|---|
| 38 |  ;
 | 
|---|
| 39 | ALL(USER) ; from FSCRPCN
 | 
|---|
| 40 |  N CALL,LNUM,NUM
 | 
|---|
| 41 |  S NUM=0 F  S NUM=$O(^FSCD("NOTIFY","AUSER",USER,NUM)) Q:NUM<1  D
 | 
|---|
| 42 |  .S CALL=+$G(^FSCD("NOTIFY",NUM,0)) I 'CALL Q
 | 
|---|
| 43 |  .S ^TMP("FSC LIST",$J,CALL)=""
 | 
|---|
| 44 |  S LNUM=0 F  S LNUM=$O(^FSC("LIST","C",USER,LNUM)) Q:LNUM<1  D
 | 
|---|
| 45 |  .S NUM=0 F  S NUM=$O(^FSCD("NOTIFY","ALIST",LNUM,NUM)) Q:NUM<1  D
 | 
|---|
| 46 |  ..S CALL=+$G(^FSCD("NOTIFY",NUM,0)) I 'CALL Q
 | 
|---|
| 47 |  ..S ^TMP("FSC LIST",$J,CALL)=""
 | 
|---|
| 48 |  Q
 | 
|---|
| 49 |  ;
 | 
|---|
| 50 | ONLY(USER) ;
 | 
|---|
| 51 |  N CALL,DONE,LNUM
 | 
|---|
| 52 |  S CALL=0 F  S CALL=$O(^TMP("FSC LIST CALLS",$J,"CX",CALL)) Q:CALL<1  D
 | 
|---|
| 53 |  .I $D(^FSCD("NOTIFY","ACUSER",CALL,USER)) S ^TMP("FSC LIST",$J,CALL)="" Q
 | 
|---|
| 54 |  .S (DONE,LNUM)=0 F  S LNUM=$O(^FSCD("NOTIFY","ACLIST",CALL,LNUM)) Q:LNUM<1  D  Q:DONE
 | 
|---|
| 55 |  ..I $D(^FSC("LIST","C",USER,LNUM)) S ^TMP("FSC LIST",$J,CALL)="",DONE=1
 | 
|---|
| 56 |  Q
 | 
|---|