Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus-es / 2012-09

actualizar grid automáticamente

21 messages · 8 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Paola Bruccoleri

Hola todos..

tengo una aplicaci�n (programa1) siempre abierta, donde en un form hay un grid con datos de una tabla de firebird (es una tabla q se maneiene con muy pocos registros x eso no us� una consulta) A su vez hay otro programa (programa2) que carga items en esa misma tabla.

Necesito que el gris del programa1 siempre est� mostrando los agregados q hace el programa2
�La �nica forma que tengo de que ese grid vea reflejado constantemente esos agregados, es poniendo un timer que haga el refresh de la tabla? o de qu� otra manera puede ser?
tengo a la tabla, propiedad updateMode = umUpdateChanged

Lo mismo me pasa en otro grid q est� en ese form...

Ahora he probado ejecutando los 2 programas en la misma m�quina y el grid no se me actualiza si no salgo del programa1 y vuelvo a entrar.

(uso componentes zeos 7, y Lazarus 0.9.31 r30432 FPC 2.5.1 i386-win32-win32/win64... si, se que est� desactualizado pero no he podido hacerlo)

Agradezco cualquier pista
muchas gracias

Reply by email

Jose Daboin
to Paola Bruccoleri

Te iba a decir que con un timer pero ya lo estas haciendo [?]

El 26 de septiembre de 2012 15:03, Paola Bruccoleri < pbruccoleri en adinet.com.uy> escribi�:

Show quoted text 32 lines
Hola todos.. tengo una aplicaci�n (programa1) siempre abierta, donde en un form hay un grid con datos de una tabla de firebird (es una tabla q se maneiene con muy pocos registros x eso no us� una consulta) A su vez hay otro programa (programa2) que carga items en esa misma tabla. Necesito que el gris del programa1 siempre est� mostrando los agregados q hace el programa2 �La �nica forma que tengo de que ese grid vea reflejado constantemente esos agregados, es poniendo un timer que haga el refresh de la tabla? o de qu� otra manera puede ser? tengo a la tabla, propiedad updateMode = umUpdateChanged Lo mismo me pasa en otro grid q est� en ese form... Ahora he probado ejecutando los 2 programas en la misma m�quina y el grid no se me actualiza si no salgo del programa1 y vuelvo a entrar. (uso componentes zeos 7, y Lazarus 0.9.31 r30432 FPC 2.5.1 i386-win32-win32/win64... si, se que est� desactualizado pero no he podido hacerlo) Agradezco cualquier pista muchas gracias ______________________________**_________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.**freepascal.org<Lazarus-es en lists.lazarus.freepascal.org> http://lists.lazarus.**freepascal.org/mailman/**listinfo/lazarus-es<http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es>

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120926/ada76f15/attachment.html> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: no disponible
Type: image/gif
Size: 453 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120926/ada76f15/attachment.gif>

Reply by email

Paola Bruccoleri
to Jose Daboin

El 26/09/2012 05:05 p.m., Jose Daboin escribi�:

Te iba a decir que con un timer pero ya lo estas haciendo

Hola Jos�..
no, a�n no he probado con el timer!..
quiz�s con alguna propiedad de la conexi�n o la tabla se pueda, por eso pregunt�!
muchas gracias!

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120926/803843bd/attachment.html> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: no disponible
Type: image/gif
Size: 453 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120926/803843bd/attachment.gif>

Reply by email

Maikel Enrique Pernía Matos
to Paola Bruccoleri: Hola todos.. tengo una aplicaci�n (programa1) siempre abierta, donde en un form hay un…

has pensado en utilizar un socket o tuberia para comunicar ambas aplicaciones, en esencia tendr�as una siempre en escucha, y de la otra la mandar�as a actualizar cada vez que hagas un cambio en la base de datos.

El problema creo que se resolver�a con uso de memoria compartida, b�sicamente por ah� anda la cosa.

Saludos
Maikel

El mi�, 26-09-2012 a las 16:33 -0300, Paola Bruccoleri escribi�:

Show quoted text 31 lines
Hola todos.. tengo una aplicaci�n (programa1) siempre abierta, donde en un form hay un grid con datos de una tabla de firebird (es una tabla q se maneiene con muy pocos registros x eso no us� una consulta) A su vez hay otro programa (programa2) que carga items en esa misma tabla. Necesito que el gris del programa1 siempre est� mostrando los agregados q hace el programa2 �La �nica forma que tengo de que ese grid vea reflejado constantemente esos agregados, es poniendo un timer que haga el refresh de la tabla? o de qu� otra manera puede ser? tengo a la tabla, propiedad updateMode = umUpdateChanged Lo mismo me pasa en otro grid q est� en ese form... Ahora he probado ejecutando los 2 programas en la misma m�quina y el grid no se me actualiza si no salgo del programa1 y vuelvo a entrar. (uso componentes zeos 7, y Lazarus 0.9.31 r30432 FPC 2.5.1 i386-win32-win32/win64... si, se que est� desactualizado pero no he podido hacerlo) Agradezco cualquier pista muchas gracias _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
Este mensaje le ha llegado mediante el servicio de correo electronico que ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema Nacional de Salud. La persona que envia este correo asume el compromiso de usar el servicio a tales fines y cumplir con las regulaciones establecidas Infomed: http://www.sld.cu/

Reply by email

Hilde Hansz
to Paola Bruccoleri: El 26/09/2012 05:05 p.m., Jose Daboin escribi�: Hola Jos�.. no, a�n no he probado…

Hola Paola, yo no he encontrado otra forma, que en el timer, colocar: tabla.Close, tabla.Open. Hace poco, vi una implementaci�n para actualizar, pero esto funciona. Si la encuentro te lo paso.

hh

De: Paola Bruccoleri [mailto:pbruccoleri en adinet.com.uy] Enviado el: mi�rcoles, 26 de septiembre de 2012 05:16 p.m. Para: Spanish version of Lazarus List
Asunto: Re: [Lazarus-es] actualizar grid autom�ticamente

El 26/09/2012 05:05 p.m., Jose Daboin escribi�:

Te iba a decir que con un timer pero ya lo estas haciendo

