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

FSCLML.m

Go to the documentation of this file.
FSCLML ;SLC/STAFF-NOIS List Manager - List ;1/13/98  12:36
 ;;1.1;NOIS;;Sep 06, 1998
 ;
ENTRY ; from list template - entry code, FSCLMPC, FSCLMPNF, FSCLMPQQ, FSCLMPQU, FSCRPTS
 N CALL,DATEO,LIMIT,LIMITOK,LISTCALL,LNUM,SOURCE,TIME
 K ^TMP("FSC LIST CALLS",$J)
 S FSCLIMIT=$S($G(FSCLIMIT):FSCLIMIT,1:"1^"_$$MAXCALL^FSCUP)
 S (LIMIT,LNUM,VALMCNT)=0,FSCUD=$$USERDEF^FSCU(DUZ),VALMCAP=$$CAP^FSCU("L")
 I '$G(FSCDEV) W !
 I '$G(FSCQUERY) D
 .I $E(FSCLNAME,1,4)="MRE:" D  Q
 ..S TIME="" F  S TIME=$O(^FSCD("MRE","AUTC",FSCINDX,TIME)) Q:TIME=""  D  Q:LIMIT
 ...S CALL=0 F  S CALL=$O(^FSCD("MRE","AUTC",FSCINDX,TIME,CALL)) Q:CALL<1  D SETUP  Q:LIMIT
 .I $E(FSCLNAME,1,4)="MRA:" D  Q
 ..S TIME="" F  S TIME=$O(^FSCD("MRA","AUTC",FSCINDX,TIME)) Q:TIME=""  D  Q:LIMIT
 ...S CALL=0 F  S CALL=$O(^FSCD("MRA","AUTC",FSCINDX,TIME,CALL)) Q:CALL<1  D SETUP  Q:LIMIT
 .I $L($P(FSCL0,U,4)) D  Q
 ..S SOURCE="^FSCD(""CALL"","_$P(FSCL0,U,4)_$S($G(FSCINDX):","_FSCINDX,1:"")_")"
 ..S CALL="A" F  S CALL=$O(@SOURCE@(CALL),-1) Q:CALL<1  D SETUP Q:LIMIT  I (VALMCNT#10)=0 D CHECK(.VALMQUIT) I $D(VALMQUIT) Q
 .I $P(FSCL0,U,3)="M" D  Q
 ..D MANUAL^FSCLP(FSCLNUM)
 ..S CALL="A" F  S CALL=$O(^TMP("FSC LIST",$J,CALL),-1) Q:CALL<1  D SETUP Q:LIMIT  I (VALMCNT#10)=0 D CHECK(.VALMQUIT) I $D(VALMQUIT) Q
 .S LISTCALL="A" F  S LISTCALL=$O(^FSCD("LISTS","L",FSCLNUM,LISTCALL),-1) Q:LISTCALL<1  D  Q:LIMIT  I (VALMCNT#10)=0 D CHECK(.VALMQUIT) I $D(VALMQUIT) Q
 ..S CALL=+$G(^FSCD("LISTS",LISTCALL,0)) D SETUP
 I $G(FSCQUERY) S CALL="A" F  S CALL=$O(^TMP("FSC LIST",$J,CALL),-1) Q:CALL<1  D SETUP Q:LIMIT  I (VALMCNT#10)=0 D CHECK(.VALMQUIT) I $D(VALMQUIT) Q
 I $D(VALMQUIT) S FSCQUERY=0 Q
 I $G(FSCLIMIT),FSCLNAME'["(MODIFIED)",LNUM=$P(FSCLIMIT,U,2)!$P(FSCLIMIT,U,3) S FSCLNAME=FSCLNAME_" (MODIFIED)"
 S ^TMP("FSC LIST CALLS",$J)=LNUM_U_VALMCNT
 D EMPTY^FSCLMPQU
 S FSCQUERY=0
 Q
 ;
SETUP ; from FSCUS
 I $G(FSCLIMIT) S LIMITOK=1 D  Q:'LIMITOK
 .I $P(FSCLIMIT,U,2) D  Q
 ..I LNUM'<$P(FSCLIMIT,U,2) S LIMIT=1,LIMITOK=0 W !,"List is restricted to ",$P(FSCLIMIT,U,2)," entries.",$C(7) H 2
 .S DATEO=$P(^FSCD("CALL",CALL,0),U,3)
 .I DATEO<$P(FSCLIMIT,U,3) S LIMITOK=0 Q
 .I DATEO>$P(FSCLIMIT,U,4) S LIMITOK=0 Q
 S LNUM=LNUM+1,VALMCNT=VALMCNT+1
 S ^TMP("FSC LIST CALLS",$J,VALMCNT,0)=$$SHORT^FSCGETS(CALL,LNUM)
 S ^TMP("FSC LIST CALLS",$J,"IDX",LNUM,VALMCNT)=""
 S ^TMP("FSC LIST CALLS",$J,"CX",CALL)=""
 S ^TMP("FSC LIST CALLS",$J,"ICX",VALMCNT,CALL)=""
 I $D(^TMP("FSC LIST CLEANUP",$J,CALL)) D
 .S VALMCNT=VALMCNT+1
 .S ^TMP("FSC LIST CALLS",$J,VALMCNT,0)="  "_^TMP("FSC LIST CLEANUP",$J,CALL)
 Q
 ;
CHECK(VALMQUIT) ; from FSCLMPQA, FSCLMPQR, FSCLMPQS, FSCUS
 I $G(FSCDEV) Q
 I 'VALMCNT Q
 N X
 W "." K VALMQUIT
 R X:0 I $T,X=U D
 .N DIR,X,Y K DIR
 .S DIR(0)="YAO",DIR("A")="Do you want to stop this action? ",DIR("B")="NO"
 .S DIR("?",1)="Enter YES to stop processing this action."
 .S DIR("?",2)="NOTE: stopping this process will not preserve your previous screen."
 .S DIR("?",3)="Enter NO or '^' to continue processing."
 .S DIR("?")="^D HELP^FSCU(.DIR)"
 .S DIR("??")="FSC U 1 NOIS"
 .D ^DIR K DIR
 .I Y=1 S VALMQUIT=1
 Q
 ;
 S VALMHDR(1)=$$SETSTR^VALM1("# of calls: "_+^TMP("FSC LIST CALLS",$J),"List: "_FSCLNAME,62,18)
 Q
 ;
EXIT ; from list template - exit code
 D CLEAR^VALM1
 K ^TMP("FSC LIST",$J)
 K ^TMP("FSC LIST CALLS",$J)
 K ^TMP("FSC SELECT",$J)
 K ^TMP("FSC STATS",$J)
 Q
 ;
HELP ; from list template - help code
 I $G(X)'["?" Q
 S VALMBCK="R"
 N XQH
 I X="?" S XQH="FSC MENU LIST" D EN^XQH Q
 I X="???" S VALMANS="?" D CLEAR^VALM1 S XQH="FSC U1 NOIS" D EN^XQH Q
 Q