Subject Re: [IBO] ibotable filter problem
Author Helen Borrie (TeamIBO)
At 08:31 PM 26-02-02 +0100, you wrote:

>yes, with the same result. For example I've tried:
>SQL::(x)=y
>SQL::(x+y)=z
>SQL::((x+y)=z)
>
>all without success.
>
>Am I missing some property setting here?

Possibly..but we can't see what syntax you are using, with these examples.

The Filter syntax must permit a valid SQL WHERE clause to be made from your
entry; and you have already been advised to eliminate redundant brackets.

For example:

1. SQL::(x)=y
- would never be valid SQL syntax, since x should stand for a column name -
this would parse out to
WHERE (aColumn) = aConstant

2. SQL::(x+y)=z
- again, not valid syntax, as the WHERE clause would be
WHERE (aConstant + bConstant) = cConstant
or
WHERE (aColumn + bColumn)=aConstant
or WHERE (aColumn + aConstant)=bColumn
or other variations of constants and columns...
it would need to be
WHERE aColumn = bColumn - aConstant
or
WHERE aColumn = bColumn - cColumn
or
WHERE aColumn = aConstant - bColumn ...etc.

3. SQL::((x+y)=z)

As above, only worse, because you have 2 pairs of redundant brackets and
still may not have a parsable WHERE clause.

If you are setting your Filter string at run-time, then the whole thing
must evaluate in Delphi to a fully quoted string.

Blank spaces should not be a problem, once you sort out your brackets.


regards,
Helen Borrie (TeamIBO Support)

** Please don't email your support questions privately **
Ask on the list and everyone benefits
Don't forget the IB Objects online FAQ - link from any page at
www.ibobjects.com