Hola Jos�..
no, a�n no he probado con el timer!..
quiz�s con alguna propiedad de la conexi�n o la tabla se pueda, por eso pregunt�!
muchas gracias!

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120926/eaa5475d/attachment.html> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: no disponible
Type: image/gif
Size: 453 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120926/eaa5475d/attachment.gif>

Reply by email

Jose Daboin
to Paola Bruccoleri: El 26/09/2012 05:05 p.m., Jose Daboin escribi�: Hola Jos�.. no, a�n no he probado…

Pues yo utilizo un timer pero no creo que sea lo adecuado, ademas yo uso es sqlite3 no se que estas utilizando tu, creo que dijiste zeos, si es asi utiliza un zquery q es lo que yo hago y en el timer hago la consulta.

A mi parecer ese metodo no deberia ser pero es el unico que he encontrado

El 26 de septiembre de 2012 15:45, Paola Bruccoleri < pbruccoleri en adinet.com.uy> escribi�:

Show quoted text 18 lines
** El 26/09/2012 05:05 p.m., Jose Daboin escribi�: Te iba a decir que con un timer pero ya lo estas haciendo [?] Hola Jos�.. no, a�n no he probado con el timer!.. quiz�s con alguna propiedad de la conexi�n o la tabla se pueda, por eso pregunt�! muchas gracias! _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120926/ff95bd8e/attachment-0001.html> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: no disponible
Type: image/gif
Size: 453 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120926/ff95bd8e/attachment-0001.gif>

Reply by email

Oscar Benitez Carrillo
to Paola Bruccoleri: Hola todos.. tengo una aplicaci�n (programa1) siempre abierta, donde en un form hay un…

Hola Paola, por qu� no pruebas con el uso de eventos en firebird, alguna vez hice algo parecido y utiliz� los eventos de firebird, la verdad no utilizo zeos pero he visto que traen el componente TZIBEventAlerter y TZpgEventAlerter que capturan los eventos de la base de datos, para el uso de eventos puedes ver aqui:

http://www.intitec.com/varios/Firebird_uso_de_eventos.pdf

http://www.firebird.com.mx/modules/AMS/article.php?storyid=35

Espero te sirva, saludos.
Oscar Benitez

El 26/09/2012 02:33 p.m., Paola Bruccoleri escribi�:

Show quoted text 33 lines
Hola todos.. tengo una aplicaci�n (programa1) siempre abierta, donde en un form hay un grid con datos de una tabla de firebird (es una tabla q se maneiene con muy pocos registros x eso no us� una consulta) A su vez hay otro programa (programa2) que carga items en esa misma tabla. Necesito que el gris del programa1 siempre est� mostrando los agregados q hace el programa2 �La �nica forma que tengo de que ese grid vea reflejado constantemente esos agregados, es poniendo un timer que haga el refresh de la tabla? o de qu� otra manera puede ser? tengo a la tabla, propiedad updateMode = umUpdateChanged Lo mismo me pasa en otro grid q est� en ese form... Ahora he probado ejecutando los 2 programas en la misma m�quina y el grid no se me actualiza si no salgo del programa1 y vuelvo a entrar. (uso componentes zeos 7, y Lazarus 0.9.31 r30432 FPC 2.5.1 i386-win32-win32/win64... si, se que est� desactualizado pero no he podido hacerlo) Agradezco cualquier pista muchas gracias _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email

Gastón Dall' Oglio
to Oscar Benitez Carrillo

Hola.

Claro, lo mejor son eventos. Pocos motores de bases de datos tienen este concepto de eventos, que es una notificaci�n enviada desde el servidor al cliente.

Por ejemplo, pod�s disparar un evento en un trigger de una tabla que te interesa notificar los cambios a los clientes conectados a la base de datos. El trigger puede ser polivalente (se dispara ante mas de un tipo de evento), con lo cual te ahorras escribir varios trigger para la misma funcionalidad. Es mejor darle al al trigger una position alta as� se dispara �ltimo, si hay otros trigger sobre la misma tabla. Ejemplo:

CREATE TRIGGER MITABLA_CAMBIO FOR MITABLA ACTIVE
AFTER INSERT OR UPDATE OR DELETE POSITION 10
AS
BEGIN
    POST_EVENT 'mitabla_cambio';
END

Para testear, en Flame Robin fijate que si abr�s el men� contextual de una base de datos, en Advanced -> Monitor Events, podes agregar un evento y monitorearlo.

Saludos.

El 26 de septiembre de 2012 23:36, Oscar Benitez Carrillo < obc5005 en yahoo.com.mx> escribi�:

Show quoted text 55 lines
Hola Paola, por qu� no pruebas con el uso de eventos en firebird, alguna vez hice algo parecido y utiliz� los eventos de firebird, la verdad no utilizo zeos pero he visto que traen el componente TZIBEventAlerter y TZpgEventAlerter que capturan los eventos de la base de datos, para el uso de eventos puedes ver aqui: http://www.intitec.com/varios/Firebird_uso_de_eventos.pdf http://www.firebird.com.mx/modules/AMS/article.php?storyid=35 Espero te sirva, saludos. Oscar Benitez El 26/09/2012 02:33 p.m., Paola Bruccoleri escribi�: Hola todos.. > > tengo una aplicaci�n (programa1) siempre abierta, donde en un form hay un > grid con datos de una tabla de firebird (es una tabla q se maneiene con muy > pocos registros x eso no us� una consulta) > A su vez hay otro programa (programa2) que carga items en esa misma tabla. > > Necesito que el gris del programa1 siempre est� mostrando los agregados q > hace el programa2 > �La �nica forma que tengo de que ese grid vea reflejado constantemente > esos agregados, es poniendo un timer que haga el refresh de la tabla? o de > qu� otra manera puede ser? > tengo a la tabla, propiedad updateMode = umUpdateChanged > > Lo mismo me pasa en otro grid q est� en ese form... > > Ahora he probado ejecutando los 2 programas en la misma m�quina y el grid > no se me actualiza si no salgo del programa1 y vuelvo a entrar. > > (uso componentes zeos 7, y Lazarus 0.9.31 r30432 FPC 2.5.1 > i386-win32-win32/win64... si, se que est� desactualizado pero no he podido > hacerlo) > > Agradezco cualquier pista > muchas gracias > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es > > _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120927/906151af/attachment.html>

