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

No permitir duplicar numeros

Estas en el tema de No permitir duplicar numeros en el foro de Visual Basic clásico en Foros del Web. Hola a todos !! Quiero saber como puedo hacer para que un campo de texto (numerico) no permita que sea ingresado un numero que ya ...
  #1 (permalink)  
Antiguo 01/06/2006, 12:59
 
Fecha de Ingreso: septiembre-2005
Mensajes: 74
Antigüedad: 18 años, 7 meses
Puntos: 0
No permitir duplicar numeros

Hola a todos !!

Quiero saber como puedo hacer para que un campo de texto (numerico) no permita que sea ingresado un numero que ya haya sido ingresado anteriormente.

El caso es que este campo va a recibir un numero que va del 1 al 1974 el numero ingresado puede ser 1,7,9,7,99,67, es decir no lleva un orden pero tampoco debe repetirse.

Espero que me puedan ayudar estoy usando un Data para conectar mi base de datos y antes de grabar un nuevo registro valida los campos, que sean numericos, fecha etc, etc.
gracias.
  #2 (permalink)  
Antiguo 01/06/2006, 14:57
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
Colocale qu es campo único

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #3 (permalink)  
Antiguo 01/06/2006, 15:48
 
Fecha de Ingreso: septiembre-2005
Mensajes: 74
Antigüedad: 18 años, 7 meses
Puntos: 0
Gracias Geo Avila pero me podrias dar mas detalles de como hacer esto, soy aprendiz y todavia me falta mucho.
Gracias.
  #4 (permalink)  
Antiguo 01/06/2006, 20:11
 
Fecha de Ingreso: septiembre-2005
Mensajes: 76
Antigüedad: 18 años, 7 meses
Puntos: 0
en la base de datos edita el campo y ponele que sea unico, asi cuando estes por poner un numero que ya existe te avisa y no te deja grabar
__________________
Buby Systems
  #5 (permalink)  
Antiguo 02/06/2006, 12:35
Avatar de Fabuazul  
Fecha de Ingreso: febrero-2006
Ubicación: Entre cuatro paredes
Mensajes: 693
Antigüedad: 18 años, 3 meses
Puntos: 7
Tal vez lo que quiere el chico es en tiempo de ejecución antes de guardar verifique lo que introduce en sus controles más no en la base de datos.

manedf, puedes por favor ampliar tu info. Gracias.

Que base de datos estas utilizando?
__________________
Sí tienes alguna duda.... puedo ayudar a ampliarla.:-D
  #6 (permalink)  
Antiguo 06/06/2006, 13:47
 
Fecha de Ingreso: septiembre-2005
Mensajes: 74
Antigüedad: 18 años, 7 meses
Puntos: 0
gracias por su interes en ayudarme !!

Mi proyecto de visual basic se conecta por medio de un DATA a una base de datos hecha en acces, y hay un campo numerico que se llama Nicho_No y alli el usuario ingresa el numero de nicho elegido, pero no puede haber dos clientes con el mismo numero de nicho, por lo tanto lo que quier es que cuando el usuario trate de ingresar un numero de nicho ya ingresado anteriormente mande un mensaje indicando que ese nicho ya ha sido ocupado.

es lo mismo que capturar un numero de factura no puede haber dos con el mismo numero la diferencia es que las facturas van consecutivas y los numeros de nichos pueden ser salteados de lo contrario pondria ese campo como autonumerico.

Espero haberme entendido gracias nuevamente.
  #7 (permalink)  
Antiguo 06/06/2006, 14:25
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Y aquel campo que no puede repetirse es clave primaria? supongo.

En esos casos al hacer clic en el boton de ingresar primero yo llamo a una funcion que devuelve un true or false, en la funcion hago un select count(*) de el valor (del nicho en tu caso) ingresado y si el query devuelve cero entonces mi funcion devuelve true, caso contrario devuelve false y si es true grabo y si es false envio el messagebox correspondiente
  #8 (permalink)  
Antiguo 07/06/2006, 08:20
Avatar de Fabuazul  
Fecha de Ingreso: febrero-2006
Ubicación: Entre cuatro paredes
Mensajes: 693
Antigüedad: 18 años, 3 meses
Puntos: 7
Cita:
Option Explicit

Dim Qry As String
Dim General As Recordset
Dim BasedeDatos As DataBase

Qry="SELECT Nicho_No FROM Tabla WHERE Nicho_No=" & Text1.Text & ""
Set General=BasedeDatos.OpenRecordset(Qry)
if not General.EOF Then
msgbox "Ya existe"
else
'Llama a tu función guardar
endif

__________________
Sí tienes alguna duda.... puedo ayudar a ampliarla.:-D
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 13:27.