Cita:
Empezado por ecfisa
Hola.
Si interpreté bién tu consulta, intenta algo similar a esto:
Código Delphi [-]
begin
qyFactura.Close;
qyFactura.SQL.Text := 'SELECT CODPARTE, CANTIDAD FROM FACTURAITEM';
qyFactura.Open;
qyProducto.Close;
qyProducto.SQL.Clear;
qyProducto.SQL.Add('UPDATE PRODUCTOS');
qyProducto.SQL.Add('SET EXISTENCIA = EXISTENCIA - :VALOR');
qyProducto.SQL.Add('WHERE COD = :CODIGO');
qyProducto.Prepared := True;
try
while not qyFactura.Eof do
begin
qyProducto.Parameters.ParamByName('VALOR').Value :=
qyFactura.FieldByName('CANTIDAD').Value;
qyProducto.Parameters.ParamByName('CODIGO').Value :=
qyFactura.FieldByName('CODPARTE').Value;
qyProducto.ExecSQL;
qyFactura.Next;
end;
finally
qyProducto.Prepared := False;
end;
...
( Revisa que los nombres de tablas y campos sean los correctos )
Saludos
|
Gracias por la respuesta pero en facturaItem, falta espesificar el codigo de la factura en especifico de cada producto.
es decir, en el Select de la facturaItem, va a seleccionar todos los articulos de la tabla, hay que espesificar que solo va a seleccionar los de una factura en específico, se puede utilizar la variable "CodFactura" donde va a estar ahi el codigo de la factura.