In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

TSqlQuery:RefreshCurrent

Foro de Xailer profesional en español
Responder
miguel
Mensajes: 364
Registrado: Jue Jul 02, 2009 1:09 pm

TSqlQuery:RefreshCurrent

Mensaje por miguel »

Hola:
Tengo la impresión que este método hace lo mismo que :Refresh().
En un TSqlQuery cuyo cSelect nos trae un cantidad de registros
importante (3000 o 4000) le cuesta mas o menos el mismo tiempo a los dos
métodos, es por esto por lo que tengo la sospecha.
¿Lo podéis comprobar?. Gracias.
Saludos. Miguel A. Torrellas
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

TSqlQuery:RefreshCurrent

Mensaje por jfgimenez »

Miguel,
> Tengo la impresión que este método hace lo mismo que :Refresh().
>
> En un TSqlQuery cuyo cSelect nos trae un cantidad de registros importante
> (3000 o 4000) le cuesta mas o menos el mismo tiempo a los dos métodos, es
> por esto por lo que tengo la sospecha.
>
> ¿Lo podéis comprobar?. Gracias.
:Refresh() está llamando al método Requery() de ADO, mientras que
:RefreshCurrent() está llamando a Resync(). Yo no sé exactamente cual es la
diferencia entre ambos; quizás alguien que conozca ADO mejor podría
aclararlo.
--
Un saludo,
José F. Giménez
http://www.xailer.com
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
_support_
Mensajes: 146
Registrado: Lun Abr 10, 2006 1:29 pm

TSqlQuery:RefreshCurrent

Mensaje por _support_ »

Miguel,
ADO no tiene ninguna instrucción para sólo refrescar una fila de su browse.
En dicho caso se requiere simplemente un cursor dinámico.
El método genérico Refreshcurrent() del DataSource si asimilo con el método
Resync de ADO por no dejarlo virtual, pero quizas hubiese sido la mejor
opción.
Un saludo,
"Jose F. Gimenez" <jfgimenez@wanadoo.es> escribió en el mensaje
news:45780fcb$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Miguel,
>
>> Tengo la impresión que este método hace lo mismo que :Refresh().
>>
>> En un TSqlQuery cuyo cSelect nos trae un cantidad de registros importante
>> (3000 o 4000) le cuesta mas o menos el mismo tiempo a los dos métodos, es
>> por esto por lo que tengo la sospecha.
>>
>> ¿Lo podéis comprobar?. Gracias.
>
> :Refresh() está llamando al método Requery() de ADO, mientras que
> :RefreshCurrent() está llamando a Resync(). Yo no sé exactamente cual es
> la diferencia entre ambos; quizás alguien que conozca ADO mejor podría
> aclararlo.
>
> --
> Un saludo,
>
> José F. Giménez
> http://www.xailer.com
>
jose.luis
Mensajes: 1633
Registrado: Vie Oct 14, 2005 10:56 pm

TSqlQuery:RefreshCurrent

Mensaje por jose.luis »

Ignacio,
¿Como haces el resync?
Saludos,
José Luis Capel
"Ignacio Ortiz de Zúñiga" <_support_@xailer.com> escribió en el mensaje
news:45782e72$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Miguel,
>
> ADO no tiene ninguna instrucción para sólo refrescar una fila de su
> browse. En dicho caso se requiere simplemente un cursor dinámico.
>
> El método genérico Refreshcurrent() del DataSource si asimilo con el
> método Resync de ADO por no dejarlo virtual, pero quizas hubiese sido la
> mejor opción.
>
> Un saludo,
>
> "Jose F. Gimenez" <jfgimenez@wanadoo.es> escribió en el mensaje
> news:45780fcb$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>> Miguel,
>>
>>> Tengo la impresión que este método hace lo mismo que :Refresh().
>>>
>>> En un TSqlQuery cuyo cSelect nos trae un cantidad de registros
>>> importante (3000 o 4000) le cuesta mas o menos el mismo tiempo a los dos
>>> métodos, es por esto por lo que tengo la sospecha.
>>>
>>> ¿Lo podéis comprobar?. Gracias.
>>
>> :Refresh() está llamando al método Requery() de ADO, mientras que
>> :RefreshCurrent() está llamando a Resync(). Yo no sé exactamente cual es
>> la diferencia entre ambos; quizás alguien que conozca ADO mejor podría
>> aclararlo.
>>
>> --
>> Un saludo,
>>
>> José F. Giménez
>> http://www.xailer.com
>>
>
>
miguel
Mensajes: 364
Registrado: Jue Jul 02, 2009 1:09 pm

TSqlQuery:RefreshCurrent

Mensaje por miguel »

