14libname permlib (work);
16%mp_coretable(LOCKTABLE,libds=permlib.locktable)
17%mp_coretable(FILTER_SUMMARY,libds=permlib.filtsum)
18%mp_coretable(FILTER_DETAIL,libds=permlib.filtdet)
19%mp_coretable(MAXKEYTABLE,libds=permlib.maxkey)
23 infile datalines4 dsd;
24 input GROUP_LOGIC:$3. SUBGROUP_LOGIC:$3. SUBGROUP_ID:8. VARIABLE_NM:$32.
25 OPERATOR_NM:$12. RAW_VALUE:$4000.;
27AND,AND,1,Start,>,"'2'"
28AND,AND,1,Fmtname,=,"'MORDOR'"
29OR,OR,2,Label,IN,"('Dragon1','Dragon2')"
31OR,OR,2,Start,GE,"'10'"
36PROC FORMAT library=permlib.testfmts;
37 picture MyMSdt other='%0Y-%0m-%0dT%0H:%0M:%0S' (datatype=datetime);
41 do fmtname='SMAUG','MORDOR','GOLLUM';
43 label= cats('Dragon ',start);
48proc sort data=work.fmts nodupkey;
51proc format cntlin=work.fmts library=permlib.testfmts;
53proc format library=permlib.testfmts;
54 invalue indays (default=13) other=42;
58%mp_assertscope(SNAPSHOT)
59%mp_filterstore(libds=permlib.testfmts-fc,
61 filter_summary=permlib.filtsum,
62 filter_detail=permlib.filtdet,
63 lock_table=permlib.locktable,
64 maxkeytable=permlib.maxkey,
65 outresult=work.result,
69%mp_assertscope(COMPARE)
71%mp_assert(iftrue=(&syscc=0),
72 desc=Ensure macro runs without errors,
73 outds=work.test_results
76%mp_assertdsobs(permlib.filtsum,
79 outds=work.test_results
83select max(filter_rk) into: test1 from work.result;
84%mp_assert(iftrue=(&test1=1),
85 desc=Ensure filter rk is correct,
86 outds=work.test_results
90%mp_filterstore(libds=permlib.testfmts-fc,
92 filter_summary=permlib.filtsum,
93 filter_detail=permlib.filtdet,
94 lock_table=permlib.locktable,
95 maxkeytable=permlib.maxkey,
96 outresult=work.result,
101%mp_assertdsobs(permlib.filtsum,
102 desc=Initial query - same obs,
104 outds=work.test_results
108select max(filter_rk) into: test2 from work.result;
109%mp_assert(iftrue=(&test2=1),
110 desc=Ensure filter rk is correct for second run,
111 outds=work.test_results