selectFilter don't work with false.

I created a simple datatable with three boolean values to show all permuations and the result, with a selectFilter on every input value column. If you select in a column-filter “true” it works. If you select “false”, the complete table is cleaned!

function build() {
     data = [];
     Options = [true, false];
     for (var i=0; i<2;i++) for (var j=0; j<2; j++) for (var k=0; k<2; k++)
        data.push({id: i * 4 + j * 2 + k, A: Options[i], B: Options[j], C: Options[k],
                    R: Options[i] && Options[j] || Options[k] });
     config = [ { id: "A", header: [{ text: "Value A" }, { content: "selectFilter" }] },
                { id: "B", header: [{ text: "Value B" }, { content: "selectFilter" }] },
                { id: "C", header: [{ text: "Value C" }, { content: "selectFilter" }] },
                { id: "R", header: [{ text: "A & B | C" }] }];
     webix.ready(function () {
         webix.ui({
             container: "test", id: "datatable_test", view: "datatable",
             width: "100%", height: "100%",
             columns: config, data: data
         });
     });
};

Work-Around: Convert the boolean values into strings and it will work.

Yep, the selectFilter process all data as strings by default. It also works fine for number but will fail for complex objects or boolean data

If you need to filter against the boolean data - you can define a custom comparation function for the select filter

Check the next sample
http://webix.com/snippet/f32959d4

Also, check “Custom filtering rules” here
http://docs.webix.com/datatable__filtering.html#filtersintheheader