SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: cristy en Jueves 19 de Diciembre de 2002, 16:25

Título: Re: Alguien puede mirar este codigo
Publicado por: cristy en Jueves 19 de Diciembre de 2002, 16:25
Hola tengo es codigo para eliminar unos registro de un control de datos adodc pero cae en un loop infinito


 elimino = 0
        bdgeo.UserName = st_login
        bdgeo.Password = st_passw
        bdgeo.ConnectionString = Conectar
        bdgeo.RecordSource = "SELECT * FROM sondajes.t_identi WHERE yacimiento=1 AND codlabor='" & clabor_del & "'"
        bdgeo.Refresh
        If bdgeo.Recordset.RecordCount > 0 Then
            Do Until bdgeo.Recordset.EOF
                bdgeo.Recordset.MoveFirst
                bdgeo.Recordset.Delete
                elimino = 1
              Loop




Muchas Gracias
Título: Re: Alguien puede mirar este codigo
Publicado por: Jaume en Viernes 20 de Diciembre de 2002, 08:54
Creo que la línea del MoveFirst sobra
Título: Re: Alguien puede mirar este codigo
Publicado por: ROBER.29 en Viernes 20 de Diciembre de 2002, 09:28
Estoy con Jaume en que te sobra el MoveFirst pero además tb te falta en movenext, porque si no el recordset no avanza y nunca sale del bucle. Tendría que ser asi:

elimino = 0
bdgeo.UserName = st_login
bdgeo.Password = st_passw
bdgeo.ConnectionString = Conectar
bdgeo.RecordSource = "SELECT * FROM sondajes.t_identi WHERE yacimiento=1 AND codlabor='" & clabor_del & "'"
bdgeo.Refresh
If bdgeo.Recordset.RecordCount > 0 Then
Do Until bdgeo.Recordset.EOF
bdgeo.Recordset.Delete
elimino = 1
bdgeo.Recordset.MoveNext
Loop
End if
Título: Re: Alguien puede mirar este codigo
Publicado por: Jaume en Viernes 20 de Diciembre de 2002, 09:39
No lo afirmo, pero creo que el MoveNext no es necesario, puesto que al eliminar el registro ya pasa al siguiente. Creo!!
Título: Re: Alguien puede mirar este codigo
Publicado por: ROBER.29 en Viernes 20 de Diciembre de 2002, 09:51
Jaume creo q tienes razon pero de todas formas q pruebe de las dos formas porque yo tampoco estoy seguro de que haga falta el movenext.

De lo que si estoy seguro es que el movefirst sobra.
Título: Re: Alguien puede mirar este codigo
Publicado por: cristy en Viernes 20 de Diciembre de 2002, 12:20
Gracias chicos pero prove las dos y se cae igual....:(
Título: Re: Alguien puede mirar este codigo
Publicado por: Jaume en Viernes 20 de Diciembre de 2002, 12:59
Para que quieres hacer un bucle?

Porqué no lanzas un DELETE en lugar de un SELECT?
Título: Re: Alguien puede mirar este codigo
Publicado por: cristy en Viernes 20 de Diciembre de 2002, 18:26
Porque es una mantencion de un sistema y esta todo hecho  con adodc (control) yo personal mente trabajo con ado , pero no se  si se puede hacer lo que me dices con este control
Título: Alguien puede mirar este codigo
Publicado por: javierbalk en Sábado 21 de Diciembre de 2002, 04:33
Hola:

Probá cambiadno por

Do Until bdgeo.Recordset.RecordCount = 0

Saludos,
Javier