Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-10-2005
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 20
Ivanzinho Va por buen camino
wait transactions con DBE

Hola foro, estoy utilizando firebird 1.5 con componentes BDE, pero me encuentro con un problema de concurrencia entre transacciones, ya que si dos transacciones se ejecutan simultanemente sobre el mismo registro de la BD me salta el siguiente error : lock conflict on no wait transaction.

¿Alguien sabe como puedo configurar los componetes BDE para que en un caso como este las transacciones esperen a que se desbloquee el registro?

Muchas gracias por vuestra atención.
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)
Responder Con Cita
  #2  
Antiguo 13-10-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Te aconsejo que dejes el BDE para acceder a Firebird, las razones no vienen al caso, pero puedes usar los componentes zeos (gratuitos, libres y con código fuente).

En cuanto al error, quizás sea mejor que digas que estas haciendo y qué quieres obtener. Esperar a que termine la transaccion, puede traducirse despues en un Dead Lock, que es peor que un simple lock conflict on no wait transaction.

saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #3  
Antiguo 14-10-2005
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 20
Ivanzinho Va por buen camino
Hola Lepe, lo tengo es una aplicación que cubre el proceso de albaraneado y facturación a partir de pedidos utilizando Delphi 5 y Paradox. Cada vez que se realiza un albarán hai que actualizar el almacén (entre otras cosas) y cada vez que se hace una factura se pasan las líneas de albarán a la tabla de albaranes facturados, se actualiza el acumulado de ventas,...

La aplicación funcionaba correctamente hasta que aumento el número de usuarios, ya que en este momento empezaron a producirse conflictos al trabajar desde varios puestos sobre los mismos productos, produciendose errores en el stockaje, quedaban albaranes a medio facturar, etc.. Todo esto debido a que se producian choques al intentar desde varios puestos actualizar los mismos productos.

Lo que necesito ahora es que si hay una transacción iniciada (tanto por creación de albaranes como de facturas) y llega otra transacción que intente modificar un producto de almacén bloqueado por la primera transacción, esta última se espere hasta que finalice la primera.

En este caso no creo que se produzca un Dead Lock, ya que en ningun caso se va a producir que dos transacciones se bloqueen entre si y el tiempo de duracion de una transacción debería ser de unas pocas milesimas.

Lo de la utilización de los componentes BDE es porque son los que estaba usando con Paradox y al realizar la migración a interbase, si estos me permiten hacer lo que necesito, prefiro usarlo ya que el cambio es más rápido (también acepto sugerencias en esto ).

Gracias por vuestra atención y perdón por la parrafada .
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)

Última edición por Ivanzinho fecha: 14-10-2005 a las 13:37:50.
Responder Con Cita
  #4  
Antiguo 15-10-2005
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Te Recomiendo....

Te Recomiendo usar los IBX ó FibPlus ya que son componentes Nativos de Interbase y Firebird, es decir fueron creados especialmente para esta Base de datos.... y trabajan SuperRápidos....

Saludos....
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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


La franja horaria es GMT +2. Ahora son las 18:18:29.


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