Utilizamos Cookies de terceros para generar estadísticas de audiencia y mostrar publicidad personalizada analizando tu navegación. Si sigues navegando estarás aceptando su uso. Más información X
PortadaForo AyudaTutoriales
InicioForosForo Office

ACCESS

HENRY_DAVID
2007-05-30 15:49 - Respuestas: 21 - Tema nº: 2450818


Características: Windows Vista, 256,1.8,40.

he creado una base de datos en access en la cual tengo una tabla productos idproducto, stock, precio, descripcion etc, y otra tabla detalle de ventas idventa, idproducto, preciounidad, cantidad, esta tabla esta relacionada de uno a varios a la tabla productos mediante el idproducto, pero tengo otra tabla detalle de compras idcompras, idproducto, unidcompra, totalcompra que esta tabiém vinculada de una a varios con la tabla productos. mi pregunta es la sgte como hago para cuando yo elija el producto en mi tabla detalle de compras me aumente mi stock y a la vez cuando ingrese en mi detalle de ventas me descuente mi stock y tenga un saldo de productos exacto, he tratado de hacer una consulta pero al no tener relación las tablas detalle de ventas y de compras en mi formulario ventas no me permite ingresar ningun producto. además yo quiero que cuando escoja un producto para la venta me multiplique por el ultimo precio del producto comprado sin necesidad de estar cambiando de precio y ver así mis ganancias. q debo hacer?

Posibles soluciones:
AccessAccess
AccessAccess
AccessAccess
AccessAccess
AccessAccess
ebolo

Re: ACCESS - 2007-05-30 16:49 - Respuesta 2

Hola de nuevo Henry;
Para actualizar el stock de la tabla productos:
- En el formulario Compras, debes de poner lo siguiente en el evento Después de Insertar:

Private Sub Form_AfterInsert()
Dim consulta As String
consulta = "UPDATE PRODUCTOS SET PRODUCTOS.[STOCK] = [STOCK] +" & me.unidcompra
consulta = consulta & " WHERE (((PRODUCTOS.[STOCK])=" & Me.idproducto & "))"
CurrentDb.Execute consulta

End Sub


- En el formulario Ventas, pues lo mismo pero con una resta y en vez de me.unidcompra pues me.cantidad.

Para el tema de los precios, lo suyo es tener una tabla con las Tarifas Artículo - Cliente, es decir un mismo artículo puedes venderlo a distintos precios según cliente.

Pero si lo que quieres es simplemente buscar un dato mira en la ayuda del access la función Dlookup(...) que funciona muy bien.

Saludos.
HENRY_DAVID

Re: ACCESS - 2007-05-30 19:36 - Respuesta 3

hola ebolo gracias por responder, escribí el código q me dijiste en el subforfulario detalle de ventas al ingresar un producto vendido y pasar a la sgte fila me sale error 3144 en tiempo de ejecución: error de sintaxis en la instrucción update
y me señala en amarillo la sgte linea del código CurrentDb.Execute CONSULTA
ebolo

Re: ACCESS - 2007-05-30 20:03 - Respuesta 4

se supone que me.unidcompra es el cuadro de texto donde tienes ese campo; y el me.idproducto es el cuadro de texto donde tienes ese campo.
ponle en una línea anterior a Currentdb...
msgbox consulta
para ver el valor de la variable consulta
comprueba que la tabla se llama productos, y el campo se llama stock
HENRY_DAVID

Re: ACCESS - 2007-05-30 21:46 - Respuesta 5

disculpa la molestia ebolo, pero me salió el sgte mensaje UPDATE Productos Set Productos.[STOCK]-30WHERE(((Productos.[STOCK])=2)) y luego me sale el otro mensaje q te dije
Página:1 Siguiente

Respuestas relacionadas:

Ms accessMs accessForo
Access en xpAccess en xpForo
AccessAccessForo
AccessAccessForo
AccessAccessForo
Access  en redAccess en redForo
AccessAccessForo
Access en redAccess en redForo
AccessAccessForo
AccessAccessForo
InicioSecciones
^ SubirAviso legal
Política Privacidad
Configurarequipos30 Abril 2024