Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Problema con cajas vacias / vaciar memoria VB 6

Estas en el tema de Problema con cajas vacias / vaciar memoria VB 6 en el foro de Visual Basic clásico en Foros del Web. Hola, de nuevo yo... Estoy haciendo un sistema en el cual tengo que validar si no hay nada escrito en las cajas de texto o ...
  #1 (permalink)  
Antiguo 29/10/2008, 11:59
Avatar de velma  
Fecha de Ingreso: marzo-2006
Mensajes: 94
Antigüedad: 18 años, 1 mes
Puntos: 0
Información Problema con cajas vacias / vaciar memoria VB 6

Hola, de nuevo yo...
Estoy haciendo un sistema en el cual tengo que validar si no hay nada escrito en las cajas de texto o no cumpla con la cantidad de caracteres en cada campo no me deje guardar, lo realizo con el siguiente codigo en el boton guardar:

If Text5.Text = "" Or Len(Text5.Text) < 10 Then
AgregarMsg ("- EL NUMERO TELEFONICO ES OBLIGATORIO Y DEBE CONTENER 10 DIGITOS")
End If
If Text7.Text = "" Or Len(Text7.Text) < 8 Then
AgregarMsg ("- LA ORDEN DE SERVICIO ES OBLIGATORIA Y DEBE CONTENER 8 DIGITOS")
End If
If (MostrarMsg() = 0) Then
Adodc1.Recordset.Update
HabilitarBotones
CMD_GUARDA.Enabled = False
CMD_CANCELA.Enabled = False
InhabilitarCajas
DTPicker1.Visible = False
DTPicker2.Visible = False
End If


Y FUNCIONA!! Pero solo la primera vez que deseo darlo de alta, si al mismo registro ya guardado correctamente lo edito y dejo cajas de texto vacias, cuando le doy clic en guardar permite almacenar el registro con datos vacios. No se porque pase esto yo lo atribuyo a que los datos se quedan en el cache, el buffer o la memoria, y si esto es asi quisisera saber si alguien sabe alguna instruccion para vaciar donde se haya quedado. O si hay alguna otra razon me lo pudieran explicar ya que no lo he podido solucionar..
__________________
:cool: VELMA:si:
  #2 (permalink)  
Antiguo 30/10/2008, 03:44
Avatar de rulsanchez  
Fecha de Ingreso: octubre-2008
Ubicación: Manchester
Mensajes: 64
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Problema con cajas vacias / vaciar memoria VB 6

Hola Velma.
Y porque no haces la comprobacion en el evento Lostfocus de las cada caja, asi te aseguras de que te metan la informacion correcta.

Si no lo quieres hacer asi, no se si al grabar vuelves a poner las cajas a "" , si no es asi puedes hacerlo o bien igualandolas a "" o bien igualandolas a vbNullString que es lo mismo.

Ya me contarás, y si no te funciona, cuentame y lo vemos.
Un saludo Velma
  #3 (permalink)  
Antiguo 30/10/2008, 13:59
Avatar de velma  
Fecha de Ingreso: marzo-2006
Mensajes: 94
Antigüedad: 18 años, 1 mes
Puntos: 0
Respuesta: Problema con cajas vacias / vaciar memoria VB 6

Gracias por tu respuesta,

Ya lo intente, lo inente tambien con el evento VALIDATE,

Private sub Text1_Validate(Cancel as Boolean)
if len(text1.text)=0 then
cancel =true
msgbox "falta no. de serie"
end if
end sub

pero actua de la misma foma, de lo que me di cuenta es que la base de datos es que cuando deja guardar campos vacios pero estos no se quedan como NULOS, solo vacios, no se si sea por ahi el problema y como evitarlo-
__________________
:cool: VELMA:si:
  #4 (permalink)  
Antiguo 31/10/2008, 02:20
Avatar de rulsanchez  
Fecha de Ingreso: octubre-2008
Ubicación: Manchester
Mensajes: 64
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Problema con cajas vacias / vaciar memoria VB 6

Hola Velma, este código es el que funciona, de este modo te aseguras que metan lo que quieran , te pongo un ejemplo en el que la condicion es que tiene que ser un numero, pero puedes poner la condicion que quieras evidentenemente:


Private Sub txtCodigoCli_LostFocus()

If Not IsNumeric(txtCodigoCli.Text) Then

txtCodigoCli.SetFocus
MsgBox "Por favor, inserte un código correcto", vbCritical + vbOKOnly, "¡Error!"
txtCodigoCli.Text = vbNullString

End If
End Sub

Así hasta que no ponga bien la caja de texto no le dejas irse.
Espero que te ayude, sino miramos otra cosa
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:32.