Agnes,
Cetin is right, the problem is in your filter command
pad Myval with spaces to the fieldlength. The Filter == and the sql == then behave the same (for char/memo fields)
local myval
myval = 'Agnes'
myval = padr(myval, fsize('NameField'))
set filter to NameField == myVal
local lcWhere
lcWhere = iif(empty(filter(), '', 'where ' + filter())
select * ;
from TheTable ;
&lcWhere
>Hi All,
>
>I ave a Problem with the '==' Operator in the SELECT SQL.
>
>My problem is, I have somewher a filter that is set like
>
>SET FILTER TO Field==myVal
>
>
>EXACT is OFF, ANSI is OFF
>
>Now I need to create a SQL SELECT that holds the same records as the filtered table.
>
>if I use something like
>
>lcWhere = IIF(EMPTY(FILTER(),'','WHERE '+FILTER())
>SELECT *;
> FROM MyTable;
> &lcWhere
>
>
>This gives possibly different results because the "==" Operator is differnt for SELECT SQL and any other place.
>
>So I'm thinking about, but could not find a good solution. Replace '==' with "=" and SET ANSI ON will mix up all original "=" statements.
>Using LIKE(MyVal,Filed) works fine - until somebody adds a wildcard to the myVal ...
>
>I run out on ideas on this.
>
>Please help me
>
>Agnes
Gregory