Access - datos indexados? o no?

   
Vista:

datos indexados? o no?

Publicado por leidijaidu (27 intervenciones) el 20/02/2009 14:33:48
Hola,
tengo una tabla tblEquipo que tiene los campos Marca y Modelo. Aparte tengo una tabla tblMarcas, donde se guardan todas las marcas, y una tabla tblModelos, donde se guardan todos los modelos y la marca a la que pertenecen.

Tengo un formulario para los equipos, y en él tengo dos cuadros combinados, uno para el campo Marca y otro para el campo Modelo. El cuadro combinado de Marca me muestra las marcas que tengo guardadas en la tabla tblMarcas y el cuadro de Modelos los modelos que tengo guardados en tblModelos. Cuando selecciono una marca me muestra solo los modelos de esa marca. Lo que selecciono, tanto en un cuadro combinado como en otro, me lo guarda en tblEquipos.

Soy novataza y estoy bastante orgullosa de haber conseguido esto!

Ahora viene mi problema: qué hacer si un equipo es de una marca que no tengo almacenada en tblMarcas (o bien un modelo que no tengo almacenado en tblModelos).

Si simplemente lo escribo en el cuadro combinado se guarda en tblEquipos pero no en tblMarcas, y me interesa que aqui se almacenen todas las marcas que tenemos. He investigado por el foro y he visto que esto se puede hacer con una consulta de datos indexados. He creado una pero ahora no se qué hacer con ella. Donde la "pongo"? Como hago para que se ejecute automáticamente? es decir, que yo no tenga que dar a ningún botón...

Muuuuchas gracias!
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

RE:datos indexados? o no?

Publicado por JMAN (96 intervenciones) el 20/02/2009 15:52:05
Saludos!

es mucho mas facil que lo que quieres hacer. la opcion que te planteo es hacerlo como en la base de datos neptuno (o northwind para la version en ingles).

1. el combo se limita a los valores de una tabla (en este caso marcas y modelos)
2. para agregar un elemento que no esta en la tabla (marca o modelo nuevo) hacemos doble clic sobre el combo y abrimos un formulario para introducir nuevas marcas y modelos a la tabla respectiva. luego de cerrar el formulario, la marca nueva queda en la tabla por lo que sí lo verás en el combo la siguiente vez que lo estires.

¿como se hace esto?

1º crea un formulario nuevo, con origen de registros en la tabla marcas. grabalo como "frmMarcas"
2º abre la ventana de propiedades del combo marcas y vas a la solapa "eventos"
3º en el evento "al hacer doble clic" abres un procedimiento de evento
4º el procedimiento debe tener la instruccion:

DoCmd.OpenForm "frmMarcas"

5º repite los pasos, ahora para los modelos

estoy resumiendo lo mas que puedo pero si algo omití lo puedes aprender con la base de datos de ejemplo neptuno

JMA
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

RE:datos indexados? o no?

Publicado por leidijaidu (27 intervenciones) el 23/02/2009 10:34:29
Hola JMA, probaré lo que me dices y ya te contaré. Gracias!
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

RE:datos ANexados? o no?

Publicado por leidijaidu (27 intervenciones) el 23/02/2009 16:37:16
JMA, muchas gracias, lo he probado y va genial, y si, muchísimo mas simple...

Tengo otra pregunta que hacerte (abusando un poquito de tu amabilidad... ). En la tabla tblModelos tengo los dos campos Marca y Modelo, para que me distinga los modelos que correspondan a cada marca. Supongamos que estoy rellenando la ficha de un nuevo equipo adquirido, y es de una marca que ya tengo registrada pero un nuevo modelo, así que selecciono la marca en el campo Marca y después hago doble clic en el campo Modelo para añadir un nuevo modelo. En el formulario que me abre hago un nuevo registro para el nuevo modelo y señalo también la marca a la que corresponde. Hay algún modo de que al abrir el formulario para el nuevo modelo el campo Marca tenga ya seleccionada la marca que he elegido en el formulario del Equipo?

uffff, no se si me he explicado... se puede hacer?
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