Reply by email

Paola Bruccoleri
to Gastón Dall' Oglio

Hola todos..
muchas gracias por las sugerencias. Antes de probar con un timer, comenc� a estudiar esto de los eventos. Es muy sencillo y claro el concepto.
Aparentemente me funciona porque en el ZIBEventAlerter1EventAlert, donde hago los refresh coloqu� un showmessage a ver si se disparaba. Y lo hace tanto si agrego registros desde programa1 (donde est�n los grids) como de programa2.. PERO... los refresh no refrescan nada si agrego registros desde el programa2, por m�s que el evento se dispar�.

(Aclaro q el componente ZIBEventAlerter lo coloqu� en el form del programa1 donde est�n los grids)

ya prob� hacer:
tbl.refresh
dbgrid.refresh

y tambi�n:
tbl.close;
tbl.open;
dbgrid.refresh (el dbgrid q muestra esa tabla)

(tambi�n tengo una consulta q debo actualizar, q no la puse all� para simplificar, y es la misma cosa)

y nada!
solo aparece el cambio si cierro el programa y lo vuelvo a abrir....

El 27/09/2012 08:53 a.m., Gast�n Dall' Oglio escribi�:

Show quoted text 73 lines
Hola. Claro, lo mejor son eventos. Pocos motores de bases de datos tienen este concepto de eventos, que es una notificaci�n enviada desde el servidor al cliente. Por ejemplo, pod�s disparar un evento en un trigger de una tabla que te interesa notificar los cambios a los clientes conectados a la base de datos. El trigger puede ser polivalente (se dispara ante mas de un tipo de evento), con lo cual te ahorras escribir varios trigger para la misma funcionalidad. Es mejor darle al al trigger una position alta as� se dispara �ltimo, si hay otros trigger sobre la misma tabla. Ejemplo: CREATE TRIGGER MITABLA_CAMBIO FOR MITABLA ACTIVE AFTER INSERT OR UPDATE OR DELETE POSITION 10 AS BEGIN POST_EVENT 'mitabla_cambio'; END Para testear, en Flame Robin fijate que si abr�s el men� contextual de una base de datos, en Advanced -> Monitor Events, podes agregar un evento y monitorearlo. Saludos. El 26 de septiembre de 2012 23:36, Oscar Benitez Carrillo <obc5005 en yahoo.com.mx <mailto:obc5005 en yahoo.com.mx>> escribi�: Hola Paola, por qu� no pruebas con el uso de eventos en firebird, alguna vez hice algo parecido y utiliz� los eventos de firebird, la verdad no utilizo zeos pero he visto que traen el componente TZIBEventAlerter y TZpgEventAlerter que capturan los eventos de la base de datos, para el uso de eventos puedes ver aqui: http://www.intitec.com/varios/Firebird_uso_de_eventos.pdf http://www.firebird.com.mx/modules/AMS/article.php?storyid=35 Espero te sirva, saludos. Oscar Benitez El 26/09/2012 02:33 p.m., Paola Bruccoleri escribi�: Hola todos.. tengo una aplicaci�n (programa1) siempre abierta, donde en un form hay un grid con datos de una tabla de firebird (es una tabla q se maneiene con muy pocos registros x eso no us� una consulta) A su vez hay otro programa (programa2) que carga items en esa misma tabla. Necesito que el gris del programa1 siempre est� mostrando los agregados q hace el programa2 �La �nica forma que tengo de que ese grid vea reflejado constantemente esos agregados, es poniendo un timer que haga el refresh de la tabla? o de qu� otra manera puede ser? tengo a la tabla, propiedad updateMode = umUpdateChanged Lo mismo me pasa en otro grid q est� en ese form... Ahora he probado ejecutando los 2 programas en la misma m�quina y el grid no se me actualiza si no salgo del programa1 y vuelvo a entrar. (uso componentes zeos 7, y Lazarus 0.9.31 r30432 FPC 2.5.1 i386-win32-win32/win64... si, se que est� desactualizado pero no he podido hacerlo)

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120927/4a1526a5/attachment.html>

Reply by email

Rubén Ibáñez
to Paola Bruccoleri

El 27 de septiembre de 2012 09:35, Paola Bruccoleri < pbruccoleri en adinet.com.uy> escribi�:

Show quoted text 108 lines
** Hola todos.. muchas gracias por las sugerencias. Antes de probar con un timer, comenc� a estudiar esto de los eventos. Es muy sencillo y claro el concepto. Aparentemente me funciona porque en el ZIBEventAlerter1EventAlert, donde hago los refresh coloqu� un showmessage a ver si se disparaba. Y lo hace tanto si agrego registros desde programa1 (donde est�n los grids) como de programa2.. PERO... los refresh no refrescan nada si agrego registros desde el programa2, por m�s que el evento se dispar�. (Aclaro q el componente ZIBEventAlerter lo coloqu� en el form del programa1 donde est�n los grids) ya prob� hacer: tbl.refresh dbgrid.refresh y tambi�n: tbl.close; tbl.open; dbgrid.refresh (el dbgrid q muestra esa tabla) (tambi�n tengo una consulta q debo actualizar, q no la puse all� para simplificar, y es la misma cosa) y nada! solo aparece el cambio si cierro el programa y lo vuelvo a abrir.... El 27/09/2012 08:53 a.m., Gast�n Dall' Oglio escribi�: Hola. Claro, lo mejor son eventos. Pocos motores de bases de datos tienen este concepto de eventos, que es una notificaci�n enviada desde el servidor al cliente. Por ejemplo, pod�s disparar un evento en un trigger de una tabla que te interesa notificar los cambios a los clientes conectados a la base de datos. El trigger puede ser polivalente (se dispara ante mas de un tipo de evento), con lo cual te ahorras escribir varios trigger para la misma funcionalidad. Es mejor darle al al trigger una position alta as� se dispara �ltimo, si hay otros trigger sobre la misma tabla. Ejemplo: CREATE TRIGGER MITABLA_CAMBIO FOR MITABLA ACTIVE AFTER INSERT OR UPDATE OR DELETE POSITION 10 AS BEGIN POST_EVENT 'mitabla_cambio'; END Para testear, en Flame Robin fijate que si abr�s el men� contextual de una base de datos, en Advanced -> Monitor Events, podes agregar un evento y monitorearlo. Saludos. El 26 de septiembre de 2012 23:36, Oscar Benitez Carrillo < obc5005 en yahoo.com.mx> escribi�: > Hola Paola, por qu� no pruebas con el uso de eventos en firebird, alguna > vez hice algo parecido y utiliz� los eventos de firebird, la verdad no > utilizo zeos pero he visto que traen el componente TZIBEventAlerter y > TZpgEventAlerter que capturan los eventos de la base de datos, para el uso > de eventos puedes ver aqui: > > http://www.intitec.com/varios/Firebird_uso_de_eventos.pdf > > http://www.firebird.com.mx/modules/AMS/article.php?storyid=35 > > Espero te sirva, saludos. > Oscar Benitez > > > El 26/09/2012 02:33 p.m., Paola Bruccoleri escribi�: > > Hola todos.. >> >> tengo una aplicaci�n (programa1) siempre abierta, donde en un form hay >> un grid con datos de una tabla de firebird (es una tabla q se maneiene con >> muy pocos registros x eso no us� una consulta) >> A su vez hay otro programa (programa2) que carga items en esa misma >> tabla. >> >> Necesito que el gris del programa1 siempre est� mostrando los agregados >> q hace el programa2 >> �La �nica forma que tengo de que ese grid vea reflejado constantemente >> esos agregados, es poniendo un timer que haga el refresh de la tabla? o de >> qu� otra manera puede ser? >> tengo a la tabla, propiedad updateMode = umUpdateChanged >> >> Lo mismo me pasa en otro grid q est� en ese form... >> >> Ahora he probado ejecutando los 2 programas en la misma m�quina y el >> grid no se me actualiza si no salgo del programa1 y vuelvo a entrar. >> >> (uso componentes zeos 7, y Lazarus 0.9.31 r30432 FPC 2.5.1 >> i386-win32-win32/win64... si, se que est� desactualizado pero no he podido >> hacerlo) >> >> Hola Paola:

�Hay un tbl.Post? �Lo has probado?
Rub�n.

Show quoted text 6 lines
_______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120927/06c33bf2/attachment-0001.html>

Reply by email

Oscar Benitez Carrillo
to Rubén Ibáñez

Paola, el componente ZConnection tiene una propiedad TransacIsolation, �Ya probaste ponerla en ReadCommited? aunque yo he utilizado otros componentes, en el componente Transaction he tenido que poner en opciones->ReadCommited=True para lograr lo que tu quieres.

Saludos
Oscar Benitez

El 27/09/2012 08:53 a.m., Rub�n Ib��ez escribi�:

Show quoted text 133 lines
El 27 de septiembre de 2012 09:35, Paola Bruccoleri <pbruccoleri en adinet.com.uy <mailto:pbruccoleri en adinet.com.uy>> escribi�: Hola todos.. muchas gracias por las sugerencias. Antes de probar con un timer, comenc� a estudiar esto de los eventos. Es muy sencillo y claro el concepto. Aparentemente me funciona porque en el ZIBEventAlerter1EventAlert, donde hago los refresh coloqu� un showmessage a ver si se disparaba. Y lo hace tanto si agrego registros desde programa1 (donde est�n los grids) como de programa2.. PERO... los refresh no refrescan nada si agrego registros desde el programa2, por m�s que el evento se dispar�. (Aclaro q el componente ZIBEventAlerter lo coloqu� en el form del programa1 donde est�n los grids) ya prob� hacer: tbl.refresh dbgrid.refresh y tambi�n: tbl.close; tbl.open; dbgrid.refresh (el dbgrid q muestra esa tabla) (tambi�n tengo una consulta q debo actualizar, q no la puse all� para simplificar, y es la misma cosa) y nada! solo aparece el cambio si cierro el programa y lo vuelvo a abrir.... El 27/09/2012 08:53 a.m., Gast�n Dall' Oglio escribi�: > Hola. > > Claro, lo mejor son eventos. Pocos motores de bases de datos > tienen este concepto de eventos, que es una notificaci�n enviada > desde el servidor al cliente. > > Por ejemplo, pod�s disparar un evento en un trigger de una tabla > que te interesa notificar los cambios a los clientes conectados a > la base de datos. El trigger puede ser polivalente (se dispara > ante mas de un tipo de evento), con lo cual te ahorras escribir > varios trigger para la misma funcionalidad. Es mejor darle al al > trigger una position alta as� se dispara �ltimo, si hay otros > trigger sobre la misma tabla. Ejemplo: > > CREATE TRIGGER MITABLA_CAMBIO FOR MITABLA ACTIVE > AFTER INSERT OR UPDATE OR DELETE POSITION 10 > AS > BEGIN > POST_EVENT 'mitabla_cambio'; > END > > > Para testear, en Flame Robin fijate que si abr�s el men� > contextual de una base de datos, en Advanced -> Monitor Events, > podes agregar un evento y monitorearlo. > > Saludos. > > > El 26 de septiembre de 2012 23:36, Oscar Benitez Carrillo > <obc5005 en yahoo.com.mx <mailto:obc5005 en yahoo.com.mx>> escribi�: > > Hola Paola, por qu� no pruebas con el uso de eventos en > firebird, alguna vez hice algo parecido y utiliz� los eventos > de firebird, la verdad no utilizo zeos pero he visto que > traen el componente TZIBEventAlerter y TZpgEventAlerter que > capturan los eventos de la base de datos, para el uso de > eventos puedes ver aqui: > > http://www.intitec.com/varios/Firebird_uso_de_eventos.pdf > > http://www.firebird.com.mx/modules/AMS/article.php?storyid=35 > > Espero te sirva, saludos. > Oscar Benitez > > > El 26/09/2012 02:33 p.m., Paola Bruccoleri escribi�: > > Hola todos.. > > tengo una aplicaci�n (programa1) siempre abierta, donde > en un form hay un grid con datos de una tabla de firebird > (es una tabla q se maneiene con muy pocos registros x eso > no us� una consulta) > A su vez hay otro programa (programa2) que carga items en > esa misma tabla. > > Necesito que el gris del programa1 siempre est� mostrando > los agregados q hace el programa2 > �La �nica forma que tengo de que ese grid vea reflejado > constantemente esos agregados, es poniendo un timer que > haga el refresh de la tabla? o de qu� otra manera puede ser? > tengo a la tabla, propiedad updateMode = umUpdateChanged > > Lo mismo me pasa en otro grid q est� en ese form... > > Ahora he probado ejecutando los 2 programas en la misma > m�quina y el grid no se me actualiza si no salgo del > programa1 y vuelvo a entrar. > > (uso componentes zeos 7, y Lazarus 0.9.31 r30432 FPC > 2.5.1 i386-win32-win32/win64... si, se que est� > desactualizado pero no he podido hacerlo) > Hola Paola: �Hay un tbl.Post? �Lo has probado? Rub�n. _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org <mailto:Lazarus-es en lists.lazarus.freepascal.org> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120927/ae8239db/attachment.html>