Gracias Jose
en este link http://msdn2.microsoft.com/en-gb/library/ms676570.aspx se
puede leer que segñun que parametros envias a :Resync() se oueden
ibtener dustintos resultados de refresco.
Saludos. Miguel A. Torrellas
Jose F. Gimenez escribió:
> Miguel,
>
>> Tengo la impresión que este método hace lo mismo que :Refresh().
>>
>> En un TSqlQuery cuyo cSelect nos trae un cantidad de registros importante
>> (3000 o 4000) le cuesta mas o menos el mismo tiempo a los dos métodos, es
>> por esto por lo que tengo la sospecha.
>>
>> ¿Lo podéis comprobar?. Gracias.
>
> :Refresh() está llamando al método Requery() de ADO, mientras que
> :RefreshCurrent() está llamando a Resync(). Yo no sé exactamente cual es la
> diferencia entre ambos; quizás alguien que conozca ADO mejor podrí­a
> aclararlo.
>
miguel
Mensajes: 364
Registrado: Jue Jul 02, 2009 1:09 pm

TSqlQuery:RefreshCurrent

Mensaje por miguel »

¿algún comentario?
Saludos. Miguel A. Torrellas
Miguel A. Torrellas escribió:
> Gracias Jose
> en este link http://msdn2.microsoft.com/en-gb/library/ms676570.aspx se
> puede leer que segñun que parametros envias a :Resync() se oueden
> ibtener dustintos resultados de refresco.
>
> Saludos. Miguel A. Torrellas
>
> Jose F. Gimenez escribió:
>> Miguel,
>>
>>> Tengo la impresión que este método hace lo mismo que :Refresh().
>>>
>>> En un TSqlQuery cuyo cSelect nos trae un cantidad de registros
>>> importante (3000 o 4000) le cuesta mas o menos el mismo tiempo a los
>>> dos métodos, es por esto por lo que tengo la sospecha.
>>>
>>> ¿Lo podéis comprobar?. Gracias.
>>
>> :Refresh() está llamando al método Requery() de ADO, mientras que
>> :RefreshCurrent() está llamando a Resync(). Yo no sé exactamente cual
>> es la diferencia entre ambos; quizás alguien que conozca ADO mejor
>> podrí­a aclararlo.
>>
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9440
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

TSqlQuery:RefreshCurrent

Mensaje por ignacio »

Miguel,
Ninguno. Le remito a la documentación de ADO para ver la diferencia entre
Resync (refreshcurrent) y Requery (refresh).
Saludos
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Miguel A. Torrellas" <miguel@torrellas.net> escribió en el mensaje
news:[email=457da5f5@news.xailer.com...]457da5f5@news.xailer.com...[/email]
> ¿algún comentario?
>
> Saludos. Miguel A. Torrellas
>
> Miguel A. Torrellas escribió:
>> Gracias Jose
>> en este link http://msdn2.microsoft.com/en-gb/library/ms676570.aspx se
>> puede leer que segñun que parametros envias a :Resync() se oueden ibtener
>> dustintos resultados de refresco.
>>
>> Saludos. Miguel A. Torrellas
>>
>> Jose F. Gimenez escribió:
>>> Miguel,
>>>
>>>> Tengo la impresión que este método hace lo mismo que :Refresh().
>>>>
>>>> En un TSqlQuery cuyo cSelect nos trae un cantidad de registros
>>>> importante (3000 o 4000) le cuesta mas o menos el mismo tiempo a los
>>>> dos métodos, es por esto por lo que tengo la sospecha.
>>>>
>>>> ¿Lo podéis comprobar?. Gracias.
>>>
>>> :Refresh() está llamando al método Requery() de ADO, mientras que
>>> :RefreshCurrent() está llamando a Resync(). Yo no sé exactamente cual es
>>> la diferencia entre ambos; quizás alguien que conozca ADO mejor podría
>>> aclararlo.
>>>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
miguel
Mensajes: 364
Registrado: Jue Jul 02, 2009 1:09 pm

TSqlQuery:RefreshCurrent

Mensaje por miguel »

Hola:
Te ruego me digas como puedo llamar directamente desde oTSqlquery al
método Resync().
Gracias
Ignacio Ortiz de Zúñiga escribió:
> Miguel,
>
> Ninguno. Le remito a la documentación de ADO para ver la diferencia entre
> Resync (refreshcurrent) y Requery (refresh).
>
> Saludos
>
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9440
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

TSqlQuery:RefreshCurrent

Mensaje por ignacio »

Miguel,
oDataSet:RefreshCurrent()
Saludos
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Miguel A. Torrellas" <miguel@torrellas.net> escribió en el mensaje
news:[email=457db477@news.xailer.com...]457db477@news.xailer.com...[/email]
> Hola:
>
> Te ruego me digas como puedo llamar directamente desde oTSqlquery al
> método Resync().
>
> Gracias
>
> Ignacio Ortiz de Zúñiga escribió:
>> Miguel,
>>
>> Ninguno. Le remito a la documentación de ADO para ver la diferencia entre
>> Resync (refreshcurrent) y Requery (refresh).
>>
>> Saludos
>>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
miguel
Mensajes: 364
Registrado: Jue Jul 02, 2009 1:09 pm

TSqlQuery:RefreshCurrent

Mensaje por miguel »

