Ver los registros en un formulario de una consulta

Querría que alguien me dijera como puedo hacer esto.

Tengo una consulta en MsAccess2007 que selecciona los internos de trabajan en cocina y panadería. Y mi pregunta es. ¿De qué manera lo podría visualizar en el formulario principal donde trabajo y que me seleccione esos registros a través de un botón? Pero que no me mande a otro formulario

He creado el botón, pero lo pulso y no me salen los registros y cada vez que intento meter algo de macros o código son todo errores, porque no se como se formula realmente.

Si sirve de ayuda la tabla internos tiene los campos "idInterno", "nombre", "destino (Cocina;Panadería;Economato;Ordenanza...),módulo (baja;uno;dos;tres;cuatro..) nacionalidad...

El formulario se llama "FormInternos"

La consulta busca Internos "cocina o Panadería" <> del módulo "baja".

Un cable

2 Respuestas

Respuesta
2

Juan: Supongo por suponer algo, que estás en un Formulario Continuo.

Si eso es así, en ese botón que tu dices, le pones algo así:

Me.RecordSourece = "SELECT....."

El SELECT ... es la SQL que dices ue te filtra los datos. Después lógicamente vas a necesitar otro botón para que te vuelva a mostrar todos los datos. Un saludo >> Jacinto

Hola Jacinto, gracias por la contestación.

Al final he puesto Me.Recordsource "IC Busca coc-pan"  (que es como se llama la consulta)

La búsqueda de los registros la hace bien, el problema esta, que no comenté anteriormente,  en que tiene un subformulario asociado donde pongo la actividad diaria del interno.

La relación de la tabla internos con la tabla cotización es de uno a varios

En el formulario me muestra los internos de la consulta, y también los días cotizados en el subformulario, ya que también están cargados en la consulta. Pero al dar el botón siguiente, tengo que pulsar tantas veces como registros tiene la tabla cotización y al final, claro esta, cambia el interno.

¿puedo de alguna forma que al cambiar el interno me salgan en el subformulario todos los días cotizados sin  necesidad de pasar por todos ellos para cambiar de interno

Saludos - Juan

Juan: La verdad es que no acabo de entender ese proceso que me expones.

Teniendo un Formulario principal y un subformulario "vinculado", por un identificador, cada vez que adelantes un registro del Principal, cambian los datos del SubFormulario.

Viendo lo que expones mi sugerencia es que tengas las siguientes Tablas >>

Internos >> Con los datos no volatiles. IdInterno, DNI, Nombre Apellidos, .. Nacionalidad..

Modulos >> IdModulo, DescripModulo

Trabajos (O Destinos)>> IdDestino, DescripDestino

InternosYTrabajos >> IdInterno (o DNI), FechaTrabjo, IdDestino, IdModulo, HorasCotiza, DiasCotiza

No lo he madurado mucho pero por ahí va el tema. Un saludo >> Jacinto

Respuesta
2

Juan, lo que no explicas es como quieres ver los internos que están en... y por otro lado, si sólo te fijas en la dependencia, te saldrían internos que han estado ayer, anteayer, hace tres meses... Por eso, te aconsejaría que hicieras una tabla Internos con los datos que nunca o casi nunca cambian, como puede ser nombre, apellidos, FechaNac, DNI y otra tabla, llamada por ejemplo, Servicios, con IdServicio, Fecha, IdInterno( que ya lo convertiríamos en un combinado, para que eligieras el nombre), Destino(que tambien lo convertiríamos en otro combinado para que eligieras el destino), etc

Tal día como hoy( u otro, depende de cuando asignes los destinos), abres el formulario Servicios y empiezas a asignarlos.

¿Que luego en el formulario Principal, quieres saber quien está o estuvo en la cocina tal día. Basta con elegir el destino de un combo y o bien te lo muestra en un cuadro de lista, mensaje, formulario, informe, etc.

Que quieres saber las vicisitudes de un interno a los largo de los días, como la tabla Servicios tiene un campo Fecha, pues lo mismo.

Que quieres saber quienes estuvieron en la Panadería entre el día tal y el día cual.

Etc.

Hola Icue,

Muchas gracias por tus comentarios.

La verdad es que me he dado cuenta que la tabla la tengo mal diseñada, me di cuenta de eso hace unos días cuando vi que un interno puede tener varios trabajos en su trayectoria. La verdad es que no se como arreglarlo porque tengo muchos internos ya esa tabla tengo asociada otra de cotización de los días trabajados y hay muchos que tienen muchos días.

Vi que lo suyo era que la tabla internos estuviera relacionada uno a varios con tabla trabajo y esta a su vez con la tabla cotización también relacionada de uno a varios. De manera que sería que un interno puede tener varios trabajos y cada trabajo a su vez sus días cotizados.

Agradezco tu respuesta, pero si hago todos los cambios que debería creo que perdería muchos datos

Muchisimas gracias

Saludos

Juan

No sé como la tienes construida, pero no tienes porque perder ningún dato. Puedes crear tablas nuevas y, para no ponértelo difícil usando código VB, con consultas de datos anexados, puedes transferir campos de una a otra, sin perder las originales.

¡Gracias! 

Estoy probando modificar las tablas para dejar las cosas en su sitio con las consultas de datos anexados y esta funcionando . Me costará un poco pero lo lograré. 

Saludos

Juan

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas