FilteringTable add-on

I am getting Scrolling Issue in IE,

            The Filter box for the Date is not Moving when we horizontally scroll the page. The same happens in the demo page also, Any idea?

12263.png

Hi,

Just wanted to confirm that I can duplicate the issue on IE7 (not on IE8/9). I hope you are also experiencing this only on IE7. I took a quick look on the issue but could not see an obivous fault. I will try to have a better look at the issue within a week.

-Tepi

Hi,
Ya, i am getting this issue in IEv7.0. addon works good in Firefoxv11.

Hei Teppo,

This is an amazing addon! I have tried to use it for a recent project and it just works great!
But somehow I found some issues may improved to be better

  • Can I set the resolution (I mean, MONTH, DAY, HOUR or MIN) to the datepicker field inside popup window, currently it applied the default setting to MIN and not changeable for my point of view.
  • Can I add a filter manually outside to container and put it into the hashmap columnIdToFilterMap, so it also can be removed when value change event is fired.

The situation I encountered was:
I have a tree list and a filtertable, I want to load whole bunch of data in to table at beginning and when I click whatever item in the tree, a filter is attached to the container so the table only show data related to my selection. But when I’m using filter functionality in filtertable, it should remove all my previous filters and start to filter the container.
Currently I can add my filter but not removable from my table, so I’m thinking there maybe some way to call the filtering function outside table or map my filter inside the map.

Thanks if you can notice =)

Hi,

and thanks for the nice feedback and your improvement suggestions :).

This is not currently possible. Since this is quite simple, I’ll add a way to access the resolution setting on the date selectors to the next version of FilteringTable.

This sounds reasonable too, although it’s not possible at the moment. The current reasoning is that FilteringTable will only touch the filters that are created through it’s fields. I’ll look into it and see what would be the most usable way to implement this. A direct access to the map will probably not be a good idea, but I could see implementing e.g. a notifier/listener for the filter change events, which could then be used for example for this purpose.

I’ll try to get the next version out the door during next week.

-Tepi

I know this is picky but how could i style the DateFilterPopup to look like a DateField?

Hi

I tried to test this add-on but I get the following error

error: error while loading FilterTable, Missing dependency ‘class com.vaadin.ui.CustomTable’

I’m using Vaadin 6.7.6 and FilteringTable 0.5.2. The CustomTable class is not in the vaadin jar nor in the filteringtable jar

Any hints?

Regards
Carlos

Hi Carlos,

you’re right! I took an ant build script into use in version 0.5.2 but apparently I forgot to add a few paths :frowning: Anyway, there is now a version 0.5.3 available in the directory and this version should have all the files in it (I tested it with a clean project now).

Thanks for pointing out the issue!

-Tepi

Style popup-button like datefilter popup.Add in filtertable.css :

div.v-button-datefilterpopup div.v-popup-indicator {
	cursor:pointer;
	background: url("../../../themes/reindeer/common/img/vertical-sprites.png") repeat scroll left -339px transparent;
	padding-right: 6px; }

Another problem with this change is that any shared method that used to configure a table does not work anymore with FilterTable because a FilterTable is not a table. That’s quite annoying.

Something else we use is some abstraction on top of Table and TreeTable so we have a decorator taking . I can’t use that anymore with this extension. So it is pretty much unusable for us, unfortunately.

Do you think this should end up in 6.8 or 7 ?

Hi

Thanks for that. Now the missing class is there.
I still have a related problem. I work in an OSGi environment and filterintable is exporting the com.vaadin.ui package and conflicts with vaadin.

Is it posssible to use a different package name for CustomTable, or do you do it that way to get around overriding protected packages?

Kiitos
Carlos

Hi,

Yes, I know this is a problem in some environments, but the reason I have to use the com.vaadin.ui package is the exact one you guessed. I tried to use another package name but that brings out a lot of dependencies (which in turn have a lot of dependencies) which can not be accessed outside the com.vaadin.ui package.

So for Vaadin 6, I’d say it’s going to be this way for the foreseeable future. I do hope that Vaadin 7 would make this part a bit easier and possible even remove the need to copy-paste the original classes.

-Tepi

First of all thank you very much for this great Add-On!
It definitely meets a need in the Vaadin Repo…

Will you possibly consider implementing a getFilter() and a public setFilter() method in an future release?
The thought is to store all entries from the filter fields and restore them when needed. One possible use of this could be creating customized filtersets and swapping them dynamically.

What do you think?

Thanks
Alec

Hi!

want to ask you the same thing. btw why don’t use locale, stored in table (table.setLocale), for filter formatting? It’s in FilterDecorator now.

Hi!

I am having a problems with DateField:

  1. filtertable.setColumnCollapsed (“DATETIME”, true);

Caused by: com.vaadin.event.ListenerMethod $ MethodException: Invocation of method valueChange in org.tepi.filtertable.FilterTable $ 1 failed.
at com.vaadin.event.ListenerMethod.receiveEvent (ListenerMethod.java: 532)
at com.vaadin.event.EventRouter.fireEvent (EventRouter.java: 164)
at com.vaadin.ui.AbstractComponent.fireEvent (AbstractComponent.java: 1219)
at com.vaadin.ui.AbstractField.fireValueChange (AbstractField.java: 922)
at com.vaadin.ui.AbstractField.valueChange (AbstractField.java: 1049)
at org.tepi.filtertable.datefilter.DateFilterPopup.setInternalValue (Unknown Source)
at org.tepi.filtertable.FilterTable.setColumnCollapsed (Unknown Source)

  1. filtertable has a problem with SQLContainer,
    Filter DateInterval not translated into a string in the QueryBuilder.getWhereStringForFilter
    Why not use a standard type of filter “Between”? Then it will be all ok!

is there a Maven POM for it?

We had a similar idea, adding a method like this should work:

public setFilterFieldValue(String propertyId, Object value) {
AbstractField field = (AbstractField) columnIdToFilterMap.get(propertyId);
field.setValue(value);
}

We tried this because we have 2 tables on a page, and if a user selects a row from Table A we want to show corresponding records in (Filter) Table B. This method means we can pass a cell value and use that as a filter.

Hi,

I’m using vaadin 6.7.6.Compiled all widgetsets successfully.I’ve downloaded the demo application for FILTER TABLE add on(DemoFilterGenerator,DemoFilterDecorator,FiltertabledemoApplication.java files) and compiled successfully.But,I’m unable to see the output portlet in the liferay console.It is displaying Just header bar…Please sugget me…I’m strucking here since many days.

Thanks
Krrish
12309.jpg

Hi,

If you’re using the demo application as a portlet, you must change some sizings.

At least the main window and the layout it contains (mainWindow and mainLayout variables in the demo app) must be set to undefined height (for example call setHeight(null) for both). In addition to this, also the FilterTable instance itself should have its height set to null. Then you can control the height of the table with the setPageLength method of the FilterTable. Or you can of course set a fixed height to the table, e.g. setHeight(“400px”);

-Tepi

Like any add-on

<dependency>
   <groupId>org.vaadin.addons</groupId>
   <artifactId>filteringtable</artifactId>
   <version>0.5.3</version>
</dependency>

<repository>
   <id>vaadin-addons</id>
   <url>http://maven.vaadin.com/vaadin-addons</url>
</repository>

http://vaadin.com/directory#addon/filteringtable