Inicio > Microsoft Access > fibonnaci > Base datos con tablas y campos relacionados

Base datos con tablas y campos relacionados

Experto:
Usuario: Anónimo Fecha: 14/01/2009
Valoración: Categoría: Microsoft Access
14/01/2009
Usuario
Hola,  ver si puedes ayudar a este pobre inutil.
En mi empresa de transporte trabajo con una base de datos Access donde vamos metiendo todos los viajes que hacemos. La base tiene una tabla DATOS con los siguientes campos, entre otros: Clientes, Recorrido, Toneladas, Euro/Tonelada, Precio, KM,etc. Segun se van dando los viajes se van metiendo los registros, todo manualmente. Quisiera, si es posible, que al ir metiendo los registros, cuando meta el cliente y el recorrido, automaticamente en el campo Euro/Tonelada aparezca el precio euro por tonelada que corresponde a este cliente. Y que el campo Precio multiplique automáticamente los campos Euro/Tonelada por Toneladas. Me imagino que tenga que crea otra tabla donde meta todos los clientes con sus recorridos y sus precios Euro/tonelada que les corresponden. Y despues crear una consulta que relacione las dos tablas.
No se si me he explicado, espero que pueda hacerse y que puedas ayudarme para empezar el año con una base de datos un poco más decente.
Muchas gracias y un saludo
14/01/2009
interprisas, experto respondiendo en Microsoft Access
Experto
Hola.
Que te pareceria crear una nueva Tabla "Tarifas" con los campos "IdTarifa" y "PrecioEuroTonelada"?
En la tabla Datos incluir entonces la calve foranea "IdTarifa" en lugar del campo
"Euro/Tonelada"
Porque asi?
porque de esta forma los precios se modifican modificando solo
"PrecioEuroTonelada" de la tabla Tarifas
sin tener que ir cliente por cliente a cambiarlo.
que te parece?
Seguidamente deberas crear un formulario basado en una consulta
que incluira la tabla Datos Y Tarifas relacionando por campo  IdTarifa
ya que con ello el valor que pides PrecioEuroTonelada ya te saldra solo.
Para que el campo Precio calcule Precio EuroTonelada xToneladas
puedes hacerlo con una consulta de actualizacion que lo haga para los valores que tengas hasta ahora
y para los que des de alta posteriormente puedes hacer en el formulario un campo calculado que... 
Private Sub CajaTextoToneladas After_Update()
Precio= PrecioEuroTonelada * Toneladas
End Sub
 
o bien en propiedades de la CajadeTexto Precio /Datos/Origen del control poner
= PrecioEuroTonelada * Toneladas
 
Vas a estrenar el año con un super programa Ja ja !
Saludos.
14/01/2009
interprisas, experto respondiendo en Microsoft Access
Experto
ah..
lo mismo que te he dicho para "tarifas" ,si sabes hacerlo, lo puedes hacer tambien con clientes y recorridos
y esta tabla "datos" llamarla y usarla como Albaranes o Facturas o Facturacion.
Access es un SGBDR (sistema gestor de Bases de Datos Relacionales,no lo olvides)
ok?
saludos
14/01/2009
Usuario
Muchisimas gracias, la respuesta es clarisima. Ahora el problema es que controlo muy poco access. Voy a intentar hacerlo. Lo que más a chino me suena es el tema de la consulta de actualización. Veremos a ver. Si lo veo muy mal te seguira dando la lata.
Un saludo
Enlaces patrocinados