Visual Basic - no borra los datos de la base de datos

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 11
Ha aumentado su posición en 6 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

no borra los datos de la base de datos

Publicado por David (16 intervenciones) el 12/07/2017 20:22:32
Hola alguien me puede ayudar estoy haciendo una factura y quiero saber porque no borra los datos de la base de datos. el codigo que tengo enel boton eliminar es el siguiente:


ME SALE EL MENSAJE QUE SE BORRO PERO NO BORRA. COMO QUE AL .DELETE NO ESTA FUNCIONANDO.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Private Sub cmdBorrar_Click()
 
If lblCodigo.Caption = "" Then
    MsgBox "Elija un objeto de la lista", vbInformation, "AVISO"
    Exit Sub
Else
    With RsFactura
         .Requery
         .Find "id='" & Trim(lblCodigo.Caption) & "'"
           'Si no encontró el registro
           If .EOF Then
              MsgBox "No se encontró el registro", vbInformation, "No se encontro"
              Exit Sub
                 Else
                   If MsgBox("¿Desea eliminar el contacto: " & DataGrid1.Columns(2) & "?", vbInformation + vbYesNo) = vbYes Then
 
                     .Delete
                     .Requery
                     'Esto evita si quiero eliminar un registro y lo vuelvo eliminar no me permitira a hacerlo
                        lblCodigo.Caption = 0
                    End If
           End If
    End With
End If
FormatoGrillaTemporal
 
End Sub





EN EL DATAGRID TENGO ESTO

1
2
3
4
5
6
7
8
9
10
Private Sub DataGrid1_Click()
 If DataGrid1.ApproxCount < 1 Then
         MsgBox "No ha seleccionado ninguno objeto de la lista!!", vbExclamation, "AVISO"
 
 Else
 
      lblCodigo.Caption = DataGrid1.Columns(0).Text
 
 End If
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.259
Plata
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

no borra los datos de la base de datos

Publicado por Antoni Masana (558 intervenciones) el 13/07/2017 06:52:52
Después de poner el código que se pueda leer mejor.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Private Sub cmdBorrar_Click()
    If lblCodigo.Caption = "" Then
       MsgBox "Elija un objeto de la lista", vbInformation, "AVISO"
       Exit Sub
    Else
       With RsFactura
           .Requery
           .Find "id='" & Trim(lblCodigo.Caption) & "'"
           'Si no encontró el registro
           If .EOF Then
              MsgBox "No se encontró el registro", vbInformation, "No se encontro"
              Exit Sub
           Else
              If MsgBox("¿Desea eliminar el contacto: " & DataGrid1.Columns(2) & "?", vbInformation + vbYesNo) = vbYes Then
                 .Delete
                 .Requery
                 'Esto evita si quiero eliminar un registro y lo vuelvo eliminar no me permitira a hacerlo
                 lblCodigo.Caption = 0
              End If
           End If
       End With
    End If
    FormatoGrillaTemporal
End Sub
 
Private Sub DataGrid1_Click()
    If DataGrid1.ApproxCount < 1 Then
       MsgBox "No ha seleccionado ninguno objeto de la lista!!", vbExclamation, "AVISO"
    Else
       lblCodigo.Caption = DataGrid1.Columns(0).Text
    End If
End Sub

Preguntas a las cuales no puedo responder las cuales son la pista para la solución:

- ¿Que contiene lblCodigo.Caption ?
- ¿Llega a preguntar "Desea eliminar ..."?
- ¿Encontró realmente el registro el Find?
- ¿Como afecta el Trim en la búsqueda?

En la respuesta a estas preguntas puede estar la solución.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 11
Ha aumentado su posición en 6 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

no borra los datos de la base de datos

Publicado por David (16 intervenciones) el 13/07/2017 18:23:19
Cuando hago la busqueda con el ".find" lo hago con Id del access el autonumerico y lo mando al lblCodigo.Caption. por eso pregunto primero si no tiene nada es que no encotro. y si el lblCodigo.Caption tiene algun valor, (osea el registro que queremos eliminar) lo tendria que borrar.
si, si pregunta desea eliminar y pongo si y me salta el otro msgbox que fue eliminado correctamente y el lblCodigo.Caption se vuelve a 0. pero no se eliminar. salen los mensajes y todos pero no lo elimina. por eso dije como si fuera que al .Delete no lo esta tomando a la hora de hacerlo andar.
por eso no si es problema de codigo o del programa en si, osea de mi visual lo tengo en windows 10.
yo creo que el trim no afecta a la busqueda en todo caso lo provare sin el trim. pero la busqueda la hace porque al lblCodigo.Caption toma el valor del "Id" del access.

Gracias por su opinión y Saludo!!. ;D
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar