FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
juank1971 pudiste resolverlo?
Porque estoy investigando con DataSnap y me encuentro en el mismo dilema. Para acceder a una tabla puntual no tengo problemas, ahora, para poder hacer queries con libertad no se como hacerlo. Gracias! |
#2
|
|||
|
|||
si
Amigo esa pregunta la hice en el 2011 ya casi ni me acuerdo de eso, pero si, con datasnap se puede hacer todo perfecto del lado del servidor, incluso conectarte a varios tipos de bases de datos, y hacer cualquier consulta, digamos puedes consultar dbf y tambien sql server o my sql todo mesclado.
haces un servidor , a ese servidor conectas la base de datos que quieras y accedes luego del cliente con todo el acceso a esos datos trasparente para el cliente. Por ejemplo ahora mismo estoy mirando lo que logre en aquel tiempo y funciona perfecto. creas un servidor datasnap con el asistente delphi para eso, busca en la ayuda si no sabes. luego en el ServerMethodsUnit1 te conectas de la forma tradicional a cualquier base de datos, en mi caso teno un ttable sencillo conectado a tablas DBF, y ahora lo mas importante, le pones a esa tabla un TdataSetProvider y lo enlazas. ya solo eso, así tengo puestos 5 ttables enganchados a 5 tablas diferentes dbf con sus respectivos TdataSetProvider . Tambien teno un TadoQuery y en la propiedad conecctionstring me estoy conectandpo a un servidor sqlserver y su respectivo TdataSetProvider tambien. O sea puedes hacer en ese lugar cualquier coneccion, si quieres pues poner mejor todo con dbxpress que funciona mejor y como debe ser es un Tsqlconnection para la conexion, y varios tsqlquery con varios TdataSetProviders, lo que yo no podia aserlo con tsqlconnection porque eran a dbf y no hay drivers dbexpress para ese tipo de bases de datos. Entonces en el cliente el solo con el wizar de delphi debe crearte un TSQLConnection y en driver dbexpress en la unit ClientModuleUnit1 y ademas debe crearte tambien un TDSProviderConnection, ya con eso se conecta a tu servidor, luego basta agregarle en ese mismo ClientModuleUnit1 uno o varios TclientDataset y en la propiedad Provider name lo enlazas con el respetivo DatasetProvider que pusiste en el servidor. Eso funciona perfecto, de hecho a mi criterio es lo que mejor funciona accediendo a cualquier base de datos multiusuario en delphi. Datasnap con dbexpress y Tcliendataset. Finalmente solo tienes que enlazar como siempre esos TclienDataset con datasorce y mostrar los resoltados en un grid, la forma de ejecutar quierys es poniendo la consulta en la propiedad commandtext del tcliendataset, y le das open . Me tiras si no encuentras algo, normalmente lo que mas trabajo pasas es en lograr ver los provider del servidor, puesto que para que se vean en el cliente debes copiar la clase que los exporta del servidor y escribirla manualmente en el DSProviderConnection1 en la propiedad ServerClassName, cosa la cual la veo muy mal de delphi eso debiera mostralo solo sin necesidad de escribirla manualmente. Avisame si me entiendes que yo me pierdo mucho en explicaciones. |
#3
|
|||
|
|||
Tquery
Disculpa es mas general todavía, no tengo puestos Ttable Solo Tquery, o sea en el lado del servidor Solo teo TQuery y TadoQuery. y sin embargo actualiza las tablas y hace post perfeco del lado del cliente, y consultas entre varias tablas.
|
#4
|
|||
|
|||
Buenos días. Revivo este hilo porque creo que es lo que ando necesitando.
Estoy renegando demasiado con Datasnap, para una aplicación que funcionará sobre android. Este hilo y algunos videos en youtube.com me han ayudado bastante. He podido crear mi servidor y enviar mensajes entre este ultimo y el cliente. Aunque igualmente aún hay algo que no estoy haciendo bien, no logro conectar los ClienDataSet con mis tablas en la BD. Debo confesar que siempre utilicé los IBTable, por lo que es mi primer experiencia con los primeros. Pero no logro, desde el cliente, enviar una consulta, traerme del servidor un conjunto de registros, y mostrarlos en una lista o grilla. Habrá algún ejemplo referido a esto?. Supuestamente del lado del servidor hay un módulo donde se publican los métodos para poder accesarlos desde el cliente, pero como devuelvo el resultado de un query? o una IBTable filtrada? Espero me puedan ayudar. Muchas gracias. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
DataSnap con delphi 2007 win 32 | Paulao | Varios | 0 | 29-03-2008 21:40:37 |
Turotial datasnap | Osorio | Providers | 2 | 20-09-2006 13:36:10 |
DataSnap residente en el servidor !!! | Velia | Providers | 0 | 18-05-2006 15:06:25 |
capturar errores con datasnap | Toni | Conexión con bases de datos | 1 | 30-06-2005 21:38:58 |
Midas y DataSnap | Toni | Providers | 1 | 09-07-2003 18:30:47 |
|