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 Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-06-2003
AbcXxx AbcXxx is offline
Miembro
 
Registrado: jun 2003
Posts: 50
Poder: 21
AbcXxx Va por buen camino
Refresh contra close-open

me preocupa el trafico en red y mi pregunta es esta

que es lo que pasa cuando yo le doy refresh a una tabla en ib o fb?

es lo mismo que cerrarla y abrirla, o sea que me vuelve a traer todos los datos de la tabla o solo los que se han modificado y aceptado con commit (mi transaccion es readcommit)?

esto porque estoy haciendo un sistema (punto de venta) en el que los clientes(6) de cada sucursal deben de mostrar la lista de todas las ventas del dia en cuestion y esta lista esta en pantalla constantemente y se debe actualizar cada vez que se realiza una venta en cualquier cliente, alguna idea de como podria informar a los demas clientes que actualizen su vista?

de antemano graciasx1000
Responder Con Cita
  #2  
Antiguo 18-06-2003
Emiro Emiro is offline
Registrado
 
Registrado: jun 2003
Posts: 9
Poder: 0
Emiro Va por buen camino
tu debes utilizar el refresh cuando desees actualizar un solo registro, como por ejemplo
cuando tengas abierto un dataset, y esta este parada en un registro que sea un total especifico,
al momento de volver hacer el calculo que produce ese total, no es necesario volver a abrir y cerrar
ese dataset sino simplemente le das un refresh, es como si abrieras y cerrarlas el dataset pero surgue
efecto en el registro que este parado en ese momento.
En cuanto a la prenguta que tu tienes que debes actualizar constantemente la pantalla de ventas
del dia , tu debes buscar informaicion hacerca de como crear eventos en los trigger para cuando
ingreses una nueva venta este envie la informacion a un componente que se llama FIBEventer que te mantiene
al tanto de cualquier evento que suceda y alli tu podras abrir y cerrar tu dataset en cada cliente.
Espero me supe explicar.
Responder Con Cita
  #3  
Antiguo 18-06-2003
pedrohdez pedrohdez is offline
Miembro
 
Registrado: may 2003
Ubicación: Murcia
Posts: 54
Poder: 22
pedrohdez Va por buen camino
Hola

Como te comenta Emiro, refresh solo relee el registro seleccionado en ese momento, y algo mas, solo puedes releer lo que ya esta leido, es decir registros grabados por otros procesos despues de tu "open" no los puedes refrescar, por que no los tienes.
Si quieres minimizar el trafico, podrias hacerlo a "pedales" guardando en memoria la lista de las ventas del dia y leyendo unicamente los registros a partir del ultimo en memoria, solo te faltaria buscar un metodo para controlar las modificaciones, por ejemplo, almacenando un campo datetime con la ultima fecha y hora de moficiación y leyendo unicamente a partir de la ultima hora que tengas en memoria.
Suerte y al toro!
Responder Con Cita
  #4  
Antiguo 18-06-2003
AbcXxx AbcXxx is offline
Miembro
 
Registrado: jun 2003
Posts: 50
Poder: 21
AbcXxx Va por buen camino
Gracias a ambos por sus respuestas, creo que estaba equivocado con el concepto de refresh, ahora esta claro...

con respecto al metodo a usar para tener a la vista todas las ventas del dia creo que el mas facil es el que propone Emiro, pero creo que el mas eficiente (por el trafico), es el de pedrohdez, como sea intentare los dos y les comento los resultados; aunque creo que una combinacion de ambos no estaria mal...

Saludos y gracias de nuevo
Responder Con Cita
Respuesta



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 20:12:44.


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