Watch, Follow, &
Connect with Us
Public Report
Report From: Delphi-BCB/Midas/TClientDataSet    [ Add a report in this area ]  
Report #:  127703   Status: Closed
[Regression in XE7] TClientDataSet.Locate does not work with TBCDField
Project:  Delphi Build #:  21.0.17017.3725
Version:    21.0 Submitted By:   Vladimir Maksimov
Report Type:  Basic functionality failure Date Reported:  9/19/2014 1:45:18 AM
Severity:    Critical / Show Stopper Last Updated: 11/19/2014 5:21:18 PM
Platform:    All versions Internal Tracking #:   55438
Resolution: Fixed (Resolution Comments) Resolved in Build: : XE7 Update1
Duplicate of:  None
Voting and Rating
Overall Rating: No Ratings Yet
0.00 out of 5
Total Votes: 2
Description
After installation RAD Studio XE7, TClientDataSet.Locate does not work with TBCDField.

Example code working in RAD Studio XE3 at the same computer.
Steps to Reproduce:
-------------
procedure TForm2.Button1Click(Sender: TObject);
const
  FIELD_1 = 'FIELD_1';
var
  LCDS: TClientDataSet;
  I: Integer;
begin
  LCDS := TClientDataSet.Create(nil);
  try
    with LCDS.FieldDefs.AddFieldDef do
    begin
      Name := FIELD_1;
      DataType := ftBCD;
    end;
    LCDS.CreateDataSet;
    LCDS.Open;
    for I := 0 to 10 do
    begin
      LCDS.Append;
      LCDS[FIELD_1] := I;
      LCDS.Post;
    end;
    LCDS.First;
    if LCDS.Locate(FIELD_1,7,[]) then
      ShowMessage('Success')
    else
      ShowMessage('Fail');
  finally
    LCDS.Free;
  end;
end;

end.
-------------
Workarounds
None
Attachment
127703.zip
Comments

Muhamad Arif Md Basri at 11/6/2014 11:50:43 PM -
Do you have any workaround at the moment?

Tomohiro Takahashi at 11/16/2014 6:48:40 PM -
Does this issue still occur with XE7 Update1?

Vladimir Maksimov at 11/19/2014 5:24:15 AM -
No

Server Response from: ETNACODE01