![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Cita:
![]() Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino - |
|
#2
|
|||
|
|||
|
Solo por molestar un poco, de casualidad tu cliente maneja multiples puntos de venta (varios equipos con su soft atacando la misma base de datos), como gestionas esto?
Veo que en tus inserts no manejas un identificador para el punto de venta o terminal. Saludos. |
|
#3
|
||||
|
||||
|
Otra buena practica es usar logs. En cada paso importante pones algo como
Cita:
AUN mas confiable si haces el LOG *dentro* de la BD. Creas una tabla LOG y haces similar. Si haces un Log *correcto*, deberias poder reconstruir con 100% de fidelidad los datos derivando SOLO del log.
__________________
El malabarista. |
|
#4
|
||||
|
||||
|
Gracias mamcx
Tienes razón, voy a programar el log porque es un dolor de cabeza esto. |
|
#5
|
|||
|
|||
|
Ya que nos ampliaste la info sobre le problema lo único que queda son los logs y como indican los compañeros en sus comentarios, si el fallo lo tiene el cliente y tu no puedes replicarlo vuela al lugar del cliente (después de añadir logs por donde se te ocurra) y espera a ver el error.
Saludos. |
|
#6
|
||||
|
||||
|
Cita:
No puse todos los campos de la tabla en la consulta que escribí arriba a fin simplificar mi ejemplo. La tabla de Ventas tiene como llave primaria (idSucursal, idVenta) ambas de tipo entero con la que identifico en que sucursal se realizó la venta. Claro, esta misma llave esta en la tabla ventas_det la cual tiene como llave primaria (idSucursal, idVenta, idProducto) siendo el ultimo de tipo string que es una llave foranea a la tabla de productos. La tabla de Ventas también tiene una columna llamada "idVendedor" con la que identifico que vendedor hizo la venta. No llevo un control por máquina ya que los vendedores pueden abrir multiples instancias del programa en diferentes computadoras usando su mismo id de usuario y estas ventas al hacerse el corte se filtran en base al vendedor que las realizó. Para registrar la venta lo que hago es obtener el primero el siguiente folio y después genero la consulta (como la que puse arriba, mas menos productos). Si ocurre un error (que se intentaran registrar dos ventas en el mismo instante y por ende el folio de la venta que llegó posterior está repetido) el sistema manda un rollback de la transaccion que fue rechazada, actualizamos el folio e intentamos registrarla nuevamente. Estoy haciendo algo mal? quiza me pueden sugerir una mejor manera de hacer las cosas. De verdad muchas gracias por sus comentarios |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Alguién conoce una solución simple y confiable para la WebCam en Delphi ? | rolandoj | Gráficos | 8 | 27-05-2013 09:53:56 |
| Sincronizar BD MySQL Hosting con BD MySQL servidor local | ivantech | MySQL | 3 | 09-03-2010 19:01:07 |
| Componente confiable para pasar voz a texto!! | JuanErasmo | C++ Builder | 1 | 06-05-2006 01:20:13 |
| como conectarme remotamente mysql a mysql | sakuragi | MySQL | 14 | 11-11-2004 15:04:46 |
|