SoloCodigo
		Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: cristy en Viernes 20 de Diciembre de 2002, 13:15
		
			
			- 
				Hola tengo es codigo para eliminar unos registro de un control de datos adodc pero cae en un loop infinito, lo rutie y no avanza aun que le cambien el movefirst por movenext no se mueve gracias
 
 
 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
- 
				El siguiente código debería funcionar puesto que lo he probado
 
 (Fíjate en el orden de las instrucciones)
 
 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
 bdgeo.Recordset.MoveNext
 elimino = 1
 Loop
 
 
 Saludos
- 
				esta igual el codigo, es muy raro por que no sale de loop es como que no borrara ni avanzara  ¿? mira lo cortare y pegare tal cual como esta
 
 
 
 'elimina sondaje
 clabor_del = st_codlabor.Caption
 'On Error GO TO   ' Inicializa el controlador de error.
 opcion = MsgBox("Confirma eliminar la Labor " & clabor_del & " y todos sus datos", vbOKCancel, "Sistema de Muestreo Geologico")
 If opcion = 1 Then
 Call deshabilitar_botones
 Datatabla.ClearFields
 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
 'bdgeo.Recordset.MoveFirst
 Do Until bdgeo.Recordset.EOF
 bdgeo.Recordset.Delete
 MsgBox bdgeo.Recordset.Fields(0)
 bdgeo.Recordset.MoveNext
 MsgBox bdgeo.Recordset.Fields(0)
 elimino = 1
 Loop
 bdgeo.Refresh
 bdgeo.Refresh
 End If
 If elimino = 1 Then
 st_codlabor.Caption = ""
 a = MsgBox("Muestra eliminada Satisfactoriamente", vbOKOnly, "ATENCION")
 Else
 a = MsgBox("No se encontraron datos que eliminar", vbOKOnly, "ATENCION")
 End If
 co_op.Enabled = False
 End If
 Exit Sub
 
 If Err.Number <> 0 Then
 Msj = "Error # " & Str(Err.Number) & " fue generado por " _
 & Err.Source & Chr(13) & Err.Description
 MsgBox Msj, , "Error", Err.HelpFile, Err.HelpContext
 End If
 
 
 End Sub
- 
				Creo que no vamos a conseguir nada de esta manera. Lo mejor sería que hicieras un ZIP con  todo el programa, para que podamos ver todo el código y definición de objetos.
 
 Yo he probado el Do Until y funciona, por lo que creo que el problema debe ir por otro lado.
 
 Cuélgalo en un mensaje o mándamelo.
 
 Salu2
- 
				Si tenias toda la razon el problema era por otro lado intente insertar por el SQl Plus y no me dejo por un problema en un trigger  gracias