Access - Funcion DLookup( AYUDA!!!

   
Vista:

Funcion DLookup( AYUDA!!!

Publicado por CRISTHIAN PEREZ (3 intervenciones) el 05/06/2015 21:38:25
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub Nomb_Casilla_BeforeUpdate(Cancel As Integer)
 
If IsNull(DLookup("[No_Sección]+[Nomb_Casilla]", "[SECCIONES]", "[Nomb_Casilla]", "[No_Sección]+[Nomb_Casilla]=form!txtNo_Sección.value+form!txtNomb_Casilla.value")) = True Then
DoCmd.RunSQL "Insert into casilla (No_Sección, Nomb_Casilla)value""&Form!txtNo_sección.value&"",""&Form!txtNomb_Casilla.value&"")"
Form!txtId.Value = DLookup("[Id]", "Nomb_Casilla", "[No_Sección]+[Nomb_Casilla]=Form!txtNo_Sección.value+Form!txtNomb_Casilla.value")
Else
If MsgBox("ERROR Ya Esta Registrado", 16, "ERROR") = vbOK Then
txtNo_Sección.SetFocus
 
End If
 
End If
 
End Sub


quien me ayuda en donde esta mal mi código, es para que al momento de ingresar datos en el formularios en casilla y sección y si meten los mismos datos o guarden por error dos veces me mande el mensaje que ya existe.
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

Funcion DLookup( AYUDA!!!

Publicado por GOOO (46 intervenciones) el 05/06/2015 22:17:48
Hola Cristhian

Creo que tu planteamiento está un poco confuso.

Para saber si hay registros, yo en lo personal uso el evento AfterUpdate (Después de actualizar)
y me gusta más la función Dcount. Con ello obtengo que si hay registro con los criterios que ingrese me responda desde
0 = no hay ningúno
1,2,3,4, etc = si hay 1 o mas registros.

y en función de la respuesta puedo aplicar los eventos o códigos que necesito.

Lo que no tengo muy claro es que usas: No_Secccion + Nomb_Casilla
Eso para que sirve y que quieres indicar.

Ya comentas
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

Funcion DLookup( AYUDA!!!

Publicado por CRISTHIAN PEREZ (3 intervenciones) el 05/06/2015 22:42:47
Gracias por responder, y creo que no me explique bien a lo que necesito, tengo mi formulario con varios campos, pero quiero que 2 campos de ellos no se permitan duplicados osea que al momento de llenar los campos en el formulario si ponen los mismos datos al momento que le de en el botón guardar me tire un mensaje que ya existe esos datos. haber si ahora me explique bien, que ya ando medio loco que no me sale jajajaj. saludos.
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
Imágen de perfil de douglas

Funcion DLookup( AYUDA!!!

Publicado por douglas (280 intervenciones) el 05/06/2015 22:45:05
Ponlo directamente en la base de datos en modo diseño
que no permita duplicados es la solución fácil
la otra es mas sencilla con Dcount como te indica el maestro Gooo



Saludos...
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

Funcion DLookup( AYUDA!!!

Publicado por GOOO (46 intervenciones) el 05/06/2015 23:11:17
Douglas te dio una respuesta bastante razonable.

¡¡SALUDOS DOUGLAS, EXITOS !!

Pero si no lo quieres así te dejo una opción:

1
2
3
4
5
6
7
8
9
10
If DCount("No_Sección", "SECCIONES", "No_Sección"=Forms!TuFormulario!NtxtNo_Sección)>0  then
   MsgBox "No. de Sección ya esta registrado"
Else
   IF DCount("Nomb_Casilla", "SECCIONES", "Nomb_Casilla"=Forms!TuFormulario!NtxtNomb_Sección)>0  then
        MsgBox "No de Casilla ya está registrada"
   Else
         DoCmd.RunSQL  'Favor verifica tu Consulta de Insert con las comillas'
  End If
 
End If

Disculpas, no he podido verificar si está correcta
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
Imágen de perfil de douglas

Funcion DLookup( AYUDA!!!

Publicado por douglas (280 intervenciones) el 06/06/2015 00:19:27
Venga para no dejarlo con la duda

Te adjunto ejemplo de como usar Dlookup

podes poner los códigos creo que las pruebas están hasta el 5 después de ahí sale lo que ocupas


Buena 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

Funcion DLookup( AYUDA!!!

Publicado por CRISTHIAN PEREZ (3 intervenciones) el 06/06/2015 00:45:23
Buenas :) si las respuestas están excelentes, mas otra vez fue error mio, que no especifique que de los 2 valores la sección se puede repetir pero el nombre de casilla no se puede repetir en la misma sección.

un ejemplo

sección 123

nombre de casilla: azul

sección 123

nombre de casilla:roja

mas que no se pueda ingresar de nuevo el mismo nombre de casilla en la misma sección.
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
Imágen de perfil de douglas

Funcion DLookup( AYUDA!!!

Publicado por douglas (280 intervenciones) el 09/06/2015 01:27:23
SI no resolviste con los ejemplos anteriores me avisas
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