Validar dos campos de una misma tabla

Hola expertos, mira tengo una tabla con varios campos,
pero dos de ellos son las llaves, el campo grupo sería llave
regular ya que este se repite, y el campo código también sería llave regular ya que se puede repetir el código en la tabla, pero no del mismo grupo, al crear un registro tengo que asignarle a que grupo pertenece A, B o cualquier otro, supongamos que A, y luego selecciono el código, sería 10, por ejemplo. Pero al hacer otro registro vuelvo a seleccionar el grupo A y tal vez la persona se equivoque y vuelve a digitar el código 10, el código tendrá que buscar en la tabla y verificar que en el grupo A no exista el código 10, en este caso si existe, entonces, tendrá que decir que el grupo A ya tiene el código 10. Pero si creo el grupo B y le asigno el código 10 a ese grupo. El programa no tendría que decir nada, ya que el grupo B no tendría el código 10

1 Respuesta

Respuesta
1

Espero poder ayudarte. Podes proceder así. Imaginate que tenes 2 textos donde cargas el grupo(text1) y otro donde cargas el código(text2)

Donde guardas el registro (por ejemplo)... podes colocar al principio un código como este:

LOCAL lnGrupo, lnCodigo

lnGrupo = VAL(THISFORM.Text1.Value)

lnCodigo = VAL(THISFORM.Text2.Value)

SELECT tabla

LOCATE FOR tabla.grupo = lnGrupo AND tabla.código = lnCodigo

IF FOUND()

MESSAGEBOX("El registro ya esta grabado. Verifique, 48)

RETURN

ELSE

TABLEUPDATE(.T.)

ENDIF

Ves! Proba y me avisas! :)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas