|
consulta sql
Hola a todos, os voy a exponer mi problema, porque llevo dias intentandolo y no consigo resolverlo.
Esiste una primera tabla llamada unidades en la que unos determinados productos no tienen precio por un error mio. Cada uno de esos productos tienen una identificacion "NumCod_Uni".
En una segunda tabla unidades2 tengo alguno de los precios de esas unidades asignados a ese mismo "nuncod_uni". Se que lo que deberia hacer es un bucle recorriendo todas y cada una de las ocurrencias de unidades 1 con precio 0, y para cada ocurrencia, buscar en unidades2 su precio y asignarselo. Pero he hecho algo como lo que sigue y no lo consigo:
datamodule1.ADONoprecio.Open;
datamodule1.ADONoprecio.First;
While not datamodule1.ADONoprecio.Eof do
begin
datamodule1.ADoprecio.Parameters.ParamByName('codigo').Value:=datamodule1.ADONoprecioNumCod_Uni.Valu e;
datamodule1.ADoprecio.open;
datamodule1.ADONoprecio.Edit;
datamodule1.ADONoprecioPvpUni_Uni.Value:=datamodule1.ADoprecioPvpUni_Uni2.Value;
datamodule1.ADONoprecio.UpdateBatch();
Datamodule1.ADONoprecio.Next;
end;
Con la SQl adonoprecio saco las unidades que no tienen precio, mientras que la sql adoprecio casa los precios para un codigo dado.
La sql de adonoprecio es:
select * from unidades where pvpuni_uni=0
mientras que la sql de adoprecio es:
Select * from unidades2
where NumCod_Uni2= :codigo and PvpUni_Uni2 <> 0
A ver si alguien me puede hechar un cable porque la verdad es que me estoy volviendo loco porque no hay forma, os aviso ya que soy novato y por eso igual he hecho muchas cosas que no tienen ni pies ni cabeza.
Un saludo y muchisimas gracias a todos.
|