mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-06 08:12:25 +02:00
fcl-db: base: Check if Required is copied from Fields to FieldDefs (cosmetic)
git-svn-id: trunk@34745 -
This commit is contained in:
parent
2febc31303
commit
0c75c760bf
@ -902,30 +902,30 @@ begin
|
|||||||
else
|
else
|
||||||
Insert;
|
Insert;
|
||||||
|
|
||||||
for i := 0 to ValuesSize-1 do with values[i] do
|
for i := 0 to ValuesSize-1 do
|
||||||
fields[i].AssignValue(values[i]);
|
Fields[i].AssignValue(Values[i]);
|
||||||
Post;
|
Post;
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TDataSet.InitFieldDefsFromfields;
|
procedure TDataSet.InitFieldDefsFromFields;
|
||||||
var i : integer;
|
var i : integer;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
if FieldDefs.count = 0 then
|
if FieldDefs.Count = 0 then
|
||||||
begin
|
begin
|
||||||
FieldDefs.BeginUpdate;
|
FieldDefs.BeginUpdate;
|
||||||
try
|
try
|
||||||
for i := 0 to Fields.Count-1 do with fields[i] do
|
for i := 0 to Fields.Count-1 do with Fields[i] do
|
||||||
if not (FieldKind in [fkCalculated,fkLookup]) then // Do not add fielddefs for calculated/lookup fields.
|
if not (FieldKind in [fkCalculated,fkLookup]) then // Do not add fielddefs for calculated/lookup fields.
|
||||||
begin
|
begin
|
||||||
FFieldDef:=FieldDefs.FieldDefClass.Create(FieldDefs,FieldName,DataType,Size,Required,FieldDefs.Count+1);
|
FFieldDef:=FieldDefs.FieldDefClass.Create(FieldDefs,FieldName,DataType,Size,Required,FieldDefs.Count+1);
|
||||||
with FFieldDef do
|
with FFieldDef do
|
||||||
begin
|
begin
|
||||||
if Required then Attributes := attributes + [faRequired];
|
if Required then Attributes := Attributes + [faRequired];
|
||||||
if ReadOnly then Attributes := attributes + [faReadOnly];
|
if ReadOnly then Attributes := Attributes + [faReadOnly];
|
||||||
if DataType = ftBCD then precision := (fields[i] as TBCDField).Precision
|
if DataType = ftBCD then Precision := (Fields[i] as TBCDField).Precision
|
||||||
else if DataType = ftFMTBcd then precision := (fields[i] as TFMTBCDField).Precision;
|
else if DataType = ftFMTBcd then Precision := (Fields[i] as TFMTBCDField).Precision;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
finally
|
finally
|
||||||
|
@ -195,9 +195,11 @@ begin
|
|||||||
try
|
try
|
||||||
F := TIntegerField.Create(ds);
|
F := TIntegerField.Create(ds);
|
||||||
F.FieldName:='ID';
|
F.FieldName:='ID';
|
||||||
|
F.Required:=True;
|
||||||
F.DataSet:=ds;
|
F.DataSet:=ds;
|
||||||
F := TStringField.Create(ds);
|
F := TStringField.Create(ds);
|
||||||
F.FieldName:='NAME';
|
F.FieldName:='NAME';
|
||||||
|
F.Required:=False;
|
||||||
F.DataSet:=ds;
|
F.DataSet:=ds;
|
||||||
F.Size:=50;
|
F.Size:=50;
|
||||||
|
|
||||||
@ -221,6 +223,8 @@ begin
|
|||||||
|
|
||||||
TestDataset(ds);
|
TestDataset(ds);
|
||||||
|
|
||||||
|
CheckTrue(ds.FieldDefs[0].Required, 'Required');
|
||||||
|
CheckFalse(ds.FieldDefs[1].Required, 'not Required');
|
||||||
for i := 0 to ds.FieldDefs.Count-1 do
|
for i := 0 to ds.FieldDefs.Count-1 do
|
||||||
begin
|
begin
|
||||||
CheckNotEquals(ds.FieldDefs[i].Name,'NAME_CALC');
|
CheckNotEquals(ds.FieldDefs[i].Name,'NAME_CALC');
|
||||||
|
Loading…
Reference in New Issue
Block a user