1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
procedure CopieRowToRow(Dataset:TAdoQuery);
var
aField : Variant;
i: Integer;
Num1, Num2:Integer;
begin
Num1:=3; //destinée au Select SQL
Num2:=15;
// Il manque la commande de positionnement sur la ligne "source"
// code que j'ai trouvé. ne fonctionne pas chez moi
// Create a variant Array
aField := VarArrayCreate([2,DataSet.Fieldcount-1], VarVariant);
// read values into the array
for i := 2 to (DataSet.Fieldcount-1) do
begin
aField[i] := DataSet.fields[i].Value ;
end;
// Il manque la commande de positionnement sur la ligne "destination"
// L'édition se fait pour tous les colonnes de la ligne, pas à chacune de colonnes
// car ce n'est pas performant...
DataSet.Edit;
// Put array values into new the record
for i := 2 to (DataSet.Fieldcount-1) do
begin
//DataSet.Edit;
if (DataSet.fields[i].CanModify) then
DataSet.fields[i].Value := aField[i] ;
//DataSet.Post;
end;
DataSet.Post;
End;
end; |
Partager