Ignacio,
Ya, pero mi pregunta es si puedo llamar a Resync(p1,p2) de alguna
manera, ya que según el link que puse en este hilo, este método, según
que parámetros le enví­as puedes cambiar el ámbito. Me gustarí­a, necesito
probarlo. A lo mejor RefreshCurrent( p1, p2 ) funciona, lo pruebo ahora.
Gracias por vuestra atención.
http://msdn2.microsoft.com/en-gb/library/ms676570.aspx
Ignacio Ortiz de Zúñiga escribió:
> Miguel,
>
> oDataSet:RefreshCurrent()
>
> Saludos
>
--
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9440
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

TSqlQuery:RefreshCurrent

Mensaje por ignacio »

Miguel,
Para acceder al objeto TOleAuto directamente puede utilizar la propiedad no
documentada TDataSet:oRecords:oAdo.
Le recuerdo que actualmente el soporte de ADO esta en fase beta, y es
posible que cambie algo en el futuro que pueda afectar a su código fuente.
Un saludo,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Miguel A. Torrellas" <miguel@torrellas.net> escribió en el mensaje
news:[email=457ed682@news.xailer.com...]457ed682@news.xailer.com...[/email]
> Ignacio,
>
> Ya, pero mi pregunta es si puedo llamar a Resync(p1,p2) de alguna
> manera, ya que según el link que puse en este hilo, este método, según
> que parámetros le envías puedes cambiar el ámbito. Me gustaría, necesito
> probarlo. A lo mejor RefreshCurrent( p1, p2 ) funciona, lo pruebo ahora.
>
> Gracias por vuestra atención.
>
> http://msdn2.microsoft.com/en-gb/library/ms676570.aspx
>
>
>
> Ignacio Ortiz de Zúñiga escribió:
>> Miguel,
>>
>> oDataSet:RefreshCurrent()
>>
>> Saludos
>>
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
miguel
Mensajes: 364
Registrado: Jue Jul 02, 2009 1:09 pm

TSqlQuery:RefreshCurrent

Mensaje por miguel »

Gracias por la información
Ignacio Ortiz de Zúñiga escribió:
> Miguel,
>
> Para acceder al objeto TOleAuto directamente puede utilizar la propiedad no
> documentada TDataSet:oRecords:oAdo.
>
> Le recuerdo que actualmente el soporte de ADO esta en fase beta, y es
> posible que cambie algo en el futuro que pueda afectar a su código fuente.
Lo tendré en cuenta, lo que quiero es probar el metodo Resync enviando
los parámetros que indica la documentación de ADO y comentar aqui los
resultados.
>
> Un saludo,
>
miguel
Mensajes: 364
Registrado: Jue Jul 02, 2009 1:09 pm

TSqlQuery:RefreshCurrent

Mensaje por miguel »

Hola,
Ignacio Ortiz de Zúñiga escribió:
> Miguel,
>
> Para acceder al objeto TOleAuto directamente puede utilizar la propiedad no
> documentada TDataSet:oRecords:oAdo.
TDataSet:oRecords:oAdo:Resync(1) , funciona bien, es decir solo refresca
el registro en curso, de maravilla.
Creo que se debiera incluir en Xailer que el metodo RefreshCurrent()
admitiera parámetros odataSet:refreshCurrent(p1,p2), de cualquier forma
siempre lo podré hacer yo reescribiendolo el la clase T, me imagino.
Saludos a todos.
>
> Le recuerdo que actualmente el soporte de ADO esta en fase beta, y es
> posible que cambie algo en el futuro que pueda afectar a su código fuente.
>
> Un saludo,
>
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9440
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

TSqlQuery:RefreshCurrent

Mensaje por ignacio »

Miguel,
Como realmente RefreshCurrent lo que pretende es refrescar la fila actual lo
he dejado como Ado:Resync( 1 ). Muchas gracias.
Un saludo,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Miguel A. Torrellas" <miguel@torrellas.net> escribió en el mensaje
news:458032b6$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola,
>
> Ignacio Ortiz de Zúñiga escribió:
>> Miguel,
>>
>> Para acceder al objeto TOleAuto directamente puede utilizar la propiedad
>> no documentada TDataSet:oRecords:oAdo.
>
> TDataSet:oRecords:oAdo:Resync(1) , funciona bien, es decir solo refresca
> el registro en curso, de maravilla.
>
> Creo que se debiera incluir en Xailer que el metodo RefreshCurrent()
> admitiera parámetros odataSet:refreshCurrent(p1,p2), de cualquier forma
> siempre lo podré hacer yo reescribiendolo el la clase T, me imagino.
>
> Saludos a todos.
>
>>
>> Le recuerdo que actualmente el soporte de ADO esta en fase beta, y es
>> posible que cambie algo en el futuro que pueda afectar a su código
>> fuente.
>>
>> Un saludo,
>>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
miguel
Mensajes: 364
Registrado: Jue Jul 02, 2009 1:09 pm

TSqlQuery:RefreshCurrent

Mensaje por miguel »

Gracias Ignacio.
Creo que es suficiente, puesto que de esta forma hace lo que el nombre
del método indica.
Ignacio Ortiz de Zúñiga escribió:
> Miguel,
>
> Como realmente RefreshCurrent lo que pretende es refrescar la fila actual lo
> he dejado como Ado:Resync( 1 ). Muchas gracias.
>
> Un saludo,
>
Responder