1 | FSCQCAV ;SLC/STAFF-NOIS Query Criteria Ask Value ;8/25/94 17:14
|
---|
2 | ;;1.1;NOIS;;Sep 06, 1998
|
---|
3 | ;
|
---|
4 | VALUE(COND,TYPE) ; from FSCLMPME, FSCQB
|
---|
5 | N DIC,DIR,VALUE1,VALUE2
|
---|
6 | S VALUE=""
|
---|
7 | I $P(COND,U,3)="exists" Q
|
---|
8 | I $P(COND,U,3)="not exists" Q
|
---|
9 | S DIR("?")="^D HELP^FSCQD"
|
---|
10 | ;
|
---|
11 | ; free-text values
|
---|
12 | I TYPE["F"!(TYPE["W") D Q
|
---|
13 | .S DIR(0)="FAO^1:30",DIR("A")="Text: "
|
---|
14 | .S DIR("?",1)="Enter the text to be used in the search."
|
---|
15 | .S DIR("??")="FSC U1 NOIS"
|
---|
16 | .D ^DIR
|
---|
17 | .S VALUE=Y_U_""""_Y_""""
|
---|
18 | ;
|
---|
19 | ; date values
|
---|
20 | I TYPE["D" D Q
|
---|
21 | .S DIR(0)="DAO^:DT:EX",DIR("A")="Date: "
|
---|
22 | .S DIR("?",1)="Enter the date to be used in the search."
|
---|
23 | .S DIR("??")="FSC U1 NOIS"
|
---|
24 | .I $P(COND,U,3)["range" D Q
|
---|
25 | ..S DIR("A")="First Date: " D ^DIR Q:$D(DTOUT) Q:$D(DUOUT) S VALUE1=Y,VALUE=VALUE1_U_$$FMTE^XLFDT(VALUE1)_" to "
|
---|
26 | ..S DIR("A")="Last Date: " D ^DIR Q:$D(DTOUT) Q:$D(DUOUT) S VALUE2=Y
|
---|
27 | ..S:VALUE1>VALUE2 X=VALUE1,VALUE1=VALUE2,VALUE2=X
|
---|
28 | ..S VALUE=VALUE1_"-"_VALUE2_U_$$FMTE^XLFDT(VALUE1)_" to "_$$FMTE^XLFDT(VALUE2)
|
---|
29 | .D ^DIR
|
---|
30 | .S VALUE=Y_U_$$FMTE^XLFDT(Y)
|
---|
31 | ;
|
---|
32 | ; numeric values
|
---|
33 | I TYPE["N" D Q
|
---|
34 | .S DIR(0)="NOA^0:999:2",DIR("A")="Number: "
|
---|
35 | .S DIR("?",1)="Enter a numeric value to be used in the search."
|
---|
36 | .S DIR("?",2)="The number may include two decimal places"
|
---|
37 | .S DIR("??")="FSC U1 NOIS"
|
---|
38 | .I $P(COND,U,3)["range" D Q
|
---|
39 | ..S DIR("A")="First Number: " D ^DIR Q:$D(DTOUT) Q:$D(DUOUT) S VALUE1=Y,VALUE=VALUE1_U_VALUE1_" to "
|
---|
40 | ..S DIR("A")="Last Number: " D ^DIR Q:$D(DTOUT) Q:$D(DUOUT) S VALUE2=Y
|
---|
41 | ..S:VALUE1>VALUE2 X=VALUE1,VALUE1=VALUE2,VALUE2=X
|
---|
42 | ..S VALUE=VALUE1_"-"_VALUE2_U_VALUE1_" to "_VALUE2
|
---|
43 | .D ^DIR
|
---|
44 | .S VALUE=+Y_U_Y
|
---|
45 | ;
|
---|
46 | ; pointer values
|
---|
47 | I TYPE["P" D Q
|
---|
48 | .S DIC=+$P(TYPE,"P",2),DIC(0)="EMOQZ",DIC("A")="Select "_$P(FIELD,U,2)_": "
|
---|
49 | .I $L($G(^FSC("FLD",+FIELD,.1))) S DIC("S")=^(.1)
|
---|
50 | .S DIR("?",1)="Select the value of the field."
|
---|
51 | .D LOOK^FSCQU(.DIC,.DIR)
|
---|
52 | .S VALUE=+Y_U_$G(Y(0,0))
|
---|
53 | Q
|
---|