1 | PXRMFFH ; SLC/PKR - Routines for function finding help. ;12/23/2004
|
---|
2 | ;;2.0;CLINICAL REMINDERS;;Feb 04, 2005
|
---|
3 | ;
|
---|
4 | ;======================================================
|
---|
5 | FSXHELP ;Function finding function string executable help.
|
---|
6 | N DONE,IND,TEXT
|
---|
7 | S DONE=0
|
---|
8 | F IND=1:1 Q:DONE D
|
---|
9 | . S TEXT=$P($T(TEXT+IND),";",3)
|
---|
10 | . I TEXT="**End Text**" S DONE=1 Q
|
---|
11 | . W !,TEXT
|
---|
12 | LOOP ;
|
---|
13 | K TEXT
|
---|
14 | S FUN=$$SELECT("^PXRMD(802.4)")
|
---|
15 | I FUN=0 Q
|
---|
16 | D GFTEXT(1,FUN,.TEXT)
|
---|
17 | D EN^DDIOL(.TEXT) G LOOP
|
---|
18 | Q
|
---|
19 | ;
|
---|
20 | ;======================================================
|
---|
21 | GFTEXT(START,FUN,TEXT) ;Load descriptions of available function finding
|
---|
22 | ;functions into the TEXT array starting at line START.
|
---|
23 | N IEN,IND,NDL,NL,PNAME
|
---|
24 | S NL=START
|
---|
25 | S IEN=$O(^PXRMD(802.4,"B",FUN,""))
|
---|
26 | S PNAME=$P(^PXRMD(802.4,IEN,0),U,4)
|
---|
27 | S NL=NL+1,TEXT(NL)=" "
|
---|
28 | S NL=NL+1,TEXT(NL)="Function: "_FUN
|
---|
29 | S NL=NL+1,TEXT(NL)="Print Name: "_PNAME
|
---|
30 | ;Load the description
|
---|
31 | S NL=NL+1,TEXT(NL)="Description:"
|
---|
32 | S NDL=+$P($G(^PXRMD(802.4,IEN,1,0)),U,4)
|
---|
33 | F IND=1:1:NDL D
|
---|
34 | . S NL=NL+1,TEXT(NL)=^PXRMD(802.4,IEN,1,IND,0)
|
---|
35 | Q
|
---|
36 | ;
|
---|
37 | ;======================================================
|
---|
38 | SELECT(GBL) ;
|
---|
39 | N CNT,DIR,DIROUT,DIRUT,DTOUT,DUOUT,FUN,X,Y
|
---|
40 | S DIR("A")="For help on the functions select from the available function types"
|
---|
41 | S DIR(0)="SO^"
|
---|
42 | S CNT=1
|
---|
43 | S FUN="" F S FUN=$O(@GBL@("B",FUN)) Q:FUN="" D
|
---|
44 | . I CNT=1 S DIR(0)=DIR(0)_CNT_":"_FUN
|
---|
45 | . I CNT>1 S DIR(0)=DIR(0)_";"_CNT_":"_FUN
|
---|
46 | . S CNT=CNT+1
|
---|
47 | D ^DIR
|
---|
48 | I Y=""!(Y["^") Q +Y
|
---|
49 | Q Y(0)
|
---|
50 | ;
|
---|
51 | ;======================================================
|
---|
52 | TEXT ;Function finding help text.
|
---|
53 | ;;The general form for a function finding is:
|
---|
54 | ;; FUN1(arg1,arg2,...argN) oper1 FUN2(arg1,arg2,...,argN) ...
|
---|
55 | ;; where FUN1 stands for function 1, FUN2 function 2, and so on.
|
---|
56 | ;; arg1,arg2,...,argN are the regular findings whose data are arguments
|
---|
57 | ;; to the function and oper1 stands for a Mumps operator.
|
---|
58 | ;; The operators can be any of the following Mumps operators:
|
---|
59 | ;; +,-,>,<,=,&,!, and '.
|
---|
60 | ;;
|
---|
61 | ;;When a function finding is evaluated the result will be treated as a logical
|
---|
62 | ;;true or false, where 0 is false and non-zero is true.
|
---|
63 | ;;
|
---|
64 | ;;An example of a function finding is: MRD(1,2)>MRD(5,6,7)
|
---|
65 | ;;This function finding will be true if the most recent date
|
---|
66 | ;;of regular findings 1 and 2 is greater than the most recent
|
---|
67 | ;;date of regular findings 5, 6, and 7.
|
---|
68 | ;;
|
---|
69 | ;;**End Text**
|
---|
70 | Q
|
---|
71 | ;
|
---|