Reply by email

Ismael L. Donis Garcia
to Paola Bruccoleri: Hola todos.. muchas gracias por las sugerencias. Antes de probar con un timer, comenc�…

Paola ya hace rato que no toco Lazarus, pero me parece que te est� faltando el Post el cual va dentro de una transacci�n, algo como lo que sigue:

startransaction
post � execsql
commict
endtransaction

Saludos
=========
|| ISMAEL ||
=========

Earlier message 100 lines
----- Original Message ----- From: Paola Bruccoleri To: Spanish version of Lazarus List Sent: Thursday, September 27, 2012 9:35 AM Subject: Re: [Lazarus-es] actualizar grid autom�ticamente Hola todos.. muchas gracias por las sugerencias. Antes de probar con un timer, comenc� a estudiar esto de los eventos. Es muy sencillo y claro el concepto. Aparentemente me funciona porque en el ZIBEventAlerter1EventAlert, donde hago los refresh coloqu� un showmessage a ver si se disparaba. Y lo hace tanto si agrego registros desde programa1 (donde est�n los grids) como de programa2.. PERO... los refresh no refrescan nada si agrego registros desde el programa2, por m�s que el evento se dispar�. (Aclaro q el componente ZIBEventAlerter lo coloqu� en el form del programa1 donde est�n los grids) ya prob� hacer: tbl.refresh dbgrid.refresh y tambi�n: tbl.close; tbl.open; dbgrid.refresh (el dbgrid q muestra esa tabla) (tambi�n tengo una consulta q debo actualizar, q no la puse all� para simplificar, y es la misma cosa) y nada! solo aparece el cambio si cierro el programa y lo vuelvo a abrir.... El 27/09/2012 08:53 a.m., Gast�n Dall' Oglio escribi�: Hola. Claro, lo mejor son eventos. Pocos motores de bases de datos tienen este concepto de eventos, que es una notificaci�n enviada desde el servidor al cliente. Por ejemplo, pod�s disparar un evento en un trigger de una tabla que te interesa notificar los cambios a los clientes conectados a la base de datos. El trigger puede ser polivalente (se dispara ante mas de un tipo de evento), con lo cual te ahorras escribir varios trigger para la misma funcionalidad. Es mejor darle al al trigger una position alta as� se dispara �ltimo, si hay otros trigger sobre la misma tabla. Ejemplo: CREATE TRIGGER MITABLA_CAMBIO FOR MITABLA ACTIVE AFTER INSERT OR UPDATE OR DELETE POSITION 10 AS BEGIN POST_EVENT 'mitabla_cambio'; END Para testear, en Flame Robin fijate que si abr�s el men� contextual de una base de datos, en Advanced -> Monitor Events, podes agregar un evento y monitorearlo. Saludos. El 26 de septiembre de 2012 23:36, Oscar Benitez Carrillo <obc5005 en yahoo.com.mx> escribi�: Hola Paola, por qu� no pruebas con el uso de eventos en firebird, alguna vez hice algo parecido y utiliz� los eventos de firebird, la verdad no utilizo zeos pero he visto que traen el componente TZIBEventAlerter y TZpgEventAlerter que capturan los eventos de la base de datos, para el uso de eventos puedes ver aqui: http://www.intitec.com/varios/Firebird_uso_de_eventos.pdf http://www.firebird.com.mx/modules/AMS/article.php?storyid=35 Espero te sirva, saludos. Oscar Benitez El 26/09/2012 02:33 p.m., Paola Bruccoleri escribi�: Hola todos.. tengo una aplicaci�n (programa1) siempre abierta, donde en un form hay un grid con datos de una tabla de firebird (es una tabla q se maneiene con muy pocos registros x eso no us� una consulta) A su vez hay otro programa (programa2) que carga items en esa misma tabla. Necesito que el gris del programa1 siempre est� mostrando los agregados q hace el programa2 �La �nica forma que tengo de que ese grid vea reflejado constantemente esos agregados, es poniendo un timer que haga el refresh de la tabla? o de qu� otra manera puede ser? tengo a la tabla, propiedad updateMode = umUpdateChanged Lo mismo me pasa en otro grid q est� en ese form... Ahora he probado ejecutando los 2 programas en la misma m�quina y el grid no se me actualiza si no salgo del programa1 y vuelvo a entrar. (uso componentes zeos 7, y Lazarus 0.9.31 r30432 FPC 2.5.1 i386-win32-win32/win64... si, se que est� desactualizado pero no he podido hacerlo) ------------------------------------------------------------------------------

Reply by email

Paola Bruccoleri
to Oscar Benitez Carrillo: Paola, el componente ZConnection tiene una propiedad TransacIsolation, �Ya probaste…

El 27/09/2012 11:36 a.m., Oscar Benitez Carrillo escribi�:

Show quoted text 8 lines
Paola, el componente ZConnection tiene una propiedad TransacIsolation, �Ya probaste ponerla en ReadCommited? aunque yo he utilizado otros componentes, en el componente Transaction he tenido que poner en opciones->ReadCommited=True para lograr lo que tu quieres. Saludos Oscar Benitez

Hola Oscar!
genio... funcion�!!!
lo ten�a con el valor tiNone. Lo cambi� x el que me comentas, tiReadCommited y ahora si se ve reflejado el insert. (solo hago el refresh, no cierro y abro las tablas)
Este cambio tendr� repercusiones negativas en otras partes del sistema? byeeeeeeeeeee

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120927/1b7a5621/attachment.html>

Reply by email

Gastón Dall' Oglio
to Paola Bruccoleri
Este cambio tendr� repercusiones negativas en otras partes del sistema?

No creo, eso lo que hace es que cada vez que alguien confirma una transacci�n, tu transaction "ve" esos datos. Es el modo normal en que uno quiere acceder a los datos en una base de datos transaccional :)

En Flame Robin (si lo usas), en una ventana de consultas sql fijate que en el menu Statement -> Transaction settings, podes el elegir "Read committed isolation mode" para lograr lo mismo.

Saludos.

El 27 de septiembre de 2012 11:47, Paola Bruccoleri < pbruccoleri en adinet.com.uy> escribi�:

Show quoted text 25 lines
El 27/09/2012 11:36 a.m., Oscar Benitez Carrillo escribi�: Paola, el componente ZConnection tiene una propiedad TransacIsolation, �Ya probaste ponerla en ReadCommited? aunque yo he utilizado otros componentes, en el componente Transaction he tenido que poner en opciones->ReadCommited=True para lograr lo que tu quieres. Saludos Oscar Benitez Hola Oscar! genio... funcion�!!! lo ten�a con el valor tiNone. Lo cambi� x el que me comentas, tiReadCommited y ahora si se ve reflejado el insert. (solo hago el refresh, no cierro y abro las tablas) Este cambio tendr� repercusiones negativas en otras partes del sistema? byeeeeeeeeeee _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120927/bb4a7ab9/attachment-0001.html>

Reply by email

Paola Bruccoleri
to Gastón Dall' Oglio

El 27/09/2012 11:54 a.m., Gast�n Dall' Oglio escribi�:

Show quoted text 11 lines
> Este cambio tendr� repercusiones negativas en otras partes del sistema? No creo, eso lo que hace es que cada vez que alguien confirma una transacci�n, tu transaction "ve" esos datos. Es el modo normal en que uno quiere acceder a los datos en una base de datos transaccional :) En Flame Robin (si lo usas), en una ventana de consultas sql fijate que en el menu Statement -> Transaction settings, podes el elegir "Read committed isolation mode" para lograr lo mismo.

Hola Gast�n.. no uso FlameRobin; uso siempre IBExpert free.. ver� donde est� esa opci�n all�, si es que lo est�!
muchas gracias!

Reply by email

Paola Bruccoleri
to Ismael L. Donis Garcia: Paola ya hace rato que no toco Lazarus, pero me parece que te est� faltando el Post el…

El 27/09/2012 11:38 a.m., Ismael L. Donis Garcia escribi�:

Show quoted text 8 lines
Paola ya hace rato que no toco Lazarus, pero me parece que te est� faltando el Post el cual va dentro de una transacci�n, algo como lo que sigue: startransaction post � execsql commict endtransaction

Hola Ismael, tanto tiempo!
si, el commit de las transacciones estaba; solo cambi� el IsolationLevel en la conexi�n como me sugiri� Oscar.
chauuuuuuu

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120927/b93a9ec2/attachment.html>

Reply by email

Ismael L. Donis Garcia
to Rubén Ibáñez: El 27 de septiembre de 2012 09:35, Paola Bruccoleri < pbruccoleri en adinet.com.uy>…

Pues ten�a raz�n yo. Te faltaba el commict

Cuando comienzas un transacci�n si no realizas el commict no te salva los datos en la BD, por eso lo hac�a al cerrar el programa y volverlo a abrir ya que cuando cierras el programa el hace un commict de todas las transacciones abiertas. (esto es SQL, no tiene nada que ver con Lazarus, tu hubiese pasado con cualquier lenguaje que uses)

Saludos Reiterados
=========
|| ISMAEL ||
=========

Earlier message 26 lines
----- Original Message ----- From: Paola Bruccoleri To: Spanish version of Lazarus List Sent: Thursday, September 27, 2012 10:47 AM Subject: Re: [Lazarus-es] actualizar grid autom�ticamente El 27/09/2012 11:36 a.m., Oscar Benitez Carrillo escribi�: Paola, el componente ZConnection tiene una propiedad TransacIsolation, �Ya probaste ponerla en ReadCommited? aunque yo he utilizado otros componentes, en el componente Transaction he tenido que poner en opciones->ReadCommited=True para lograr lo que tu quieres. Saludos Oscar Benitez Hola Oscar! genio... funcion�!!! lo ten�a con el valor tiNone. Lo cambi� x el que me comentas, tiReadCommited y ahora si se ve reflejado el insert. (solo hago el refresh, no cierro y abro las tablas) Este cambio tendr� repercusiones negativas en otras partes del sistema? byeeeeeeeeeee ------------------------------------------------------------------------------

Reply by email

Gastón Dall' Oglio
to Ismael L. Donis Garcia

Hola Ismael.

Lo que voy a decir no es para contradecirte, sino para ampliar la info por si a alguien le sucede y no pierda tiempo como lo perd� yo hace unos meses.

Digamos que hay dos aplicaciones, una que hace cambios y otra que los visualiza.

Puede pasar como vos dec�s que haga falta hacer el commit, y al cerrar la aplicaci�n que realiza los cambios (y por ende la transacci�n) lo se haga autom�ticamente. Es decir que ac� se "ven" los cambios desde otras transacciones al cerrar la aplicaci�n que realiza las modificaciones.

