Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-07-2012
Cesar Junior Cesar Junior is offline
Miembro
 
Registrado: ago 2007
Posts: 24
Poder: 0
Cesar Junior Va por buen camino
Cool Facturacion

Buenos dias amigos, despues de mucho tiempo vulevo aqui a buscar ayuda, E creado un sistema de facturación para una empresa en la qual trabajo, en lo general el sistema se porta bien solamente necesito de algunas validaciones, en especial una de ellas que los explico ahora.
En la parte de ventas tengo un DBgrid donde son insertados los productos que seran vendidos (facturados) y al realizar esse processo se descuenta el mismo producto del BD Stock (ACCESS) salvo la venta y perfectamente funciona!!. Ahora el problema es: igual si no salvo la venta al insertar el producto me descuenta del BD,si cierro el programa sin salvar me descuenta del BD, qualquie problema que venga a ocurrir con la maquina (travar-se o algo así) descuenta el producto del BD, se que es algo sencillo pero como estoy con tam poco tiempo no estoy podiendo solucionar, la idea es que no se descuente el producto del BD si la venta no esta salva. Solamente descontar la venta del Banco de Dato si la venta fue salva. Gracias amigos....
Responder Con Cita
  #2  
Antiguo 17-07-2012
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.474
Poder: 21
newtron Va camino a la fama
Hola.

El tema de los acumulados como las existencias en las bases de datos de escritorio es peliagudo porque lo suyo es manejarlas desde los triggers de una base de datos más seria.

¿Cuando descuentas las existencias? ¿Cuando se introduce el artículo y la cantidad en el grid?
__________________
Be water my friend.
Responder Con Cita
  #3  
Antiguo 17-07-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Recuerda poner títulos descriptivos a tus preguntas, "Facturacion" no es un título que describa el problema que quieres resolver. Gracias

En cuanto a tu pregunta, es casi imposible ayudarte si no explicas mucho más lo que haces, el cómo, dónde, etc. aportas código fuente, etc.
Responder Con Cita
  #4  
Antiguo 17-07-2012
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is online now
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.295
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Cesar Junior Ver Mensaje
En la parte de ventas tengo un DBgrid donde son insertados los productos que seran vendidos (facturados) y al realizar esse processo se descuenta el mismo producto del BD Stock (ACCESS) salvo la venta y perfectamente funciona!!. Ahora el problema es: igual si no salvo la venta al insertar el producto me descuenta del BD,si cierro el programa sin salvar me descuenta del BD, qualquie problema que venga a ocurrir con la maquina (travar-se o algo así) descuenta el producto del BD, se que es algo sencillo pero como estoy con tam poco tiempo no estoy podiendo solucionar, la idea es que no se descuente el producto del BD si la venta no esta salva. Solamente descontar la venta del Banco de Dato si la venta fue salva.
Para estas operaciones, normalmente se usan 2 soluciones, sino he entendido mal lo que necesitas:

(1) Transacciones; Realizar las operaciones utilizando transacciones de forma que todas las operaciones de la transacción se hacen como una única operación, o todas o ninguna. Esto tiene sentido cuando las operaciones se realizan en un corto espacio de tiempo. Creo que este no es tu caso, pues entiendo que el proceso de venta puede tardar un rato.

(2) ClientDataset, MemoryDataset o similar. Significa que realizar esa "venta" en memoria, no directamente sobre la Base de Datos. Al finalizar la venta es cuando (utilizando una transacción) se realizan TODAS las operaciones de golpe en la Base de Datos; La venta en sí y los movimientos sobre el stock. Hay varios componentes que te permiten realizar algo así; El TClientDataset que viene con Delphi, las RxLib traen uno llamado MemoryTable, y algunos otros que puedes encontrar sueltos. Es posible que se pueda realizar también utilizando una tabla temporal en la misma Base de Datos, aunque la idea de funcionamiento al final siempre es la misma. Realizar las operaciones en un "lugar intermedio" y luego al aceptar la venta, grabar todo en un sólo paso.

Un saludo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
facturacion en red GOG Conexión con bases de datos 5 05-06-2008 20:21:27
facturacion josi Varios 2 24-05-2008 16:47:30
facturacion douglas Conexión con bases de datos 4 08-11-2007 05:55:11
Facturación lolobs Varios 3 29-04-2004 18:08:41
facturacion xalemdq Tablas planas 7 06-06-2003 09:45:53


La franja horaria es GMT +2. Ahora son las 10:11:25.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi