仅按“字符”类型的列过滤数据col_name_list_character=dt << Get Column Names("Character");
// would like (if possible) to only filter by columns of type <EM>character</EM>.
// Same as filtering by col_name_list_character above
//
Button Box( " Activate Filter ", dfilter = dt << data filter( Mode( Show( 1 ), Include( 1 ) ), add filter() ) ),
//
// right now, the filter box has all columns (numeric and character)我很难弄清楚如何在我的应用程序中创建一个仅按“字符”类型的列进行过滤的数据过滤器。 附上我的一小部分代码。 看起来这个应该很容易,但我显然遗漏了一些东西。 任何帮助表示赞赏!
回复:仅按“字符”类型的列进行数据过滤不客气!回复:仅按“字符”类型的列进行数据过滤效果很好! 太感谢了。
回复:仅按“字符”类型的列进行数据过滤你好@Jim_G_Pappas
尝试这个:
Button Box( " Activate Filter ",
dfilter = dt << data filter( Mode( Show( 1 ), Include( 1 ) ), add filter() );
colObjList = {};
For( i=1, i<=NItems(col_name_list_chacter), i++,
InsertInto(colObjList, Column(col_name_list_chacter[i]) );
);
Eval(EvalExpr( dfilter << columns( Expr(colObjList) ) ) );
dfilter << Display( Single Category Display );
);
请注意,您正确描述的选项的“全局”应用是通过应用<< 展示(单品类展示)到数据过滤器对象,而不是每一列
回复:仅按“字符”类型的列进行数据过滤效果很好 - 我非常感谢您的回复!
唯一的问题是每列都显示了所有选项/级别。 所以过滤器列表远离页面底部。 我可以在屏幕上显示过滤器(显示选项 > 单一类别显示)后手动解决此问题,但很难将其添加到代码中。 我可以为每一列执行此操作(例如 Display( :Operator, Single Category Display ))但不知道如何“全局”在每一列上执行此操作,因为列从数据集更改为数据集。
有什么建议吗?
回复:仅按“字符”类型的列进行数据过滤@Jim_G_Pappas
尝试添加:
Button Box( " Activate Filter ",
dfilter = dt << data filter( Mode( Show( 1 ), Include( 1 ) ), add filter() );
colObjList = {};
For( i=1, i<=NItems(col_name_list_chacter), i++,
InsertInto(colObjList, Column(col_name_list_chacter[i]) );
);
Eval(EvalExpr( dfilter << columns( Expr(colObjList) ) ) );
);