we just noticed, that a filter is not effective when the form that is being filtered is shown inside a split pane. The situation is as follows:
A split pane shows a tab panel that shows a table view. That table view has a filter attached using the onLoad event. It filters correctly in the tab panel (without the split bean), but once shown in the split pane, all (related) records are shown, not just the filtered ones.
Always use a (invisible)tabpanel in a split pane, see the bookstudy sample shipped by Servoy.
When using a tabpanel it also makes sure when accessing/reusing the form as normal main form it is placed back into the splitpane(invisible tabpanel)
I am not sure I understood everything you want to tell me. Fact is, whatever property we use for the tab panel (Default, Hide, Top), data is not filtered. It works perfect if not shown in a split pane.
In a splitpane add 2 tabpanels to both sides, in those tabpanels add (relationless) forms, by doing so you prevent problems (when form is reused and have correct initalization) , see also the BookStudy example source
That’s exactly what we are doing. The only difference is, that we use related forms (the bean sits on the parent record, the tabs show related data). But the problem does not only occur in the bean, but also in the tab panel itself. So basically we observe this:
a filter applied to a table view filters does what it should
show that table view form in a tab panel and data is NOT filtered (although the filter method is fired)
We just thought the fault goes to the bean; but this also occurs if there is no bean envolved.
ah, addFoundSetFilter do not work on related foundset (only on the main foundset object), you can add the condition to your relation to have same effect.
So it has nothing todo with with beans/tabpanels/splitpanes…
Then I have another question: why does a relation like
globals.active != active
where globals.active = 1
not work?
I want all records, where the column active is not equal to 1. So I thought I use a global, make it 1, and set the relation like stated above (!=). While this does not work, something like