Loading...
Searching...
No Matches
validatefilter.test.sas
Go to the documentation of this file.
1/**
2 @file
3 @brief testing public/validatefilter service
4
5 <h4> SAS Macros </h4>
6 @li mx_execute.sas
7 @li mp_assertdsobs.sas
8 @li mp_assertcolvals.sas
9 @li mf_getuniquefileref.sas
10
11**/
12
13%let _program=&appLoc/services/public/validatefilter;
14
15/* filter for one record */
16%let f1=%mf_getuniquefileref();
17data _null_;
18 file &f1 termstr=crlf;
19 put 'filter_table:$41.';
20 put "&dclib..MPE_TABLES";
21run;
22%let f2=%mf_getuniquefileref();
23data _null_;
24 file &f2 termstr=crlf;
25 infile datalines4 dsd;
26 input;
27 put _infile_;
28datalines4;
29GROUP_LOGIC:$3. SUBGROUP_LOGIC:$3. SUBGROUP_ID:8. VARIABLE_NM:$32. OPERATOR_NM:$10. RAW_VALUE:$4000.
30AND,AND,1,LIBREF,CONTAINS,"'DC'"
31AND,OR,2,DSN,=,"'MPE_LOCK_ANYTABLE'"
32;;;;
33run;
34%mx_execute(&_program,
35 viyacontext=&defaultcontext,
36 inputfiles=&f1:iwant &f2:filterquery,
37 outlib=web1
38)
39data result;
40 set web1.result;
41run;
42%mp_assertdsobs(work.result,
43 desc=Test1 result filter,
44 test=EQUALS 1
45)
46
47/* filter for one record */
48
49data work.iwant;
50 filter_table='DCTEST.DCFMTS-FC';
51run;
52data work.filterquery;
53GROUP_LOGIC='AND';
54SUBGROUP_LOGIC='AND';
55SUBGROUP_ID=1;
56VARIABLE_NM='FMTNAME';
57OPERATOR_NM='CONTAINS';
58RAW_VALUE="'MORD'";
59;;;;
60run;
61%mx_execute(&_program,
62 viyacontext=&defaultcontext,
63 inputdatasets=work.iwant work.filterquery,
64 outlib=web2,
65 outref=web2ref
66)
67data _null_;
68 infile web2ref;
69 input;
70 putlog _infile_;
71run;
72data result;
73 set web2.result;
74 putlog (_all_)(=);
75run;
76%mp_assertdsobs(work.result,
77 desc=Test2 result filter,
78 test=EQUALS 1
79)