• Viernes 17 de Mayo de 2024, 01:05

Autor Tema:  Re: No logro hacer el bloqueo de registros.  (Leído 1170 veces)

becker24

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
    • http://members.tripod.cl/becker24
Re: No logro hacer el bloqueo de registros.
« en: Jueves 10 de Abril de 2003, 17:03 »
0
Hola amigos, les escribo porque no logro hacer el bloqueo a nivel de registro,  aqui incorporo el codigo para ver si me pueden decir en que estoy fallando :
Private Sub Text2_GotFocus()
If Text1.Text <> "" Then
    If Not IsNumeric(Text1.Text) Then
        MsgBox "El código debe ser numérico"
        Text1.Text = ""
        Text1.SetFocus
    End If
    rs.Index = "primarykey"
    rs.Seek "=", Trim(Text1.Text)
    If rs.NoMatch Then
        Text2.SetFocus
        rs.AddNew
    Else
        Text2.Text = rs!detalle
        Set rs = base.OpenRecordset("dctos", dbOpenDynaset, False, dbPessimistic)
        rs.Edit
    End If
 End If
End Sub

       
Private Suc cmd_grabar_click()
        Rs!codigo = text1.text
        Rs!detalle = text2.text
        rs.update
End Sub

Les agradezco su ayuda.
Saludos :beer:

becker24

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
    • http://members.tripod.cl/becker24
Re: No logro hacer el bloqueo de registros.
« Respuesta #1 en: Jueves 10 de Abril de 2003, 17:53 »
0
Complemento mi pregunta.  El error que me arroja, es que al momento que envio a grabar los datos que edite, me arroja un mensaje en pantalla, que dice que no puede grabar, porque crearia registro duplicados.  Eso no puede ser, ya que si se fijan en el codigo, el registro lo estoy editando, No estoyu creando uno nuevo, bueno de nuevo mil gracias y saludos.:beer:

J.M.Movilla

  • Miembro MUY activo
  • ***
  • Mensajes: 427
    • Ver Perfil
No logro hacer el bloqueo de registros.
« Respuesta #2 en: Jueves 10 de Abril de 2003, 18:08 »
0
Yo creo que es casi imposible ayudarte a conseguir que funcione tu código. Te aconsejo que borres todo y lo rehagas, porque estás mezclando órdenes que no tienen nada que ver con las variables a las que se las aplicas, tienes instrucciones que no pueden darte nada más que errores... Yo creo que así no sólo no consigues bloquear el registro, sino que no conseguirás ni siquiera abrir el fichero. ¿A tí no te da errores por todas partes?


Private Sub Text1_LostFocus()
If Text1.Text = "" Then
MsgBox "No puede dejar el código vacío"
Text1.SetFocus
exit sub
endif
If Not IsNumeric(Text1.Text) Then
MsgBox "El código debe ser numérico"
Text1.Text = ""
Text1.SetFocus
exit sub
End If
Text2.SetFocus
end Sub


Private Suc cmd_grabar_click()
Set rs = base.OpenRecordset("dctos", dbOpenDynaset, False, dbPessimistic)
rs.Requery

rs.FindFirst ("Codigo = '" & Text1.Text)
' (Yo no uso nunca el Seek, y por lo tanto no lo sé utilizar...)

if rs.Nomatch then
rs.AddNew
else
rs.Edit
endif
Rs!codigo = text1.text
Rs!detalle = text2.text
rs.update
rs.Close
End Sub

Supongo que si lo cambias a algo parecido a esto podrías conseguir que funcionara; pero lo estoy haciendo "de memoria" y con instrucciones que debo ajustar a tu forma de programar, no a mi forma...

Y recuerda que cuando se trata del mismo tema debes MODIFICAR TU MENSAJE, en vez de añadir un mensaje nuevo.


Saludos y mucha suerte