![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#21
|
||||
|
||||
|
Cita:
-
__________________
"constructive mind, destructive thoughts" |
|
#22
|
||||
|
||||
|
TOPX gracias por el Link
ya li visite la primera vez y llego a cumplir todo del tutorial, busco algun link de ejemplos firebird+ delphi si conoces algun estare agradecidor.
__________________
Gracias por su coloración club delphi darkbits ;) |
|
#23
|
||||
|
||||
|
No es sólo un documento, esos tres tutoriales tienen todo el código fuente; descárguelos todos por favor.
__________________
"constructive mind, destructive thoughts" Última edición por TOPX fecha: 19-12-2012 a las 16:29:44. Razón: Redacción. |
|
#24
|
||||
|
||||
|
Además de los comentarios y tutoriales a los que te han remitido, yo optaría (centrándome en el código que has puesto), por no mantener las dos consultas abiertas.
En general es una buena costumbre no mantener consultas abiertas más tiempo del necesario. Por lo que veo, la primera consulta se usa para buscar un valor. Una vez abierta, recoge ese valor en una variable y ciérrala. Pruébalo y ya dirás...
__________________
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. |
|
#25
|
||||
|
||||
|
hice el consejo y nada.
encontre este detalle si pueden ayudarme: tengo 10 monitores en stock si la PC1 realiza la venta de 1 Monitor con el codigo q pego arriba me muestra 9 monitores en stock. pero si habro la aplicacion en otra PC2..a.. PC5 me muestra que tengo sigue 10 monitores a la venta si le digo q quiero vender 1 ahi esta el problema. se bloquea todo,. entonces veo que le falta algo despues de _DM.consulta2.ExecSQL;
__________________
Gracias por su coloración club delphi darkbits ;) |
|
#26
|
||||
|
||||
|
¿Estás haciendo algo con transacciones?
Lo he comentado antes. ¿Estás haciendo los Commit?
__________________
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. |
|
#27
|
||||
|
||||
|
Yo creo que este tema es el mismo que este otro, allí te expliqué y te pregunté cosas, al igual que te están preguntando aquí... y no las contestas
![]() Mejor voy a unir los dos hilos.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#28
|
||||
|
||||
|
no hay algunos ejemplos por ahi please para mi es mas facil ver como se hace
agradecido.
__________________
Gracias por su coloración club delphi darkbits ;) |
|
#29
|
||||
|
||||
|
Cita:
Además como sigues sin contestar nuestras preguntas...
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#30
|
|||
|
|||
|
Hola darkbits,
Ya ha pasado una semana y creo que aún no has solucionado tu problema. Quiero redondear algunas comentarios y sugerencia que ya te han hecho otros foristas y quizás has pasado por alto: En Firebird todo ocurre siempre dentro de una transacción, aún cuando parezca que tu código no haya iniciado esa transacción. En tu código, cuando vendes un MOUSE y actualizas las cantidades, el registro que se actualiza en la tabla INALMACEN queda "retenido o bloqueado", ningún otro cliente (estación de trabajo) podrá modificar ese registro a menos que lo comprometas. Ahora, si el registro no es comprometido, los demás clientes podrán leer el registro pero en su versión original, no la versión modificada; es por esto que cuando realizas una venta, el PC que hizo la venta muestra en STOCK 9, mientras el resto de PC muestra 10 (la versión original del registro). Solución: Hay que finalizar la transacción. Al finalizar la transacción el registro o registros insertado/actualizado/borrado queda "visible" (o invisible si fue borrado) para los demás clientes. Para finalizar la transacción debes ejecutar el método commit o commitretaining sobre la transacción, tal cual lo indicó "Casimiro Notevi": _DM.consulta2.Transaction.commitretaining. En tu caso aconsejo que hagas uso de commitretaining, pues supongo que solo tienes un componente de transacción y cuando es así al ejecutar el método commit no solo se compromete la transacción sino que también se finaliza la conexión a la base de datos, en cambio commitretaining deja la base de datos, la transacción y los dataset abiertos para seguir trabajando sobre ellos. |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| update, insert, delete fibplus, ayuda!!! | montesoft | SQL | 19 | 11-12-2012 00:53:55 |
| Insertar sentencia SQL despues de Insert,update o delete | vivamotos | Firebird e Interbase | 10 | 02-08-2011 18:24:30 |
| Mismatch DataPacket al realizar insert, delete o update | Rockin | Firebird e Interbase | 0 | 07-04-2008 19:47:56 |
| Trigger Before (Insert,update,delete)? | estebanx | MS SQL Server | 2 | 25-05-2006 15:58:19 |
| Como crear una sentencia SQL (Insert, update y delete) | sitrico | Conexión con bases de datos | 1 | 14-10-2004 00:02:42 |
|