No se graba el registro en tabla (clave compuesta)
Espero que me puedas ayudar ya que no logro encontrar el problema, claro que no soy experta...
Tengo la Tabla INSCRIPCIONES con PrimaryKey compuesta por los campos Torneo, Nro_Fecha, Reg_FCA. Y tengo un formulario donde ingreso los datos de las inscripciones. Los campos Torneo y Nro Fecha se cargan solos y están ocultos. Al ingresar en el formulario el Reg FCA, le puse que valide duplicado por los 3 campos y que emita un mensaje si así lo fuese. Hasta acá funciona todo OK. El problema lo tengo cuando cambio de Nro Fecha o de Torneo, si ingreso un Reg FCA no ingresado hasta el momento, el registro se graba en la tabla, pero si se repite a pesar que los otros 2 campos son distintos, no graba el registro, tampoco muestra el cartel de duplicado y si blanquea todos los campos como si los hubiese grabado (en caso de duplicado no blanquea). Necesito que el registro se grabe si al menos 1 de los 3 campos difiere. A continuación copio el código:
Private Sub Reg_FCA_BeforeUpdate(Cancel As Integer)
'Emitir mensaje si el campo es duplicado
Dim Db As Database
Dim Rst As Recordset
Set Db = CurrentDb()
Set Rst = Db.OpenRecordset("INSCRIPCIONES")
Rst.Index = "PrimaryKey"
Rst.Seek "=", [Torneo], [Nro_Fecha], [Reg_FCA] 'Campos del formulario
If Not Rst.NoMatch Then
MsgBox "Registro FCA ya Inscripto", vbiinformation
Cancel = True
End If
Private Sub Grabar_Inscripto_Click()
'Grabar el registro con el botón grabar
Dim miSQL As String
miSQL = "INSERT INTO INSCRIPCIONES(Reg_FCA, Perros, Raza, Categoría, Grado, Vto_Antirrábica, Torneo, Nro_Fecha, Fecha, Guía, Agrupación, País, Localidad, Ranking, Perra_en_celo) VALUES ('" & Me.Reg_FCA.Value & "', '" & Me.Perros.Value & "', '" & Me.Raza.Value & "','" & Me.Categoria.Value & "','" & Me.Grado.Value & "','#" & Nz(Me.Vto_Antirrabica, "") & "#', '" & Me.Torneo.Value & "', '" & Me.Nro_Fecha.Value & "','#" & Me.Fecha.Value & "#','" & Me.Lista_Guia.Value & "','" & Me.Agrupación.Value & "','" & Me.País.Value & "','" & Me.Localidad.Value & "','" & Me.Ranking.Value & "','" & Me.Perra_en_celo.Value & "')"
DoCmd.SetWarnings False
DoCmd.RunSQL miSQL
DoCmd.SetWarnings True
'Para blanquear los campos luego de grabarlos
Reg_FCA = ClearConntent
Perros = ClearConntent
Raza = Null
Categoría = ClearConntent
Grado = ClearConntent
Vto_Antirrabica = Null
Perra_en_celo = ClearConntent
Lista_Guia = ClearConntent
Agrupación = ClearConntent
País = ClearConntent
Localidad = ClearConntent
End Sub