FoxPro/Visual FoxPro - Validar datos en un form

 
Vista:

Validar datos en un form

Publicado por Fernando (1 intervención) el 24/01/2007 18:53:48
Hola, en un form, como hago para validar por ejemplo, que los datos no se repitan, es decir si tengo la tabla de clientes, como valido de que no se ingrese un cliente con codigo repetido, haciendo como llave primaria su ID.
Gracias
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

RE:Validar datos en un form

Publicado por Plinio (7841 intervenciones) el 24/01/2007 21:25:46
Haciendo la busqueda automaticamente se ingrese.
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

RE:Validar datos en un form

Publicado por Ernesto Hernandez (4623 intervenciones) el 24/01/2007 21:28:41
pUEDES usar algo como esto en el LostFocus del cuadro de texto donde ingresas el codigo del cliente

IF SEEK(CurCli.CLI_NUM,"CLI",1)
MESSAGEBOX("Cliente ya se encuentra registrado en la base de datos... ",48+4096,"Resuelve-Facil S.A. de C.V.")
THISFORM.displaydata
ENDIF


Suerte
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

Gracias por la ayuda, pero me falta

Publicado por Fernando (7 intervenciones) el 25/01/2007 15:48:40
Hola, gracias por su ayuda

pero tengo dos problemas

1 me da este error cuando ingreso un codigo repetido

UNIQUENESS OF INDEX COD_CLI IS VIOLATED, lo cual segun imagino es que como se quiere ingresar un codigo que ya existe.

y luego aparece el mensaje del messagebox, pero cuando ingre un codigo que no existe solo aparece el mensaje del messagebox, es decir como que si existe, pero realmente no hay nada repetido.

Por otro lado, le explico mejor, cuando hago clic en el boton de NUEVO, hago un APPEND BLANK, el propiedad BUFFER MODE esta en OPTIMISTA, para grabar estoy usando un TABLEUPDATE().

No se que estará mal?

agradeceria su ayuda nuevamente, gracias
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

RE:Gracias por la ayuda, pero me falta

Publicado por Fernando (7 intervenciones) el 25/01/2007 16:28:06
Estoy probando y me doy cuenta que tal vez esta mal aramdo todo el form, pues probe haciendo uno sencillo, sin botones de desplazamiento y todo eso y funciona, pero cuando ya relaciono el como a traves de CONTROLSOURCE con la tabla entonces se activa el error de UNICIDAD VIOLENTADA.

Agradeceria si pueden orientarme con los parametros que debe tener un form en general, la verdad que soy nuevo con visualfox, he programado con fox para dos y para win, pero aqui es un poco diferente todo.

gracias otra vez
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

RE:Otra Opcion...

Publicado por neo (1604 intervenciones) el 26/01/2007 03:04:45
Saludos..

Aqui te dejo otra opcion...

Select 1

Locate for mi_tabla.cliente_id =Thisform.txtbox_id.value
If Found() then
remplace cliente_id with Thisform.txtbox_id.value
else
Wait Window "Ingresando nuevos Datos" timeout .8
remplace cliente_id with Thisform.txtbox_id.value
Thisform.refresh

endif


Suerte►
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

Y si uso INSERT INTO

Publicado por Fernando (7 intervenciones) el 26/01/2007 17:23:16
Hola otra vez

estuve investigando por otros foros y por ahi alguien sugeria utilizar INSERT INTO en lugar de APPEND BLANK.

Será mejor esa opción? Que ventajas tiene? Que consideraciones se debe tener para usar, que propiedades de y que valores deben tener?

Gracias por su tiempo, por cierto NEO voy a probar su sugerencia a ver si funciona

atte

Fernando
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

RE:Y si uso INSERT INTO

Publicado por Ernesto Hernandez (4623 intervenciones) el 26/01/2007 20:25:44
El INSERT INTO es totalmente diferente al APPEND BLANK el INSERT te insertara valores especificos y el APPEND BLANK siempre insertara el registro en blanco uy despues lo puedes rellenar como tu quieras no asi el INSERT INTO

Suerte
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

INSERT INTO

Publicado por Luid Lujan (16 intervenciones) el 27/01/2007 22:13:09
Lo que debes hacer es empezar a utilizar los comandos SQL que acepta VFP que son muy buenos: INSERT, UPDATE, DELETE, ALTER TABLE, SELECT y mas. Esto mejorará enormemente tu sistema en el tema de rapidez, consistencia y profesionalismo. Por otro lado sis estas utilizando BD de VFP utiliza tambien los Procedimientos Almacenados, Triggers de esta BD. Yo te recomiendo dejar poco a poco el SEEK, REPLACE, APPEND BLANK y comandos nativos de VF que son buenos pero hay nuevas herramientas que haces mas trabajos en menos tiempo de programacion.

Saludos y suerte
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