Cuadros combinados formulario access

Hola,
Tengo un problema en Access.
Resulta que he creado un formulario nombrado Carencias en el que se alimenta de la consulta Carencias. En esta consulta hay varios campos, los más significativos son Pedido, Posición, Motivo Carencia.
La consulta llama a la tabla HistoricoCarencias para coger estos campos y filtrarlos según fecha. He creado un campo extra en esta tabla llamado MotivoNuevo que está en blanco.
Tengo otra tabla que se llama MotivosCarencias donde hay los motivos predeterminados de la base de datos.
En el formulario el objetivo es visualizar los campos de Pedido, Posición y Motivo de Carencia procedentes de la consulta Carencias.
En el mismo formulario quiero crear un cuadro combinado donde salgan los motivos de la tabla MotivosCarencias, para que el usuario cuando trate las carencias seleccione el motivo que más se escoja y que automáticamente se actualize en la tabla HistoricoCarencias.
¿Cómo lo hago?
Lo he intentado hacer pero, o no me lo deja modificar, o cuando hay muchas carencias, al escoger el motivo de una, automáticamente se me seleccionan el resto de carencias con el mismo motivo.
Muchas Gracias,
Un Saludo

1 respuesta

Respuesta
1
Aunque tu consulta está muy clara hay algunas cosillas que me hacen dudar de lo que realmente quieres. No acabo de entender para qué quieres el campo MotivoNuevo porque no comentas que se vea en el formulario. Como imagino que no lo has nombrado "porque sí" lo que voy a suponer es esto:
- Abres el formulario (que te da los datos filtrados por fechas por la consulta) y te sale el primer registro. Ahí puedes ver los datos de Pedido, Posición, Motivo de Carencia y el campo MotivoNuevo en blanco
- Lo que quieres es coger un valor de la tabla carencias y asignarlo a MotivoNuevo.
¿OK?
Lo que tienes que hacer es lo siguiente:
- En la consulta añades el campo MotivoNuevo, si no lo tenías incluido
- Abre la tabla HistóricoMovimientos en vista diseño
- En el campo MotivoNuevo, en tipo de datos, seleccionas "Asistente para búsquedas".
- En el asistente que te saldrá le dices que quieres coger los datos de la tabla carencias, y que te muestre la descripción de la carencia. Llegas hasta el final del asistente configurando las opciones como creas conveniente.
- Guardas la tabla
- Te vas al formulario y, si ya lo tienes creado, eliminas el campo MotivoNuevo
- Le das al botón "Agregar campos existentes" y vuelves a añadir MotivoNuevo. Verás que ahora te lo crea como un combo.
Si ahora pones el formulario en vista "Formulario" verás que el campo NuevoMotivo te permite seleccionar el motivo de la carencia y, una vez seleccionado, te lo debería guardar en la tabla HistoricoMovimientos
El único problema que te puedes encontrar es que veas que, si la tabla carencias tiene una clave principal, el valor que te guarde sea ese campo principal, y no la descripción. Si así te va bien, perfecto. Si lo que quieres guardar es la descripción te vas a las propiedades del combo MotivoNuevo y en la pesaña "Datos" le dices que la columna dependiente es la 2.
Ya me dirás qué tal te ha ido.
Hola!
Primero de todo muchas gracias por tu respuesta.
El tema es que aún sigue sin funcionar. He hecho lo que tu me has dicho, pero seguía bloqueado. Incluso en la consulta desde la cual alimento al formulario, cuando abro la consulta en vista hoja de datos, si accedo a cambiar el campo motivocarencia me sale como combinado, y me salen los diferentes motivos a escoger, el campo proviene de la tabla historicocarencias con los valores que hay en la tabla motivocarencia, todo correcto, pero el problema es que cuando quiero seleccionar uno, no me deja. Me salen todos pero no puedo seleccionar ninguno.
¿A qué puede ser debido?
Muchas Gracias,
P.D: El campo motivo nuevo es el campo en el que salen los datos estos a escoger, el del cuadro combinado. Es solamente para diferenciarlo de otro campo nombrado Motivo que los datos ya los coge de un fichero.txt que proviene de sistema.
Un Saludo!
Lamento comentarte que si así no te funciona (y a mí sí me funciona porque hice una miniBD para comprobarlo) es porque debe haber alguna cosa por ahí que bloquea la asignación de valor al campo, pero así me es imposible decir qué es lo que es.
Si quieres pásame una copia de tu BD (comprimida en zip) y le echo un vistazo, a ver si puedo pillar el error. Si tienes que borrar registros confidenciales los borras, pero déjame algunos para poder hacer pruebas.
Mi correo es [email protected]
También te pido un poco de paciencia porque esto lo podré hacer cuando tenga un momento de "calma" en mi agitada vida (je, je...)
Ya me dirás cosas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas