Icon View Incident Report

Serious Serious
Reported By: Russell Sun
Reported On: 6/19/2007
For: Version 1.04 Build 2
# 2387 Sorting a TEDBTable by an Index on a Currency or Boolean Column Can Cause Improper Grid Display

Using a Boolean index causes a record buffer error.

procedure TForm2.Button1Click(Sender: TObject);
var i: Integer; 
begin
  EDBTable1.Open;
  while not EDBTable1.Eof do begin
     EDBTable1.Delete;
  end;
  //EDBTable1.Refresh;
  EDBTable1.Insert;
  EDBTable1.FieldByName('PKey').AsString  := '1';
  EDBTable1.FieldByName('Lock').AsBoolean := False;
  EDBTable1.Post;

  EDBTable1.Insert;
  EDBTable1.FieldByName('PKey').AsString := '2';
  EDBTable1.FieldByName('Lock').AsBoolean := True;
  EDBTable1.Post;

  EDBTable1.Insert;
  EDBTable1.FieldByName('PKey').AsString := '3';
  EDBTable1.FieldByName('Lock').AsBoolean := False;
  EDBTable1.Post;

  EDBTable1.IndexFieldNames := 'Lock' ; // To use boolean index will  occur record buffer error
  EDBTable1.Prior;
  EDBTable1.Prior;
  EDBTable1.Prior;
  EDBTable1.Prior; // must BOF

  for i := 1 to 10 do begin
    EDBTable1.Next;
    EDBTable1.Prior;
    EDBTable1.Prior; // must BOF  but error from here
  end;
end;



Resolution Resolution
Fixed Problem on 6/20/2007 in version 1.04 build 3


Products Affected Products Affected
ElevateDB Additional Software and Utilities
ElevateDB VCL Client-Server
ElevateDB VCL Client-Server with Source
ElevateDB VCL Standard
ElevateDB VCL Standard with Source
ElevateDB VCL Trial

Image