调试发现 程序出现如下错误:
for I := 0 to lCloneDataSet.Fields.Count - 1 do
if (not SysUtils.SameText(lCloneDataSet.Fields[I].FieldName, 'FGUID'))
and (lQuery.FindField(lCloneDataSet.Fields[I].FieldName) <> nil) then
begin
lCloneDataSet.FieldByName(lCloneDataSet.Fields[I].FieldName).Value :=
lQuery.FieldByName(lCloneDataSet.Fields[I].FieldName).Value;
end;
for I := 0 to lCloneDataSet.Fields.Count - 1 do
if (not SysUtils.SameText(lCloneDataSet.Fields[I].FieldName, 'FGUID'))
and (lQuery.FindField(lCloneDataSet.Fields[I].FieldName) <> nil) then
begin
lCloneDataSet.FieldByName(lCloneDataSet.Fields[I].FieldName).Value :=
lQuery.FieldByName(lCloneDataSet.Fields[I].FieldName).Value;
end;
for I := 0 to lCloneDataSet.Fields.Count - 1 do
if (not SysUtils.SameText(lCloneDataSet.Fields[I].FieldName, 'FGUID'))
and (lQuery.FindField(lCloneDataSet.Fields[I].FieldName) <> nil) then
begin
lCloneDataSet.FieldByName(lCloneDataSet.Fields[I].FieldName).Value :=
lQuery.FieldByName(lCloneDataSet.Fields[I].FieldName).Value;
end;
呵呵,你的I又是fields一个参数,又是搞循环,应该搞两个变量
for I := 0 to lCloneDataSet.Fields.Count - 1 do
if (not SysUtils.SameText(lCloneDataSet.Fields[I].FieldName, 'FGUID'))
and (lQuery.FindField(lCloneDataSet.Fields[I].FieldName) <> nil) then
begin
lCloneDataSet.FieldByName(lCloneDataSet.Fields[I].FieldName).Value :=
lQuery.FieldByName(lCloneDataSet.Fields[I].FieldName).Value;
end;