Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 3 of 3 total
Thread DBISAM Upgrade to 4, Error # 10051 Filter error on forms
Tue, Feb 10 2009 10:37 AMPermanent Link

Joel Schaubert

Upgrading to DBISAM v4 from V3.
One of my forms has reports with master - detail relationship.

Master is a TDBISAMQuery,  it has a TDataSource named DataSource1 set to it as the DataSet
Detail is a TDBISAMQuery,  it has a filter with this statement

        juvid = DataSource1.jjuivd

This worked in Engine 3, but in 4 I get    "Error # 10051 Filter rror for the table '4162'
- Invalid expression . found in in filter expression at line 1, column 20.

Following the porting guide and Changing to this
        juvid = "DataSource1.jjuivd"

gives error    "Error #10051 Filter error for the table '4162' - Expected column name but
instead found "DataSource1.jjuvid" in filter epxpression at line 1, column 9.

Joel
Tue, Feb 10 2009 2:22 PMPermanent Link

Joel Schaubert


        juvid = DataSource1.jjuivd

This worked in Engine 3, but in 4 I get    "Error # 10051 Filter rror for the table '4162'
- Invalid expression . found in in filter expression at line 1, column 20.

Following the porting guide and Changing to this
        juvid = "DataSource1.jjuivd"

gives error    "Error #10051 Filter error for the table '4162' - Expected column name but
instead found "DataSource1.jjuvid" in filter epxpression at line 1, column 9.



Changing to single quotes fixes the problem
        juvid = 'DataSource1.jjuivd'

Joel
Tue, Feb 10 2009 6:13 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Joel,

<< Changing to single quotes fixes the problem
        juvid = 'DataSource1.jjuivd' >>

Yes, double-quotes are no longer permissible with constant string
expressions in DBISAM 4.x  Only single-quotes are allowed:

SQL statements and filter expressions now require all constants to be
enclosed in single quotes as opposed to double-quotes. Identifiers such as
table names and column names can still be (and must be) enclosed in double
quotes or brackets. This allows DBISAM's parser to distinguish properly
between identifiers and constants, which previously would confuse the
parser, especially with expressions like this:

MyColumName="MyColumnName"

where the parser didn't know whether to treat "MyColumnName" as a constant
or a column value.

http://www.elevatesoft.com/manual?action=mantopic&id=dbisam4&product=d&version=7&category=0&topic=1

--
Tim Young
Elevate Software
www.elevatesoft.com

Image