Pero en mi caso ten�a el mismo problema que Paola que me faltaba cambiar el modo de la transacci�n, por lo tanto lo que suced�a cuando abr�a y cerraba la aplicaci�n que visualiza era que se abr�a una nueva transacci�n y por eso ahora s� ve�a los datos modificados en otra transacci�n (la de la otra aplicaci�n que realiza las modificaciones). Para estos es que hay que poner ReadCommited en las transacciones que quieren ver los datos de otras transacciones ni bien estas otras confirmen sus cambios, de otra manera hay que abrir y cerrar la transacci�n en la aplicaci�n que visualiza.

Bueno, espero que se entienda. Esto de tener varios modos de transacciones parece un l�o, pero es muy �til tener varios modos porque a veces se soluciona muchas situaciones particulares cambian el modo de aislamiento a la transacci�n, por ejemplo, ignorando los commit y pudiendo leer los cambios de otras transacciones antes que se haga un commit (acceder a una venta abierta desde varias pcs antes que se confirme).

Saludos.

El 27 de septiembre de 2012 12:20, Ismael L. Donis Garcia < ismael en citricos.co.cu> escribi�:

Show quoted text 51 lines
Pues ten�a raz�n yo. Te faltaba el commict Cuando comienzas un transacci�n si no realizas el commict no te salva los datos en la BD, por eso lo hac�a al cerrar el programa y volverlo a abrir ya que cuando cierras el programa el hace un commict de todas las transacciones abiertas. (esto es SQL, no tiene nada que ver con Lazarus, tu hubiese pasado con cualquier lenguaje que uses) Saludos Reiterados ========= || ISMAEL || ========= ----- Original Message ----- *From:* Paola Bruccoleri <pbruccoleri en adinet.com.uy> *To:* Spanish version of Lazarus List<lazarus-es en lists.lazarus.freepascal.org> *Sent:* Thursday, September 27, 2012 10:47 AM *Subject:* Re: [Lazarus-es] actualizar grid autom�ticamente El 27/09/2012 11:36 a.m., Oscar Benitez Carrillo escribi�: Paola, el componente ZConnection tiene una propiedad TransacIsolation, �Ya probaste ponerla en ReadCommited? aunque yo he utilizado otros componentes, en el componente Transaction he tenido que poner en opciones->ReadCommited=True para lograr lo que tu quieres. Saludos Oscar Benitez Hola Oscar! genio... funcion�!!! lo ten�a con el valor tiNone. Lo cambi� x el que me comentas, tiReadCommited y ahora si se ve reflejado el insert. (solo hago el refresh, no cierro y abro las tablas) Este cambio tendr� repercusiones negativas en otras partes del sistema? byeeeeeeeeeee ------------------------------ _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120928/ec27a70a/attachment.html>

Reply by email

Ismael L. Donis Garcia
to Rubén Ibáñez: El 27 de septiembre de 2012 09:35, Paola Bruccoleri < pbruccoleri en adinet.com.uy>…

No, no me contradices en nada. Es lo mismo que yo dije. Lo que pasa es el modo en que est� desarrollado el componente, lo cual tiene a confundir un poco.

Para cualquier gestor de BD. Para que puedas ver los datos actualizados en una X transacci�n tienes que:

- Comenzar la transacci�n.
- Actualizar los datos, �sea en este caso post o execsql
- Confirmar la actualizaci�n, �sea realizar un commict
- Cerrar la transacci�n

Saludos Reiterados
=========
|| ISMAEL ||
=========
PD: Si algo yo no conozco es de Lazarus, por el contrario si en algo me es especializado es en RDBMS.

Earlier message 68 lines
----- Original Message ----- From: Gast�n Dall' Oglio To: Spanish version of Lazarus List Sent: Friday, September 28, 2012 10:05 AM Subject: Re: [Lazarus-es] actualizar grid autom�ticamente Hola Ismael. Lo que voy a decir no es para contradecirte, sino para ampliar la info por si a alguien le sucede y no pierda tiempo como lo perd� yo hace unos meses. Digamos que hay dos aplicaciones, una que hace cambios y otra que los visualiza. Puede pasar como vos dec�s que haga falta hacer el commit, y al cerrar la aplicaci�n que realiza los cambios (y por ende la transacci�n) lo se haga autom�ticamente. Es decir que ac� se "ven" los cambios desde otras transacciones al cerrar la aplicaci�n que realiza las modificaciones. Pero en mi caso ten�a el mismo problema que Paola que me faltaba cambiar el modo de la transacci�n, por lo tanto lo que suced�a cuando abr�a y cerraba la aplicaci�n que visualiza era que se abr�a una nueva transacci�n y por eso ahora s� ve�a los datos modificados en otra transacci�n (la de la otra aplicaci�n que realiza las modificaciones). Para estos es que hay que poner ReadCommited en las transacciones que quieren ver los datos de otras transacciones ni bien estas otras confirmen sus cambios, de otra manera hay que abrir y cerrar la transacci�n en la aplicaci�n que visualiza. Bueno, espero que se entienda. Esto de tener varios modos de transacciones parece un l�o, pero es muy �til tener varios modos porque a veces se soluciona muchas situaciones particulares cambian el modo de aislamiento a la transacci�n, por ejemplo, ignorando los commit y pudiendo leer los cambios de otras transacciones antes que se haga un commit (acceder a una venta abierta desde varias pcs antes que se confirme). Saludos. El 27 de septiembre de 2012 12:20, Ismael L. Donis Garcia <ismael en citricos.co.cu> escribi�: Pues ten�a raz�n yo. Te faltaba el commict Cuando comienzas un transacci�n si no realizas el commict no te salva los datos en la BD, por eso lo hac�a al cerrar el programa y volverlo a abrir ya que cuando cierras el programa el hace un commict de todas las transacciones abiertas. (esto es SQL, no tiene nada que ver con Lazarus, tu hubiese pasado con cualquier lenguaje que uses) Saludos Reiterados ========= || ISMAEL || ========= ----- Original Message ----- From: Paola Bruccoleri To: Spanish version of Lazarus List Sent: Thursday, September 27, 2012 10:47 AM Subject: Re: [Lazarus-es] actualizar grid autom�ticamente El 27/09/2012 11:36 a.m., Oscar Benitez Carrillo escribi�: Paola, el componente ZConnection tiene una propiedad TransacIsolation, �Ya probaste ponerla en ReadCommited? aunque yo he utilizado otros componentes, en el componente Transaction he tenido que poner en opciones->ReadCommited=True para lograr lo que tu quieres. Saludos Oscar Benitez Hola Oscar! genio... funcion�!!! lo ten�a con el valor tiNone. Lo cambi� x el que me comentas, tiReadCommited y ahora si se ve reflejado el insert. (solo hago el refresh, no cierro y abro las tablas) Este cambio tendr� repercusiones negativas en otras partes del sistema? byeeeeeeeeeee --------------------------------------------------------------------------

