FoxPro/Visual FoxPro - ayuda

 
Vista:

ayuda

Publicado por carolina (18 intervenciones) el 01/11/2003 02:29:40
tengo un tabla de alumnos en el cual tengo como clave principal el numero de legajo eso va perfecto porque no se duplica pero tengo en la misma tabla el nro de documento que tampoco se tiene que repetir y no puedo lograr que me busque y lo encuentre y me diga que ya esta y no me lo grabe ya lo intente de todas formas con el seek locate ect.
si alguien me puede ayudar se lo agradesco desde ya
carolina
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
sin imagen de perfil
Val: 3
Ha disminuido su posición en 80 puestos en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

RE:ayuda

Publicado por xorro (124 intervenciones) el 01/11/2003 04:43:27
Te puse un mail, avisame si lo explique bien
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:ayuda

Publicado por carolina (18 intervenciones) el 01/11/2003 18:11:58
xorro67 no encontre tu mail con la respuesta te lo agradeceria si me la mandas de nuevo
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:ayuda

Publicado por Mauricio (105 intervenciones) el 01/11/2003 17:04:45
Carolina, en tu lugar lo que hago es un sentencia SQL, donde comparo el campo DNI del registro que estas ingresando, con los DNI existentes mediante la funcion LIKE eso genera una consulta en memoria donde podes chequear con un IF si encontro alguna coincidencia o no.- Es un métono muy rápido que te solucionaría ese problemita.-
Si te hace falta me pedis un ejemplo.
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:ayuda

Publicado por marcos (190 intervenciones) el 03/11/2003 00:45:40
hola!! otra forma seria indexando el campo de c.i. y ordenarlo por el mismo, y ejecutar un seek()
Por ejemplo
select alumnos
set order to cedula
seek(m_cedula) && donde m_cedula es un variable del campo cedula
if found()
wait window "ya existe" no wait
this.value = 0
endif

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:ayuda

Publicado por gabriel (427 intervenciones) el 03/11/2003 16:29:39
Amiga Carolina : Por lo que veo estas indexando por 2 campos, ahora bien cuando se utilizan mas de un campo hay que tener presente que deben de ser del mismo tipo y/o utilizar instrucciones que te permitan establer la igualdad, En mi caso utilizo el STR o el VAL dependiendo la necesidad. Por ejemplo si uno de los 2 campos fuese alfanunerico tengo que establecer la igualdad de esta forma
INDEX On NUM_LEGAGO + STR(NUM_DOC,6,0) To TEMDATA
Utilizando el SEEK no hay nigun problema, pero LOCATE requiere que establezca correctamente la variable que tiene que buscar y debe de tener la instruccion CONTINUE...
Espero haber contruido en algo a resolver tu problema si tienes alguna duda o comentario me lo haces saber a mi correo...
Saludos,
GABRIEL
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:ayuda

Publicado por eduard torres (9 intervenciones) el 04/11/2003 14:25:16
**intentalo así, en el boton de guardar.
***selecciona la tabla
select nombre_tabla
**llama el campo por la cual tu quiere buscar
set order to tag Numero_legado
**buscar es igual a lo que tienes en el text del campo
buscar = (thisform.txtnumero_legado.value)
seek buscar
if found()
messagebox(\"este numero ya existe\")
thisform.txtnumero_legado.setfocus
else
*****aqui grabas los datos
tableupdate(.t.)

endif

***Nota
****dime si te funciono
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