FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Conexion por defecto
Hola
Tengo una conexión usando el componente FireDac. En el ambiente de desarrollo usualmente tengo la propiedad connected = True, cuando ejecuto el programa en el equipo del cliente da error pues los datos de conexión del cliente son diferentes y el programa ejecuta la conexión antes de que pueda pasarle los datos de la conexión del cliente. Quisiera saber si existe forma de poner la propiedad connected en false antes de que el programa intente conectarse usando la configuracion por defecto y así evitar el error. Muchas gracias por sus respuestas. |
#2
|
||||
|
||||
Hola
Solo hay que poner la popiedad connected a false en tiempo de diseño y en el evento beforeconnect asignar los valores de conexion correctos por ejemplo desde un archivo ini. Espero te sea util Saludos
__________________
Caminante, son tus huellas el camino y nada más; Caminante, no hay camino, se hace camino al andar. Antonio Machado |
#3
|
|||
|
|||
Gracias por la respuesta.
Si pongo la propiedad en false en tiempo de diseño no tengo el problema, lo que sucede es que muchas veces se me olvida actualizar la propiedad y quisiera controlarlo por código para no depender de la memoria, pero todo depende de si es posible, de no poderse será cuestión de estar más pendiente. |
#4
|
|||
|
|||
El componente de conexión de Firedac tiene una propiedad llamada ConnectedStoredUsage. En el Inspector de Objetos puedes establecer el valor ConnectedStoredUsage.auDesignTime a "True" y ConnedtedStoredUsage.auRunTime a "False"; de esta forma se puede dejar el componente conectado en tiempo de diseño, pero no lo estará cuando se ejecute la aplicación.
|
#5
|
||||
|
||||
Yo nunca tuve problemas con eso. Se supone que si una conexion esta cerrada, e intentas ejecutar un query por ejemplo, la conexion se abre automaticamente. O estoy equivocado?
|
#6
|
|||
|
|||
Cita:
Tu apreciación es correcta AgustinOrtu. El problema que se quiere resolver aquí es el que ocurre cuando "accidentalmente", en tiempo de diseño, dejamos abierta la conexión a la base de datos, pues los parámetros de conexión son los de nuestro ambiente de Desarrollo (IP, Usuario, password, ect). Cuando la aplicación se ejecuta en el ambiente de producción "revienta", pues el componente de conexíón (adConnection) trata de establecer conexión tan pronto se crea el modulo de datos y antes de configurar los parámetros de conexión con los valores adecuados (posiblemente de un archivo .ini). FireDac en su componente ADConnection (o FDConnection) resuelve este problema mediante la utilización de la propiedad ConnectedStoredUsage. Por supuesto, los programadores que prefieren crear los objetos "al vuelo" y no en tiempo de diseño, no experimentan este tipo de problemas. |
#7
|
|||
|
|||
Muchas gracias por la solución, voy a probarla.
|
#8
|
||||
|
||||
Ah creo que ya se por donde van los tiros
Si abres un Query en tiempo de diseño te activa la conexion por mas que la tengas a False y luego te queda en True No usas versionado de codigo fuente? Este tipo de problemas los detectas en un santiamen |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
abrir: por defecto | Max_E. | Varios | 9 | 20-10-2008 15:55:24 |
defecto del mysql_fetch_array()??? | gabrielflowers | PHP | 3 | 23-05-2008 16:22:13 |
DateTimePicker por defecto... | eli.vidal | Varios | 1 | 21-11-2005 16:35:16 |
Ejecucion por defecto... | craven | OOP | 2 | 04-07-2003 12:10:15 |
opcion por defecto | Irina | Varios | 2 | 16-05-2003 00:13:02 |
|