![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
problema con programa remoto
tengo un programa que lo tenia funcionando local y funciona perfecto, uso delphi 6 y firebird como motor de base de datos,
la cuestión es que cuando intento colocarlo en red, cambio el uso de DM.IBTransaction1.CommitRetaining por DM.IBTransaction1.Commit para que los otros usuarios puedan ver los cambios que hicieron sobre la base de datos cada uno, el problema es que en una de las ventanas tengo un dbgrid con una consulta y cuando hago el commit se pierde la información de este y me obliga a ejecutar nuevamente esa consulta. me dan alguna sugerencia de trabajar con una aplicación en red.
__________________
JaiMelendez |
#2
|
||||
|
||||
Creo que necesitas leer el documento "maestro" sobre transacciones, aquí lo tienes, a ver si te sirve.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
|||
|
|||
gracias casimiro por la respuesta he leido este manual muy interesante pero sigo con el problema, me ayudan a solucionar el problema ?
__________________
JaiMelendez |
#4
|
||||
|
||||
En el manual que te puso casimiro está la solución, si realmente lo leíste ya debiste haber encontrado el problema. No se trata de buscar respuestas directas, pues es obvio que nunca has trabajado con aplicaciones cliente-servidor por lo que creo que tienes que ponerte a estudiar bastantito sobre el tema, no solo transacciones sino muchos otros conceptos que en aplicaciones de "escritorio" no se utilizan pero que en entornos de red es indispensable conocer para no atorarse en problemas como el que te sucede.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#5
|
|||
|
|||
gracias de todas sus respuestas, quizás tuve la solución en mis narices y no me di cuenta, este tema es de tiempo y estudio con los cuales no cuento en el momento, seria posible me dieran una solución mas precisa, ya que esta aplicacion debo entregarla el lunes a primera hora.
gracias
__________________
JaiMelendez |
#6
|
||||
|
||||
Si quieres una respuesta rapida, pues sigue usando commitretaining pero eso traera sus consecuencias. Al usar commit los cursores se cierran por lo que deberas volver a abrir los datasets. Te sugiero analices mejor las respuestas anteriores.
Saludos |
#7
|
|||
|
|||
si el inconveniente del commitretaining es que si hay dos usuarios conectados sobre la misma tabla y ambos van a hacer actualizaciones sobre la misma, ninguno vera lo que ha realizado el otro hasta que no cierren la transacción mediante el commit, o rollback esto ultimo lo aprendi en el manual. cada usuario al entrar al sistema crea una transaccion esta tiene un TID y a medida que hay mas usuarios sera incrementado este ID, la cuestión es que hay que cerrar estas transacciones y al hacer esto me borra los dbgrid ya que obviamente cierra la transacción y debo crear otra para mostrar la información en dicho dbgrid, esto me afecta el rendimiento ya que demora un poco de tiempo en la creación de la nueva transacción.
caso contrario del commitretaining.
__________________
JaiMelendez |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
¿Qué programa de control remoto usas? | newtron | Varios | 45 | 02-12-2011 13:32:34 |
problema con ejecución de programa | turbopascual5.0 | Varios | 0 | 15-04-2011 15:37:36 |
Problema al correr mi programa... | enecumene | OOP | 5 | 05-10-2007 21:49:21 |
Problema con programa | salvanano | Conexión con bases de datos | 16 | 29-04-2007 16:40:56 |
Problema IP dinamica cn Servidor Control Remoto | Namaris | Redes | 8 | 29-01-2007 23:22:48 |
![]() |
|