CRGRID - after Update -> "dgeLocalFilter = false" -> no results in the List

Discussion of open issues, suggestions and bugs regarding UniDAC (Universal Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
michi42
Posts: 3
Joined: Fri 30 Oct 2015 05:44

CRGRID - after Update -> "dgeLocalFilter = false" -> no results in the List

Post by michi42 » Fri 30 Oct 2015 07:10

Hello there,
I use ODAC for RAD Studio XE7. 2 days ago I made an update to version 6.9.20 ODAC (the previous version was about 1 year old) and my application recompiled. I used Oracle and the CRGRID for the selection of the data records. I used "dgeLocalFilter = false" For the filtering. The filtering was so fast.
After the update is no longer working with the filtering "dgeLocalFilter = false".
When a filtering operation (strings) always returns an empty result. I had to "dgeLocalFilter =true" change all CRGRID with the option. Now the Fiterung working again, just a little slower. Is this a bug or do I have to make other settings so that the filtering is performed by the database server? Does anyone have a solution for it?

thanks

michi42
Posts: 3
Joined: Fri 30 Oct 2015 05:44

Re: CRGRID - after Update -> "dgeLocalFilter = false" -> no results in the List

Post by michi42 » Fri 30 Oct 2015 08:53

Hello again,
with the Database Monitor have found that the database query which generates the CRGRID, always refers to "dgeLocalFilter = false" only on the first field in the query. No matter in which field I enter a filter string, it is always compared with the first Fild, which is of course wrong.
Which lines in the source code in CRGRID.pas I had to change, that the correct column is used for the comparison in the query?
greetings

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: CRGRID - after Update -> "dgeLocalFilter = false" -> no results in the List

Post by AlexP » Fri 30 Oct 2015 12:35

Hello,

Thank you for the information, we have reproduced and fixed the issue. This fix will be included in the next version. For the time being, you have to make the following changes in CRGrid module in the GetFilterExpression method:

replace all calls to fields as

Code: Select all

Fields[0]
with

Code: Select all

Fields[Field.FieldNo - 1]

michi42
Posts: 3
Joined: Fri 30 Oct 2015 05:44

Re: CRGRID - after Update -> "dgeLocalFilter = false" -> no results in the List

Post by michi42 » Mon 02 Nov 2015 07:19

Thanks, it works :D

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: CRGRID - after Update -> "dgeLocalFilter = false" -> no results in the List

Post by AlexP » Mon 02 Nov 2015 07:43

Glad to see that the issue was resolved. If you have any further questions, feel free to contact us.

Post Reply