Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-02-2007
nikotina nikotina is offline
Miembro
 
Registrado: oct 2006
Posts: 84
Poder: 19
nikotina Va por buen camino
problema de eliminacion

Hola amigos. tengo un procedimiento sobre un dbgrid el cual elimina las filas que el usuario selecciona. El problema es que solo elimina una fila y luego da un error "query4: record no found". el codigo es el siguiente:

Código Delphi [-]
procedure Tgen_oc_concurso.BitBtn5Click(Sender: TObject);
var i,j:integer;
begin
    if DBGrid1.SelectedRows.Count>0 then
    begin
      with DBGrid1.DataSource.DataSet do
      begin
          for i:=0 to DBGrid1.SelectedRows.Count-1 do
          begin
            GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i]));
            query4.Delete;
          end;
      end;
    end,
end;

Si

Última edición por dec fecha: 28-02-2007 a las 14:07:36.
Responder Con Cita
  #2  
Antiguo 28-02-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.119
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Prueba a invertir el bucle, o sea algo como:

Código Delphi [-]
procedure Tgen_oc_concurso.BitBtn5Click(Sender: TObject);
var i,j:integer;
begin
    if DBGrid1.SelectedRows.Count>0 then
    begin
      with DBGrid1.DataSource.DataSet do
      begin
          for i := DBGrid1.SelectedRows.Count-1 downto 0 do
          begin
            GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i]));
            query4.Delete;
          end;
      end;
    end,
end;

Ignoro ahora mismo si acaso no tendrías que cambiar...

Código Delphi [-]
for i := DBGrid1.SelectedRows.Count-1 downto 0 do

... por:

Código Delphi [-]
for i := DBGrid1.SelectedRows.Count-1 downto 1 do

... e incluso:

Código Delphi [-]
for i := DBGrid1.SelectedRows.Count downto 0 do

... Pero el caso es que creo que tiene todas las papeletas para que invirtiendo el bucle no tengas el problema que mencionas.
__________________
David Esperalta
www.decsoftutils.com

Última edición por dec fecha: 28-02-2007 a las 14:16:20.
Responder Con Cita
  #3  
Antiguo 28-02-2007
nikotina nikotina is offline
Miembro
 
Registrado: oct 2006
Posts: 84
Poder: 19
nikotina Va por buen camino
gracias dec

gracias dec. creo que con tu consejo va a funcionar.

Muchas gracias de nuevo y un abrazo.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
eliminacion de tablas relacionada alfil123 Conexión con bases de datos 8 04-09-2006 20:05:58
Eliminacion de datos luxus Conexión con bases de datos 2 28-08-2006 17:05:34
Problemas de Eliminación Palmiro Conexión con bases de datos 8 03-02-2006 15:45:14
procedimiento de eliminacion kejos MS SQL Server 3 30-01-2006 17:46:02
problemas de eliminacion alfil123 Conexión con bases de datos 14 22-12-2005 01:22:00


La franja horaria es GMT +2. Ahora son las 03:00:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi