** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Tus Funciones Favoritas & Aportaciones & Artí­culos
  Mensajes nuevos Mensajes nuevos RSS - Access para la Web - Filtrar cuadros comb
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoAccess para la Web - Filtrar cuadros comb

 Responder Responder
Autor
Mensaje
rlvaldez Ver desplegable
Nuevo
Nuevo


Unido: 25/Enero/2011
Localización: Nicaragua
Estado: Sin conexión
Puntos: 49
Enlace directo a este mensaje Tema: Access para la Web - Filtrar cuadros comb
    Enviado: 27/Julio/2013 a las 02:34
Esta es la descripción detallada de un problema muy sencillo que me complicó varias horas. Mi complicación radica en que desarrollar soluciones en Access para la Web es un mundo diferente. Es un mundo sin código VBA y donde las macros Web solo tienen 26 acciones disponibles en total. Agradezco a Bengoechea que fue el que me dio todos los elementos para poder armar esto que para mi era un rompecabezas. Las lecciones aprendidas que se desprendieron de este sencillo ejercicio me permiten ahora resolver problemas mucho más complejos ya que esto me dio la pauta para comprender una parte, pequeña pero muy importante, de la "filosofía" del Access para la Web.¡Gracias Chea!

ESCENARIO

Se tienen dos cuadros combinados, uno de provincias y otro con las comunidades de esas provincias. ¿Cómo hacer que el cuadro combinado de las comunidades muestre solamente aquellas comunidades que le pertenezcan a la provincia seleccionada en el primer cuadro combinado?

DESCRIPCION DE LOS CONTROLES

Formulario web "frmGeografia" cuyo orígen de control es una tabla llamada "Geografía" con dos campos: [Provincia] y [Comunidad]. Este formulario tiene dos cuadros combinados

a)Primer cuadro combinado:
Nombre: cboProvincia
Orígen del control: [Provincia]
Orígen de datos: [IdProvincia] y [NombreProvincia] (de una tabla llamada "Provincias")

b)Segundo cuadro combinado:
Nombre: cboComunidad
Orígen del control: [Comunidad]
Orígen de datos: El orígen de datos del CboComunidad es una consulta donde relaciono [IdComunidad],[NombreComunidad] y [IdProvincia]. (De hecho la Tabla "Comunidades" ya la tengo relacionada con la tabla "Provincias" por medio del campo IdProvincia de tipo "Búsqueda y relación")

SOLUCION

1) En el evento "Después de actualizar" del combo cboProvincias crear una macro con las siguientes acciones:

DefinirVariableTemporal
Nombre: FiltroProvincia
Expresión: [Provincia]

NuevaConsulta
Nombre del Control: cboComunidades

2) En en el orígen de datos del combo CboComunidad, en el criterio del campo IdProvincia escribir: [Tempvars]![FiltroProvincia] y en el "OR" del mismo campo (está justo debajo de "Criterio") escribir TempVars!FiltroProvincia es Nulo.

3) En el evento "Al activar registro" del formulario frmGeografia crear una macro con las siguientes acciones:

DefinirVariableTemporal
Nombre: FiltroProvincia
Expresión: [Provincia]

NuevaConsulta
Nombre del Control: cboComunidades

Esto es necesario para que al momento de desplazarnos por los registros, se muestren los datos del cboComunidades. Si no hacemos esto, el segundo combo, el filtrado, o sea el cboComunidades aparecerá en blanco a la hora de movernos por los registros del formulario. Porque es así, no lo se ya que en el Access "normal" (no para la web) esto es necesario solo con los combos de búsqueda. A mi me dio resultado hacerlo de esta manera. Me funciona perfectamente.

LECCIONES APRENDIDAS

1-En el Access para la Web, no es posible hacer referencia directa a los objetos. Se deben definir variables temporales y asociarlas a los controles a los cuales queremos hacer referencia.

2-En el Access para la Web, como no podemos usar código VBA y las macros son muy restringidas, no existe el "Refresh", Requery" etc. Su equivalente es la acción "NuevaConsulta" en una macro.

Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable