Visual Basic - Problema de diseño

Life is soft - evento anual de software empresarial
 
Vista:

Problema de diseño

Publicado por Edward (13 intervenciones) el 24/02/2006 01:21:36
Tengo unproblema de diseño de la base de datos . Quiero saber de donde consigo el stock de mi producto. Tengo varias alternativas

-Ponerlo en una tabla con claves foraneas de Producto y de almacen, y despues tendria que actualizar cada vez hao una compra y una venta lo cual hace que mi codigo se haga mas complejo. (Esto es debido a que ejecuto consultas mediante un cnn.execute) por cada detalle dentro de una transaccion

-Realizar una consulta a todos los detalles de Compra y Venta para sumarlos y luego restarlos (Que me resulta mas coherente) pero despues me imagino que mientras mas registros se llene mas pesada sera la consulta.

Otra duda

Mi codigo tanto de Compra y de Venta es autonumerico. Primero ingreso en la tabla de Compra, y luego en su detalle, para eso necesito la clave primaria de la tabla de compra, tengo que hacer una consulta como esta (select * from tCompra ) ponerla en un recorset y luego hacerle un rs.movelast para recuperar esa clave, para luego hacer un insert (insert into (codCompra, codProducto, cantidad, precio) values (" & rscodcompra & "........ )" en la tabla detalle, la pregunta es necesario esto o hay alguna forma de recuperar esa clave sin necesidad de crear todo un recorset.

La Base de datos que utilizo esta en Acces

Gracias por sus sugerencias.
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:Problema de diseño

Publicado por Maife (21 intervenciones) el 24/02/2006 15:04:08
Puedes hacerlo de forma directa

INSERT INTO detalle( codCompra, codProducto, cantidad, precio)
SELECT tcompra.rscodcompra , codigoproducto, cantidad, precio
FROM tCompra
Where ........
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:Problema de diseño

Publicado por Cecilia Colalongo (3116 intervenciones) el 24/02/2006 15:28:22
En cuanto a usar o no campos calculados (en "teoría" no deberían usarse) es algo que tendrás que evaluar en cuanto a la cantidad de registros que si crecen demasiado o se pasan a tablas históricas traerá algunos problemas.

En cuanto a los autonuméricos deberías usar @@IDENTITY en lugar de MoveLast ya que si trabajas en red no te devolverá el valor correcto.

En http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/Q232/1/44.ASP&NoWebContent=1 tienes un ejemplo.
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