View Full Version : To Grid Header Filter or to Flexible, multi-line Grid/Dataview/whatever filtering

7 Oct 2010, 11:57 PM
Which one do you thing is better for a user to find his data in a grid?

Grid header filters by d.zucconi:


Flexible, multi-line Grid/Dataview/whatever filtering by Animal:

11 Oct 2010, 4:23 AM
The one by animal has got operators and the option to use multiple criteria for the sáme field...

I prefer his one for now.

11 Oct 2010, 9:24 AM
It depends on the audience. Animal's is more powerful, but is definitely for power users. In one example, I use a variant of zucconi's but I have a pulldown of "contains, contains exactly, does not contain, starts with, ends with" above the actual search box. Thats for basic users that just want to type something and don't understand things like search wildcards, etc. I have an Advanced Search button that opens a modal window (or tab depending on the page) that has a tree of elements on the left and a multiline filter like animal in a grid to the right. I added paren-nesting so you can say "( A or B ) and C".

It sort of gives you the best of both worlds where someone can come in and quickly type in "Joel Smith" and find a record for a person, but then they can do some simple reporting-like queries with the advanced mode.

11 Oct 2010, 10:26 PM
Would you like to share your solutions with a screenshot?

12 Oct 2010, 4:30 AM
See screenshots.

The advanced filters work by double-clicking or dragging columns from the tree over to the right-side table. This lets you view the data categorically instead of a big pulldown (where you won't remember what things are called once the list gets large). There is a search on the tree in the upper left so you don't have to drill down - it works like Sencha's documentation search.

When you pick a column, its context-sensitive so it knows if its a date (and thus it gives you a date widget), number, text, boolean, etc. It lets you actually compare a field to a field (so average salary > median salary), and I have a formula builder so you can do some more advanced things with that.

If its text I have a hook to the postgresql (my database) statistics tables that I've developed a rough algorithm to decide whether to make it a pulldown or textbox that autocompletes (and I figure out how many characters the user must type before it returns results). That seems chaotic on paper, but it works out pretty well with users since if the column is say currency they know the list is small and if its first name/last name of an employee they know there are thousands of entries and they've got to filter the data down by typing.