Manually entering a range filter

I have a list that includes boats.length and boats.beam. I'd like to have a filter that allows the user to select boats over 30', over 20' etc. But I don't see any option for that. Next best would be enabling the user to at least manually type in the range values rather than selecting them from a list of values found in the data. Is that an option?

Also, I'm currently seeing this message and if there's a way the user could type values, I hope it would remove this issue too:
The filter boats.length options have been truncate as they contains more records than Fabrik's global 'Filter List Max' configuration value.

Thanks in advance!
 
The filter boats.length options have been truncate as they contains more records than Fabrik's global 'Filter List Max' configuration value.
You can increase the value in Fabrik Options/Lists.
Default is 100.
Do you want to filter a list? Or a dbjoin inside a form?
 
My list has more than 100 boats. I’d like to filter for boats btw x and y lengths, ignoring the range of values found in the list. No way to let the user select a value from a prescribed list of values or let them enter a value directly?

Not sure what your question about joins is about. This is in the list filters, not a form view. Are you suggesting that the answer would be to show a form where the user can enter filer values then show the filtered list after submitting the form?
 
Are you suggesting that the answer would be to show a form
No, I just didn't see what you mean exactly.

You can set your boats.length element to Filter type = range in List view settings.
Doesn't this do what you are looking for?

Or you can try to use the "Tabs" feature in list settings. It's in Layout (no idea why, I think it should be in Filters).

Or some URL filtering links in a custom list template
https://fabrikar.com/forums/index.php?wiki/filtering-lists-tables/#simple-filtering-8203
 
Last edited:
Filtering via url almost works very well. With the element filter still active, I get a nicely descriptive display of the current filter settings achieved via the url:
Screenshot 2024-12-10 at 4.39.28 PM.png


But then, because there are more than 100 different boat lengths, I also get this warning message:
Screenshot 2024-12-10 at 4.45.30 PM.png


But when I remove the element filter to eliminate the error message, the filter description becomes far less helpful for a user:
Screenshot 2024-12-10 at 4.39.57 PM.png


So, none of the options seems ideal. I could add a calc field that rounds the boat length and filter on that, I guess.
 
If the filter description for the url-based filtering was as descriptive as the element filter, that would be a fine solution. But since that's not the case, I guess I need to consider adding a calc field that rounds the boat length and filter on that.
 
As I said: to get rid of the warning increase the filter max setting in Fabrik Options.
 
Oh, I see. I thought you meant the length field in the element. ( I have no idea what that the length field in the element filter section is for).

Thanks!
 
One more question on this: For tabs, I guess it's not possible to use a dbjoin element for tabs? I have a dbjoin element that i'd like to use for tabs, but it doesn't show in the list of elements to define for a tab.
 
I didn't dig into it. But yes, I also can't see dbjoin elements for selecting.

I assume best is to use a calc element (but set to calc on save only, the filter will use what is stored in the DB) which creates the set of labels you need.
Or a field element filled via a php plugin on save.

The tabs code is pretty complex, grouping and sorting (alphabetically) and distributing.
It will build groups by itself but throwing an error if there are to many.

So instead of having labels like 20,21,22..... 30,35 which may show up as "20 - 23", "24 - 31" (depending on the grouping count) it makes sense to reduce the possible options already with such an extra element.
In your case maybe containing something like 'length 20 to 29', length 30 to 39' etc.
 
Hi,

To address your requirement, you might consider using a Cascading Dropdown connected to a Database Join. By setting it up this way, selecting a primary category (e.g., 'over 20 ft', 'over 30 ft') would dynamically populate the Cascading Dropdown with the corresponding subcategories or ranges related to that category.

This approach allows for a more structured and user-friendly selection process and could potentially resolve the limitation you mentioned regarding the 'Filter List Max' configuration value, as only the relevant options would be loaded dynamically.

I hope this helps! Let me know if you need guidance setting it up.

Best regards!
 
I didn't dig into it. But yes, I also can't see dbjoin elements for selecting.

I assume best is to use a calc element (but set to calc on save only, the filter will use what is stored in the DB) which creates the set of labels you need.
Or a field element filled via a php plugin on save.

The tabs code is pretty complex, grouping and sorting (alphabetically) and distributing.
It will build groups by itself but throwing an error if there are to many.

So instead of having labels like 20,21,22..... 30,35 which may show up as "20 - 23", "24 - 31" (depending on the grouping count) it makes sense to reduce the possible options already with such an extra element.
In your case maybe containing something like 'length 20 to 29', length 30 to 39' etc.
Thanks. I went with links in the intro text blurb and it looks pretty slick:

Screenshot 2024-12-11 at 10.07.07 AM.png


A filter for membership type (my dbjoin field) is included in the filters, so that's pretty good. I like the idea of tabs for membership type, but changing that element to a dropdown would have some downstream complications in other areas. So this will do for now.

Thanks!
 

Attachments

  • Screenshot 2024-12-11 at 10.03.10 AM.png
    Screenshot 2024-12-11 at 10.03.10 AM.png
    209.1 KB · Views: 41

Members online

No members online now.
Back
Top