Cita:
Empezado por enecumene
efectivamente Basti me funciono perfecto, pero ahora tengo otro problema, que solo toma como referencia la primera fila de la tabla temporal que son los detalles que presenta el dbgrid y deberia de hacerlo con todos no? puse dos articulos y solamente me actualiza la primera fila..
Saludos.
|
No, la consulta sólo te actualizará el registro que tienes activo en ZTemp.
Tienes que recorrer la tabla ZTemp.
Código Delphi
[-]
ZSumaInventario.Close;
ZSumaInventario.SQL.Clear;
ZSumaInventario.SQL.Add('update articulos set cantidad = :inv where ref = :cod');
ZTemp.First;
while not ZTemp.Eof do
begin
ZSumaInventario.ParamByName('inv').AsInteger := ZInventario.FieldByName('Cantidad').AsInteger + ZTemp.FieldByName('Cantidad').AsInteger;
ZSumaInventario.ParamByName('cod').AsString := ZTemp.FieldByName('¿Código?').AsString;
ZSumaInventario.ExecSQL;
ZTemp.Next;
end;