Icon View Incident Report

Serious Serious
Reported By: Cronodata Indústria
Reported On: 3/29/2001
For: Version 2.08 Build 1
# 746 Using a Constant Value for a Float that Exceeds High(Integer) in Filter Expressions Causes Error

We use in our application the TDBISanTable component, and when we tried to use the filter property with a TFloatField in values above 2147483648, it happens a mistake indicating that that value is not a valid integer value.

unit UTestFloat;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, 
Dialogs,
  Db, DBISAMTb, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    DBISAMTable: TDBISAMTable;
    DBISAMTableCode: TFloatField;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

uses UCode;

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
     DBISAMTable.Filter:= 'Code=3873000128';
end;

procedure TForm1.FormShow(Sender: TObject);
begin
  //Coloca nome no database do dbisan
  DBISAMTable.DatabaseName:= ExtractFilePath(Application.ExeName);
  DBISAMTable.Active:= True;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  code.ShowModal;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  close;
end;

end.



Resolution Resolution
Fixed Problem on 5/1/2001 in version 2.09 build 1
Image