Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/03/2016, 13:43
shoulder
 
Fecha de Ingreso: marzo-2014
Mensajes: 9
Antigüedad: 10 años, 8 meses
Puntos: 0
Secuencia Update select update interrumpida

Hola estoy usando las herramientas ZEO con zquery, en un proceso con un zquery (ejemplo) zquery1 hago primero un update a continuacion con el mismo zquery1 un select y luego con el zquery un update en una segunda tabla. En algunos casos (pocos) me hace el update - select y pasa de largo el update (sera porque uso el mismo zquery?. Gracias

Ejemplo
Cita:
//Resumen del proceso!! Uso delphi7 autocommit

zquery6.Active;
zquery6.close;
zquery6.SQL.Clear;
zquery6.sql.add ('update tabla set codigo1 = 1');
where codigo = :codigo');
//Parametros
zquery6.Params.ParamByName('codigo').Value := strtoint(edit13.Text);
zquery6.Active;
try
zquery6.ExecSQL;
try
zquery6.SQL.Add('commit');
//graba

zquery6.Active;
zquery6.close;
zquery6.SQL.Clear;
zquery6.sql.add ('select fecha from tabla2 ');
zquery6.sql.add ('where documento = :documento order by');
zquery6.sql.add ('documento');
zquery6.Params.ParamByName('documento').Value :=
dbgrid1.fields[3].text;
zquery6.active := true;
If not zquery6.Eof then
begin
zquery6.Active;
zquery6.close;
zquery6.SQL.Clear;
zquery6.sql.add ('update tabla2 set codigo2 = 2 where');
zquery6.sql.add ('documento = :documento');
zquery6.Params.ParamByName('documento').Value :=
dbgrid1.fields[3].text;
zquery6.ExecSQL;
zquery6.SQL.Add('commit');

showmessage('Bien grabado');
end;
except
zquery6.SQL.Add('rollback');
showmessage('Error de Grabación');
end;
except
zquery6.SQL.Add('rollback');
showmessage(' Error de Grabación');
end;
end;

end