Subject | Re: [IBO] ibotable filter problem |
---|---|
Author | Helen Borrie (TeamIBO) |
Post date | 2002-02-26T12:59:53Z |
At 08:31 PM 26-02-02 +0100, you wrote:
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
>yes, with the same result. For example I've tried:Possibly..but we can't see what syntax you are using, with these examples.
>SQL::(x)=y
>SQL::(x+y)=z
>SQL::((x+y)=z)
>
>all without success.
>
>Am I missing some property setting here?
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