FTP | CCD | Buscar | Trucos | Trabajo | Foros |
#1
|
|||
|
|||
Tabla y DataSnap
Buenas a todos.
Tengo una aplicación cliente - servidor (datasnap) con delphi xe Seatle y en la parte del cliente genero una tabla en memoria tipo TFDMemTable donde voy guardando unos registros y cuando tengo la tabla terminada con los datos que me interesa, me gustaria enviar la tabla completa al servidor para tratar esos datos. No me gustaria tener que enviar registro a registro al servidor, puesto que eso me provocaría otros problemas con otros usuarios. La idea es que cuando el usuario termine de trabajar, esa tabla pase al servidor para ser tratada. Espero haberme explicado. Gracias a todos. |
#2
|
||||
|
||||
Los TFDMemTable al igual que los TClienDataset tienen métodos para grabar y recuperar el contenido en un TStream (LoadFromStream y SaveToStream).
Una opción sería enviar la tabla copmo stream al servidor y allí volver a volcarla sobre unn TFDMemTable. La única pega puede estar en que la tabla sea grande. Tendrías que hacer pruebas de tamaño para ver la velocidad y posibles problemas.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
|||
|
|||
Otra opción es lo que se propone en este post de Marco Cantu : Delphi XE5 Update 2 has FireDACJSONReflect for DataSnap , que te permite pasar uno o varios datasets entre el cliente y el servidor.
|
#4
|
||||
|
||||
Cita:
Pues así, revisandola por encima, esta tiene mejor pinta...
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#5
|
|||
|
|||
Perdonad mi torpeza, pero no lo consigo, tengo el siguiente codigo:
Me da error, no logro enviar una MemTable a través de la funcion para que llegue al servidor. Gracias a todos |
#6
|
||||
|
||||
Cita:
Si nos dices el error que te da, ayudará a saber qué puede estar pasando.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#7
|
|||
|
|||
Cita:
Perdón. El error que me dá es el siguiente: Project Cliente.exe raised eceptin class EFDEXception with message '[FireDac][Stan]-716. Unkkown storage format [BIN]. HInt: To register it, you can drop component [TFDSanStorageXxxLink] into your proyect'. Saludos. |
#8
|
|||
|
|||
En el hint que te muestran te están diciendo lo que tienes que hacer, pon en tu formulario el componente TFDStanStorageBinLink, que servirá para añadir el código necesario para guardar los datasets como streams. Yo también en Seattle y Datasnap tuve problema a la hora de enviar streams, en unos casos me funcionó (además los comprimía), pero en otros me daba error y creo que está relacionado con el encoding (en una lista reciente de bugs solventados en Rio, ponían uno que creo tiene relación con el error que tenía yo). En relación a lo que te proponía en mi mensaje, mira este ejemplo que creo que es justo lo que estás intentando: FireDACJSONReflect_REST_Server_Client_Sample
|
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
DataSnap | TomasChavezJ | Desarrollo en Delphi para Android | 4 | 29-01-2015 17:38:50 |
Campo Lookup en Tabla anidada Datasnap | MarcoCarlo | Providers | 0 | 26-09-2013 22:35:29 |
DataSnap y XML | rchavezh | Providers | 5 | 12-07-2013 22:23:15 |
datasnap | jgutti | Varios | 1 | 23-12-2011 14:25:20 |
Midas y DataSnap | Toni | Providers | 1 | 09-07-2003 18:30:47 |
|