Reply by email

Gastón Dall' Oglio
to Ismael L. Donis Garcia

El 28 de septiembre de 2012 12:11, Ismael L. Donis Garcia < ismael en citricos.co.cu> escribi�:

Show quoted text 13 lines
No, no me contradices en nada. Es lo mismo que yo dije. Lo que pasa es el modo en que est� desarrollado el componente, lo cual tiene a confundir un poco. Para cualquier gestor de BD. Para que puedas ver los datos actualizados en una X transacci�n tienes que: - Comenzar la transacci�n. - Actualizar los datos, �sea en este caso post o execsql - Confirmar la actualizaci�n, �sea realizar un commict - Cerrar la transacci�n

Claro en este sentido yo no agregu� nada, ya lo hab�as dicho todo vos.

Lo que yo trat� de describir es otro caso, que es el que tuvo Paola (y muchos hemos tenido), donde "el problema" de no ver las modificaciones en los datos radica en que el programa1 (ve su descripci�n en el primer mail) utiliza un modo transaccional incorrecto, por lo que nunca ver� los cambios hechos por otras transacciones hasta tanto no abra y cierre la transacci�n. Creo que por defecto los componentes utilizan alg�n otro modo para las transacciones, como concurrency o consistency no lo se exactamente (los cuales s� son apropiados para otros usos), por lo cual nunca veras los cambios hechos posteriormente a cuando abriste la transacci�n. Esto se puede lograr usando el modo ReadCommited, que muestra los cambios hechos en otras transacciones ni bien son confirmados.

Saludos Reiterados

Saludos.

Show quoted text 6 lines
========= || ISMAEL || ========= PD: Si algo yo no conozco es de Lazarus, por el contrario si en algo me es especializado es en RDBMS.

;)

Show quoted text 104 lines
----- Original Message ----- *From:* Gast�n Dall' Oglio <gaston.dalloglio en gmail.com> *To:* Spanish version of Lazarus List<lazarus-es en lists.lazarus.freepascal.org> *Sent:* Friday, September 28, 2012 10:05 AM *Subject:* Re: [Lazarus-es] actualizar grid autom�ticamente Hola Ismael. Lo que voy a decir no es para contradecirte, sino para ampliar la info por si a alguien le sucede y no pierda tiempo como lo perd� yo hace unos meses. Digamos que hay dos aplicaciones, una que hace cambios y otra que los visualiza. Puede pasar como vos dec�s que haga falta hacer el commit, y al cerrar la aplicaci�n que realiza los cambios (y por ende la transacci�n) lo se haga autom�ticamente. Es decir que ac� se "ven" los cambios desde otras transacciones al cerrar la aplicaci�n que realiza las modificaciones. Pero en mi caso ten�a el mismo problema que Paola que me faltaba cambiar el modo de la transacci�n, por lo tanto lo que suced�a cuando abr�a y cerraba la aplicaci�n que visualiza era que se abr�a una nueva transacci�n y por eso ahora s� ve�a los datos modificados en otra transacci�n (la de la otra aplicaci�n que realiza las modificaciones). Para estos es que hay que poner ReadCommited en las transacciones que quieren ver los datos de otras transacciones ni bien estas otras confirmen sus cambios, de otra manera hay que abrir y cerrar la transacci�n en la aplicaci�n que visualiza. Bueno, espero que se entienda. Esto de tener varios modos de transacciones parece un l�o, pero es muy �til tener varios modos porque a veces se soluciona muchas situaciones particulares cambian el modo de aislamiento a la transacci�n, por ejemplo, ignorando los commit y pudiendo leer los cambios de otras transacciones antes que se haga un commit (acceder a una venta abierta desde varias pcs antes que se confirme). Saludos. El 27 de septiembre de 2012 12:20, Ismael L. Donis Garcia < ismael en citricos.co.cu> escribi�: > Pues ten�a raz�n yo. Te faltaba el commict > > Cuando comienzas un transacci�n si no realizas el commict no te salva los > datos en la BD, por eso lo hac�a al cerrar el programa y volverlo a abrir > ya que cuando cierras el programa el hace un commict de todas las > transacciones abiertas. (esto es SQL, no tiene nada que ver con Lazarus, tu > hubiese pasado con cualquier lenguaje que uses) > > Saludos Reiterados > ========= > || ISMAEL || > ========= > > > ----- Original Message ----- > *From:* Paola Bruccoleri <pbruccoleri en adinet.com.uy> > *To:* Spanish version of Lazarus List<lazarus-es en lists.lazarus.freepascal.org> > *Sent:* Thursday, September 27, 2012 10:47 AM > *Subject:* Re: [Lazarus-es] actualizar grid autom�ticamente > > El 27/09/2012 11:36 a.m., Oscar Benitez Carrillo escribi�: > > Paola, el componente ZConnection tiene una propiedad TransacIsolation, > �Ya probaste ponerla en ReadCommited? aunque yo he utilizado otros > componentes, en el componente Transaction he tenido que poner en > opciones->ReadCommited=True para lograr lo que tu quieres. > > Saludos > Oscar Benitez > > Hola Oscar! > genio... funcion�!!! > lo ten�a con el valor tiNone. Lo cambi� x el que me comentas, > tiReadCommited y ahora si se ve reflejado el insert. (solo hago el refresh, > no cierro y abro las tablas) > Este cambio tendr� repercusiones negativas en otras partes del sistema? > byeeeeeeeeeee > > ------------------------------ > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es > > ------------------------------ _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20120928/9cdfefb9/attachment.html>

Reply by email