21libname permlib (work);
23%mddl_dc_locktable(libds=permlib.locktable)
24%mddl_dc_filtersummary(libds=permlib.filtsum)
25%mddl_dc_filterdetail(libds=permlib.filtdet)
26%mddl_dc_maxkeytable(libds=permlib.maxkey)
33data work.vw_class / view=work.vw_class;
36 if age>13 then band='TEEN';
42 infile datalines4 dsd;
43 input GROUP_LOGIC:$3. SUBGROUP_LOGIC:$3. SUBGROUP_ID:8. VARIABLE_NM:$32.
44 OPERATOR_NM:$12. RAW_VALUE:$4000.;
46AND,AND,1,BAND,=,"'TEEN'"
51%mp_assertscope(SNAPSHOT)
52%mp_filterstore(libds=work.class,
53 targetds=work.vw_class,
55 filter_summary=permlib.filtsum,
56 filter_detail=permlib.filtdet,
57 lock_table=permlib.locktable,
58 maxkeytable=permlib.maxkey,
59 outresult=work.result,
63%mp_assertscope(COMPARE)
65%mp_assert(iftrue=(&syscc=0),
66 desc=Ensure macro runs without errors,
67 outds=work.test_results
70%mp_assertdsobs(permlib.filtsum,
71 desc=Initial query creates exactly one summary record,
73 outds=work.test_results
78 where filter_table='WORK.CLASS';
80%mp_assertdsobs(work.chk,
81 desc=Filter table is the physical table, not the validation target,
83 outds=work.test_results