Hi All,
Data Grid is displaying fewer records than expected, even though the API response and the bound JSON dataset contain the correct number of records.
During analysis, it was observed that:
Regards,
Sudharshan
Hi @Sudharshan T,
Could you share your OML file? It would help me analyze the issue more thoroughly.
I suspect that the data grid column filter uses case insensitive grouping of texts so that the filters do not show the duplicate values. And during filter the match happens as case sensitive.
Also, I believe it is not possible to make OutSystems Data Grid column filters case‑sensitive using built‑in functionality. Case‑sensitive filtering requires a custom implementation outside the Data Grid’s native filters.
Cheers,
Saugat
Hi @Saugat Biswas , the issue is because of case sensitive, any inputs here how we can get all data.
Unfortunately, data grid filters treat entries that differ only by case as duplicates and while grouping them matches as case insensitive. There is no configuration or api that can help eliminate this issue. You can raise a support ticket with data grid component to fix this issue, but I am not sure this will be addressed.
Hi @Sudharshan T ,
Just to confirm are you using ServerSidePagination = True ?
Also, what version of this component are you using?
Hi @Mihai Melencu, Yes I'm using server-side pagination and the data grid component version is 2.9.0
Can you please show us how you populate the data for the filter values, a sample OML would be helpful.
I m getting a data from API and then binding JSON output to data grid. My question is i see all four response from API and even in JSON but why it still consider/relies on client side filter while rendering
By default, when you switch to server-side pagination, filtering becomes condition-based. If you want to enable column filters by value, you need to use the client action API_Filter\SetColumnFilterOptions.
My question is: how and when are you calling this client action, and how are you populating the filter options?
HI @Mihai Melencu , Please find the attached OML file for reference. I have recreated the logic for how the value is retrieved from the API and how filtering is applied. Pagination has not been included in this. However, when the filter is applied, one record appears to be missing. The filtering method used is “Filter by Value.”
The issue was from the SQL GetResourceFilterValue, DISTINCT treats these as the same:
To fix this, you need to explicitly force a case-sensitive collation in your query.
You can do it like this:
I attached an updated OML as well.