Access - Ir a un registro seleccionando el Id en Formulario

 
Vista:
sin imagen de perfil
Val: 5
Ha aumentado su posición en 15 puestos en Access (en relación al último mes)
Gráfica de Access

Ir a un registro seleccionando el Id en Formulario

Publicado por Domingo (3 intervenciones) el 04/12/2018 09:26:14
Hola,
He creado una base de datos en acces 2016 para gestionar diversas tareas de mantenimiento, en ella tengo un formulario en el que doy de alta dichas tareas, con fecha de inicio y fecha de finalización, en el mismo he añadido un subformulario que me muestra los registros de una consulta solo con las tareas pendientes, es decir las que no tienen fecha de finalización, todo esto funciona OK,
Necesito una manera de poder seleccionar una de las tareas que aparecen en el subformulario y que al hacerlo se me rellene con dichos datos el formulario principal, para poder modificar dicha tarea.

He probado con un cuadro combinado en el formulario, que me despliega el Id de las tareas pendientes, si en el Origen del control pongo el campo del Id, y en el Origen de la Fila pongo la consulta de pendientes, me despliega correctamente los Id pendientes, pero al hacer clic me da un error conforme no se puede actualizar un campo Autonumérico.
he probado a crear un campo Calculado "Referencia" que me concatena unas letras con el valor Autonumérico ID, y usar este campo para acceder al registro. pero me hace algo parecido, el error me dice que el campo es de lectura.

Yo no quiero modificar el campo, lo que necesito es seleccionarlo y me rellene el resto de campos con los valores de dicho registro para poder actualizar los valores que faltan.
gracias de antemano
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

Ir a un registro seleccionando el Id en Formulario

Publicado por Anonimo (1 intervención) el 04/12/2018 18:49:06
En casos como este, generalmente Access tenga razón y se este intentando cambiar algo que no esta diseñado para ser modificado.

Si expusieras 'como haces lo que haces' es muy probable que se pudiera encontrar el problema, mientras se carezca de datos ….. la solución se mantiene lejos.
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
sin imagen de perfil
Val: 67
Ha aumentado 1 puesto en Access (en relación al último mes)
Gráfica de Access

Ir a un registro seleccionando el Id en Formulario

Publicado por Raul (42 intervenciones) el 05/12/2018 07:28:39
Buenas, no se entiende muy bien.

Mira las propiedades a ver si lo tienes en solo lectura.
Si no es eso, prueba a cambiar la clave principal del subformulario, crea un autonumerico que sea la clave principal y deja la relacion como esta.

Ya nos cuentas.
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
sin imagen de perfil
Val: 5
Ha aumentado su posición en 15 puestos en Access (en relación al último mes)
Gráfica de Access

Ir a un registro seleccionando el Id en Formulario

Publicado por Domingo (3 intervenciones) el 05/12/2018 09:50:16
Disculpad que no me explique bien, he empezado ha trabajar con Acces hace un mes y todavía hay muchos conceptos que se me escapan, trataré de explicarme un poco mejor.
He creado una base de datos para gestionar unas tareas de mantenimiento de vehículos que requieren de un seguimiento, para ello he creado una tabla "Gestión de Tareas" donde almacenar la fecha de inicio, la de finalización,estado, matricula, avería, costes, observaciones, etc.
He creado un formulario de "Tareas" para introducir dichos datos en la tabla, y un subformulario "Tareas Pendientes"que me muestra una consulta con los registros en estado pendiente.
hasta aquí todo me funciona OK.

Ahora, lo que busco es poder seleccionar de alguna manera uno de los registros que aparecen en el subformulario de "Tareas Pendientes" y que el formulario "Tareas" me vuelva a abrir ese registro para poder modificarlo.
Para ello he probado 3 cosas;

1-Primero que en el subformulario me mostrase el campo "Id" autonumérico.
Después, añadí al formulario un cuadro combinado que me muestra los "Id" de los registros en estado "Pendiente" los selecciona d una consulta, y en el origen del control puse el campo Id de la tabla "Gestión de Tareas"
Al Seleccionar en el cuadro combinado un Id de registro en estado pendiente, me da el error que comentaba antes de que no se puede actualizar el campo por ser Autonumérico.

2.-Creé un nuevo campo ( Calculado) corto llamado "Referencia" en el que concatenaba las letras GT y el Id autonumérico "GT & [Id]
Hice que me apareciese en el subformulario "Tareas Pendientes" y cambié el cuadro combinado para que mostrase la referencia, pero me da un error parecido.

3.- he creado un tercer campo de texto corto llamado "Code" y he modificado el cuadro combinado para que consulte dicho campo, y después he añadido un cuadro de texto con Origen del control "Referencia" y un evento Después de Actualizar que me copia los datos del campo "Referencia" al campo "Code" Me.Code = Me.REFERENCIA pero no me copia el campo, con lo cual tampoco me funciona.

Seguro que hay una manera mas sencilla de hacer lo que necesito, pero estoy bastante limitado porque estoy empezando en esto del Access.
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

Ir a un registro seleccionando el Id en Formulario

Publicado por Anonimo (3396 intervenciones) el 05/12/2018 15:16:19
No veo ninguna aclaración sobre lo expuesto al inicio, pero solo para ir aclarando situaciones:

Si Access indica que no puede modificar 'algo' es porque alguna regla se lo impide (en este caso lo mas probable es que un autonumérico por diseño no es modificable).

Pero lo que no tengo claro es ¿Por qué se desea modificar ese dato en particular? …..

Si conozco un dato (en este caso el ID) que me permite definir de forma única a un elemento cualquiera (en este caso al registro que delata esa ID) ¿no seria lo mas lógico utilizar ese dato conocido para:

A.- Iniciar una búsqueda y localizarlo
B.- Aplicar un filtro y seleccionarlo

Y en cualquiera de los casos anteriores A-B tendríamos el registro a nuestra disposición para modificarlo a placer (con excepción del dato conocido e inmodificable)
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
sin imagen de perfil
Val: 5
Ha aumentado su posición en 15 puestos en Access (en relación al último mes)
Gráfica de Access

Ir a un registro seleccionando el Id en Formulario

Publicado por Domingo (3 intervenciones) el 07/12/2018 08:29:03
Que desastre me explico fatal, de hecho el fin de todo esto es hacer lo que indicas, localizar el registro para poderlo modificar desde el formulario.
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

Ir a un registro seleccionando el Id en Formulario

Publicado por Anonimo (3396 intervenciones) el 07/12/2018 09:18:51
Creo que gran parte de lo que deseas lograr lo tienes hecho ya en Access, en la versión A'2010 (si la memoria no me traiciona) salió un diseño de formulario con esas características: presentar en un único formulario los registros en dos formatos y sincronizarlos, esto es:

.- Presentado en modo único registro
.- Presentados en modo registros continuos

Solo se necesitaría aplicar (al origen de datos del formulario) un filtro: que solo muestre los que tengan tareas pendientes.

El nombre del diseño de ese formulario es/era: 'Formulario dividido'

Espero que esto solucione (al menos en parte) tu inquietud.
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