Apply filter again after data load

Hi
I am using a treetable and a multiselect filter. But when i parse new data into table, the filter is not automatically applied to table. How can I apply the filter to newly loaded data as well.

To reapply filters, you can use filterByAll API

ttable.filterByAll()

http://docs.webix.com/api__link__ui.treetable_filterbyall.html

It throws an error, “Dynamic Loading not implemented”

Note that I am using a treetable and loading more data in table using:

table.parse(moreData)

“Dynamic Loading not implemented” also shows up if I load data by parse initially and then apply filter.

Such message will appear if you are using dynamic loading and client side filters in the same time ( client side filters can’t work with dynamic data, as they can’t filter not loaded yet records )

If you are not using dynamic loading - please check that data collection ( moreData ) has not null records ( comma at the end of list will result in null object in IE )

I am not using dynamic loading. And data doesn’t have comma at the end.
To explain better, have a look at this sample.

http://apps.prod.native5.com/zY19LTC4c1419245804/

Using webix 2.1.8, data loading on scroll(not dynamic loading) works fine without filters. As I apply filters and try to load more data(attached to scroll event), there’s an error.

Hi
Fixed the issue.
Small bug in webix.

Fixed by adding this code to line 20806 (webix_debug.js: 2.1.8)

if(typeof value !== ‘string’) return value;

There is one bug though. The filter works now after loading new data.
But the filter shows empty after loading.

ttable.filterByAll() should set the view for filter as well, which it does not.

You can follow what I am saying by following above link.

I can confirm the second issue.
Fix will be included in the next build.

As quick solution you can change in the webix_debug.js
line 17343

record[1].value = inputvalue;

as

record[1].value = record[2].getValue(record[0]);