TUniQuery throws 'Illegal filter expression'

Discussion of open issues, suggestions and bugs regarding UniDAC (Universal Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
TinTin
Posts: 46
Joined: Sat 30 May 2009 14:09

TUniQuery throws 'Illegal filter expression'

Post by TinTin » Mon 07 Mar 2011 16:14

My debug environment:
delphi xe + sqlite3( new version) + UniDAC 3.5.0.14

TUniQuery throws 'Illegal filter expression' if Compare Float Value.

My Filter expression is :
TUniQuery.Filter := 'AMT - AMT2 > 0'

AMT and AM2 is SQLITE TFloatField.
debug break in "MemData.Pas",Line is 4023,Method
"Filter Error!"
Last edited by TinTin on Mon 07 Mar 2011 16:20, edited 1 time in total.

TinTin
Posts: 46
Joined: Sat 30 May 2009 14:09

Re: TUniQuery throws 'Illegal filter expression'

Post by TinTin » Mon 07 Mar 2011 16:19

TinTin wrote:My debug environment:
delphi xe + sqlite3( new version) + UniDAC 3.5.0.14

TUniQuery throws 'Illegal filter expression' if Compare Float Value.

My Filter expression is :
TUniQuery.Filter := 'AMT - AMT2 > 0'

AMT and AM2 is SQLITE TFloatField.
debug break in "MemData.Pas",Line is 4023,Method
"Filter Error!"
---------
If only compare one value is OK!
Such is
TUniQuery.Filter := 'AMT >0'
TUniQuery.Filter := 'AMT2 >0'

if I write Filter is ok:
'AMT > AMT2 'SO it is a bug:
'AMT - AMT2 > 0'???

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

Post by AlexP » Wed 09 Mar 2011 08:16

Hello,

Now the filter property doesn't support arithmetic operations.
We will investigate the possibility of adding this feature in one of the next builds/versions of UniDAC.

Post Reply