Log On
Embarcadero Home
Watch, Follow, &
Connect with Us
QualityCentral
Communities
Articles
Blogs
Resources
Downloads
Help
Quality Central
Delphi-BCB
Midas
Install
Java Midas
Socket Server
TClientDataSet
TDataSetProvider
TDCOMConnection
TMidasConnection
TOLEEnterpriseConnection
TProvider
TRemoteServer
TSimpleObjectBroker
TSocketConnection
TWebConnection
WebMidas
XML Midas
You are not logged in.
Help
Print
Public Report
Report From:
Delphi-BCB/Midas/TClientDataSet
[ Add a report in this area ]
Report #:
2626
Status:
Closed
Inability to use ftLargeInt as an index with a tClientDataset
Project:
Delphi
Build #:
4.453
Version:
7.0
Submitted By:
Steven Kamradt
Report Type:
Basic functionality failure
Date Reported:
10/9/2002 9:39:25 AM
Severity:
Serious / Highly visible problem
Last Updated:
6/27/2006 12:27:15 PM
Platform:
95, 98, 2000, NT, XP
Internal Tracking #:
160140
Resolution:
Fixed
(Resolution Comments)
Resolved in Build:
:
7.0.8.1
Duplicate of:
None
Voting and Rating
Overall Rating:
(9 Total Ratings)
4.78 out of 5
Total Votes:
None
Description
If you set a tClietnDataset field as a ftLargeInt type, the ability to use that field for indexing is lost.
See also report 1050 as I believe the two issues are related more in how the tClientDataset handles bigint or ftLargeInt fields.
Steps to Reproduce:
Compile and launch the attached program.
Press either column title to set that column as the index for the tClientDataset.
The ftLargeInt column will not sort properly and will result in the table being sorted in the order the fields were added to the database. The ftInteger column works as it should.
Workarounds
None
Attachment
ClientDataset Problem.zip
Comments
Arno Brinkman at 7/1/2003 4:47:14 AM
-
We have exactly the same problem that an run-time created Index on a LargeInt doesn't work.
Create an index on a LargeInt field in ClientDataset for example :
cds.IndexDefs.Add(lCDSIndexName, lFieldName, [ixCaseInsensitive, ixDescending]);
cds.IndexName := lCDSIndexName;
also the 'default' index method doesn't work :
cds.IndexFieldNames := lFieldName;
Stephen Everington at 7/14/2003 8:17:50 AM
-
I have a problem with largeInt's / TClientDataSets and Locate/Filters that I think is related to this. I have tracked it down as far as the function tFilterExpr.PutConstant in DBCommon that does not seem to allow for the possibility of Largeint's and hence returns an error (DatabaseErrorFmt(SExprBadConst, [Node^.FData]);)
I would guess that the first case statement (ftSmallInt, ftInteger, ftWord, ftAutoInc) needs ftLargeInt adding, but I'm not brave enough to try altering the supplied functions myself!
I thnik report 4838 is also linked to the same problem
ps I hope this is the correct use of this system as I have not used it before
Dave Rowntree at 5/11/2004 3:26:06 AM
-
Fixed in Midas.dll
View Your Reports
Search
Server Response from: CODE1
Developer Tools
Blackfish SQL
C++Builder
Delphi
Delphi for PHP
Delphi Prism
InterBase
JBuilder
J Optimizer
3rdRail & TurboRuby
Database Tools
Change Manager
DBArtisan
DB Optimizer
ER/Studio
Performance Center
Rapid SQL
Technical Articles
Tutorials
White Papers
Press Releases
Newsletters
Add Content (GetPublished)
Audio
Audio & Video
Video
Bugs & Suggestions (QualityCentral)
Discussion Forums
Examples (CodeCentral)
Tags
Technology Partners
Downloads
Free Trials
Registered User Downloads
Beta Programs
Add Content (GetPublished)
Articles
Blogs
Bugs & Suggestions (QualityCentral)
Chats
Discussion Forums
Examples (CodeCentral)
Member Services
About
Connect with Us