[613] | 1 | BPSOSU2 ;BHAM ISC/FCS/DRS/FLS - copied for ECME ;06/01/2004
|
---|
| 2 | ;;1.0;E CLAIMS MGMT ENGINE;**1**;JUN 2004
|
---|
| 3 | ;----------------------------------------------------------------------
|
---|
| 4 | ;----------------------------------------------------------------------
|
---|
| 5 | ;Standard FREETEXT and Numeric Functions
|
---|
| 6 | ;----------------------------------------------------------------------
|
---|
| 7 | ;Standard FREETEXT PROMPT:
|
---|
| 8 | ;
|
---|
| 9 | ;Parameters:
|
---|
| 10 | ; PROMPT = Text to be displayed before read
|
---|
| 11 | ; DFLT = DEFAULT text
|
---|
| 12 | ; OPT = 1 - Answer optional 0 - Answer required
|
---|
| 13 | ; MINLEN = Minimum length of response text
|
---|
| 14 | ; MAXLEN = Maximum length of response text
|
---|
| 15 | ; TIMEOUT = Number of seconds
|
---|
| 16 | ;
|
---|
| 17 | ;Returns:
|
---|
| 18 | ; <null> = No response <^> - Up-arrow entered
|
---|
| 19 | ; <-1> = Timeout occurred <^^> - Two up-arrows entered
|
---|
| 20 | ; <text> = Response text
|
---|
| 21 | ;---------------------------------------------------------------------
|
---|
| 22 | FREETEXT(PROMPT,DFLT,OPT,MINLEN,MAXLEN,TIMEOUT) ;EP
|
---|
| 23 | ;
|
---|
| 24 | N XDATA,DIR,X,Y,DTOUT,DUOUT,DIRUT,DIROUT
|
---|
| 25 | ;
|
---|
| 26 | Q:$G(PROMPT)="" ""
|
---|
| 27 | S:$G(MINLEN)="" MINLEN=0
|
---|
| 28 | S:$G(MAXLEN)="" MAXLEN=245
|
---|
| 29 | ;
|
---|
| 30 | S $P(DIR(0),"^",1)="FA"_$S(OPT=1:"O",1:"")
|
---|
| 31 | S $P(XDATA,":",1)=MINLEN
|
---|
| 32 | S $P(XDATA,":",2)=MAXLEN
|
---|
| 33 | S $P(DIR(0),"^",2)=XDATA
|
---|
| 34 | S DIR("A")=PROMPT
|
---|
| 35 | S:$G(DFLT)'="" DIR("B")=DFLT
|
---|
| 36 | S:+$G(TIMEOUT)>0 DIR("T")=TIMEOUT
|
---|
| 37 | D ^DIR
|
---|
| 38 | Q $S($G(DTOUT)=1:-1,$G(DIROUT)=1:"^^",$G(DUOUT)=1:"^",1:Y)
|
---|
| 39 | ;---------------------------------------------------------------------
|
---|
| 40 | ;Standard Numeric PROMPT:
|
---|
| 41 | ;
|
---|
| 42 | ;Parameters:
|
---|
| 43 | ; PROMPT = Text to be displayed before read
|
---|
| 44 | ; DFLT = DEFAULT Numeric
|
---|
| 45 | ; OPT = 1 - Answer optional 0 - Answer required
|
---|
| 46 | ; MINNUM = Minimum numeric value
|
---|
| 47 | ; MAXNUM = Maximum numeric value
|
---|
| 48 | ; MAXDEC = Maximum number of decimal places allowed
|
---|
| 49 | ; TIMEOUT = Number of seconds
|
---|
| 50 | ;
|
---|
| 51 | ;Returns:
|
---|
| 52 | ; <null> = No response <^> - Up-arrow entered
|
---|
| 53 | ; <-1> = Timeout occurred <^^> - Two up-arrows entered
|
---|
| 54 | ; <Numeric> = Response Numeric
|
---|
| 55 | ;---------------------------------------------------------------------
|
---|
| 56 | NUMERIC(PROMPT,DFLT,OPT,MINNUM,MAXNUM,MAXDEC,TIMEOUT) ;EP
|
---|
| 57 | ;
|
---|
| 58 | N XDATA,DIR,X,Y,DTOUT,DUOUT,DIRUT,DIROUT
|
---|
| 59 | ;
|
---|
| 60 | Q:$G(PROMPT)="" ""
|
---|
| 61 | ;
|
---|
| 62 | S $P(DIR(0),"^",1)="NA"_$S(OPT=1:"O",1:"")
|
---|
| 63 | S $P(XDATA,":",1)=$G(MINNUM)
|
---|
| 64 | S $P(XDATA,":",2)=$G(MAXNUM)
|
---|
| 65 | S $P(XDATA,":",3)=$G(MAXDEC)
|
---|
| 66 | S $P(DIR(0),"^",2)=XDATA
|
---|
| 67 | S DIR("A")=PROMPT
|
---|
| 68 | S:$G(DFLT)'="" DIR("B")=DFLT
|
---|
| 69 | S:+$G(TIMEOUT)>0 DIR("T")=TIMEOUT
|
---|
| 70 | D ^DIR
|
---|
| 71 | Q $S($G(DTOUT)=1:-1,$G(DIROUT)=1:"^^",$G(DUOUT)=1:"^",1:Y)
|
---|