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-06-01 15:45 - Respuestas: 21 - Tema nº: 2450818


Gracias por auxiliarme ahora si puedo ver mi stock, pero tengo un pequeño problema q espero me puedas ayudar, por ejemplo ingreso una venta y pongo la cantidad de productos vendidos y me actualiza el stock, el problema es q despues de ingresar la cantidad de productos vendido lo modifique xq no era la cantidad correcta de productos pero no actualiza el stock y además elimine ese registro para q actualizara el saldo del stock pero nada quedo igual el stock + cantidad de productos vendidos que ingrese ultimo. Gracias y saludos.
Posibles soluciones:
AccessAccess
AccessAccess
AccessAccess
AccessAccess
AccessAccess
ebolo

Re: ACCESS - 2007-06-01 16:43 - Respuesta 12

es decir que lo que quieres es que cuando modifiques un registro ó elimines un registro te lleve bien el stock.

.... despues de ingresar la cantidad de productos vendido lo modifique xq no era la cantidad correcta de productos pero no actualiza el stock y además elimine ese registro para q actualizara el saldo del stock...

hay varias formas de hacerlo unas más complicadas que otras, yo soy de los que piensa que los stocks No se deben de llevar en tablas, porque casi nunca coincide a no ser que se haga un sistema de trazabilidad muy completo. Lo suyo es que, al ser el Stock un campo calculado, se supone que siempre se sabe sumando entradas y restando Ventas.

Luego sigo,....

saludos.
ebolo

Re: ACCESS - 2007-06-01 17:35 - Respuesta 13

... ya estoy de nuevo.
- Modificar un registro:
Para hacer lo que quieres debes de usar los eventos BeforeUpdate (antes de actualizar) y Afterupdate (después de actualizar) del cuadro de texto en el que tenga el campo de la cantidad.
* Evento BeforeUpdate:
Debes de poner un Update similar al anterior pero con una resta....
* Evento AfterUpdate:
Debes de poner un Update igual que el del evento AfterInsert....
- Eliminar un registro, lo seleccionas desde el lateral y usa el Evento Al Eliminar de l formulario, colocándole un update con la resta.

Saludos, intenta hacerlo y si no te sale lo dices.




HENRY_DAVID

Re: ACCESS - 2007-06-01 19:53 - Respuesta 14

Disculpa la molestia amigo ebolo pero no entendi bien el ultimo mensaje, me puedes dar mas detalles, al referirte al cuadro de texto en el que tenga el campo de la cantidad. te refieres al campo unidcompras que esta dentro del subformulario. A ver si por favor me detalles el codigo
ebolo

Re: ACCESS - 2007-06-01 23:32 - Respuesta 15

sí debe ser el unidcompras.
Lo que tienes en el subformulario en un cuadro de texto, con el origen de datos de un campo, en este caso Unidcompras; si vas a las propiedades del cuadro de texto verás todas las opciones que tienes del mismo.
En la pestaña Datos, tienes el origen de datos, en donde te aparecen todos los campos del origen de datos del subformulario; en la pestaña Eventos tienes todos los eventos que puede realizar un objeto.
Lo que se va añadiendo a un formulario, informe, ... son objetos a los que damos origen de datos ó no, es decir son independientes.
Te comento ésto porque es importante tener las nociones básicas claras para seguir con temas un poco más 'complicados'.

seguimos con lo nuestro:

- Modificar:
* evento antes de actualizar: restamos la cantidad que nos ponga en el cuadro de texto del stock.

Private Sub unidcompras_BeforeUpdate(Cancel As Integer)
Dim consulta as string
consulta = "UPDATE PRODUCTOS SET PRODUCTOS.[STOCK] = [STOCK] - " & me.unidcompra
consulta = consulta & " WHERE (((PRODUCTOS.[unidcompra])=" & Me.idproducto & "))"
CurrentDb.Execute consulta

End Sub


* evento después de actualizar: sumamos la cantidad que nos ponga en el cuadro de texto al stock.

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

End Sub


saludos.
Página:Anterior3 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
Configurarequipos23 Diciembre 2024