Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-04-2012
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 529
Poder: 22
IVAND Va por buen camino
Database not assigned

Hola a todos
Delphi es un muy buen lenguaje de programacion llevo algunos anios con el , pero a veces deja mucho que decir , por ejemplo aplicativos que estan corriendo sin ningun problema presentan de la noche a la manana problemas tan tontos como el que indico en mi titulo , utilizo delphi6 , firebird 1.5 (dialecto 3) , IBx

El error se presenta en la siuiente forma

Tengo un datamodulo que contiene un Ibdataset , que lo llamo de la ventana A , la primer vez ejecuta sin problemas , la segunda vez me sale el error database not assignet y ni siquera se ha llamado a ningun evento , buscando la posible causa casi adivinando , logre desactivar el evento onshow la llamada al componte A y el sistema ejecuta sin problemas , el error lo puedo quitar colocando ese Ibdataset en la forma , pero se pueden ustedes imaginar el trabajo que llevara el tener que colocar y cambiar la programacion en todas las formas

he asignado manualmente el Database.name y nada el error persiste en la segunda ocacion que se ejecuta


Esperando que ustedes puedan ayudarme y que la solucion no sea un parche quedo de ustedes como siempre muy agradecido

Nota: en el foro set trata de algo como esto y meciona un amigo que usemos el evento onactivate del form para abrir el objeto pero el error persiste
__________________
IVAND
Responder Con Cita
  #2  
Antiguo 26-04-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola INVAND.

Sin saber como y cuando se le asigna el TIBDatabase al TIBDatset, es muy difícil de diagnosticar que puede estar sucediendo. Lo que es indudable que cuando ejecutas el método Open, la propiedad Database del TIBDataSet no tiene un valor asignado de áhí el error: Database not asigned. Habría que ver el código.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 26-04-2012
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 529
Poder: 22
IVAND Va por buen camino
Gracias por responder

Bueno te comento que el componente de base de datos se le asigna la ruta de la base de forma constante es decir la ruta ya esta digitada
y la asignacion al compoente se asigna de manera estatica es decir ya esta puesta en el componente

no se altera nada

solo lo abro la primera vez y la segunda ya sale el error he tratado se asignarle manualmente , pero el errro sale antes de que se ejecute cualquier cosa , seria bueno saber o ver de alguna forma que esta asiendo el delphi , si pongo las lineas de quiebre nunca llegan a ejecutarse

Es mas , les puedo indicar que el aplicativo se muere despues del mensaje , ademas si quito el componente que lo tengo en un datamodule y lo coloco en la forma que da el problema , todo se soluciona , pero ese no es lo que se debe de hacer
__________________
IVAND

Última edición por IVAND fecha: 26-04-2012 a las 18:37:43.
Responder Con Cita
  #4  
Antiguo 26-04-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola IVAND.

Es muy extraño... permitime consultarte unas dudas, ¿ El TDataModule está en autocreate o se crea y destruye luego de usarlo ? ¿ El IBDataSet se abre en el form o en el DataModule ? ¿ En que evento se abre y en cuál se cierra ?

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 26-04-2012
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 529
Poder: 22
IVAND Va por buen camino
Si es muy extranio en verdad

El TDataModule está en autocreate ? Si se crea automaticamente

¿ El IBDataSet se abre en el form o en el DataModule ? Se abre en el form , pero el Ibdataset esta en el datamodule

¿ En que evento se abre y en cuál se cierra ? en el evento onshow del formulario y se cierra en el closequery y si no lo cierras es el mismo problema

Lo mas extrano es que si quito el Ibdataset del datamodule y lo coloco en el form se arregla el problema

Hay bendito delphi que no permite ver con mas claridad este tipo de cosas
__________________
IVAND
Responder Con Cita
  #6  
Antiguo 26-04-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Lo mas extrano es que si quito el Ibdataset del datamodule y lo coloco en el form se arregla el problema
Hola IVAND.

Hacé la prueba de cambiarle el nombre al TIBDataSet, por que realmente lo único que se me ocurre es que estés abriendo otro IBDataSet con el mismo nombre que no tenga asignada la base de datos.

Es decir, siendo:
Código Delphi [-]
  DataModule2.IBDataSet1.Database:= DataModule2.IBDatabase1;

Y en la apertura del DataSet, sea donde se haga, utilices:
Código Delphi [-]
   DataModule2.IBDataSet1.Open;
No veo el modo de que recibas ese error...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #7  
Antiguo 26-04-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por IVAND Ver Mensaje
pero a veces deja mucho que decir
Ya veremos...


Cita:
Empezado por IVAND Ver Mensaje
El error se presenta en la siuiente forma

la primer vez ejecuta sin problemas , la segunda vez me sale el error database not assignet
¿La segunda vez que ejecutas el programa, o la segunda vez que abres el formulario durante la misma ejecución?

Mencionas que el DataModule está en el AutoCreate. ¿El formulario también? ¿Antes o después? La propiedad Active del IbDataSet, ¿qué valor tiene durante el diseño?


Desde luego no podemos garantizar que averigüemos la causa de tu problema, pero, ¿de verdad piensas que esto es un problema de Delphi? Un problema de este tipo, hace muchos años que habría acabado ya con el prestigio de Delphi.

// Saludos
Responder Con Cita
  #8  
Antiguo 26-04-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Me olvidé de comentar que utilizando dos forms y un DataModule, probé todas las combinaciones que se me ocurrieron con los Forms y DataModule en autocreación y con el IBDataSet abierto en diseño.

También creando todo en ejecución con el IBDataSet cerrado, abriéndolo en el evento OnShow del tercer Form inclusive dejándolo abierto desde el evento OnCreate del DataModule... creo que no dejé nada en el tintero pero no pude lograr reproducir el error. Siempre estuvo asignada la propiedad Database del TIBDataSet.

El único modo que logré que me mostrase la excepción ya sea al IBDataSet del DataModule o agregando otro IBDataSet del mismo nombre al Form y abrir este, fué no asignando valor a la propiedad Database en alguno de ellos. Es decir que probé todo lo que normalmente hago y lo que no.

Estoy convencido a ojos cerrados que no es un problema de Delphi. En aplicaciones SDI, o en MDI donde además de los DataModule de conexión, utilizo muchos TDataModule con muchos TIBDataSet en cada uno; jamás pero jamás me sucedió algo así. (aunque prácticamente casi ni utilizo el autocreate).

Hay algo que se nos escapa, por no disponer del código, que está 'vaciando' el valor de la propiedad Database del TIBDataSet (o bién se está abriendo en otra parte donde aún no le fue asignado el IBDatabase).

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 26-04-2012 a las 22:10:41.
Responder Con Cita
  #9  
Antiguo 26-04-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.107
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por ecfisa Ver Mensaje
Estoy convencido a ojos cerrados que no es un problema de Delphi.
Eso es seguro al 99,999999999999999999999999999999%

Algunas veces nos encontramos con errores/problemas que nos parece imposible que sea un error nuestro, pero en el 99,999999999999999999999999999999% de los casos sí que es error nuestro
Responder Con Cita
  #10  
Antiguo 27-04-2012
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Angry

Esto se resuelve muy fácil chicos, se le da un más que merecido tiron de orejas a IVAND.
A ver IVAND queridito, si estás tan convencido que es un problema, y "¡huuu.. de gravísimo que me hace imposible la vida!" y que Delphi es la peor porquería ¿Porqué no pones a disposición de la comunidad tu código? No... mejor aún, ve a los foros de Embarcadero y reporta el fallo, y dales tu código a ellos para que reproduzcan el error.

En vez de ser esquivo y de continuar diciendo las pocas palabras repetidas, entonces poné más de tu parte en explicarte. No tenemos una bola de cristal, resulta ser que nuestro proveedor nos falló; y la empresa MIRACLES INC. no hace envíos fuera de mundo mágico donde viven los Padrinos Mágicos. Ya le pedí a Timmy que por favor le diga a sus padrinos que desee que tengamos superpoderes adivinatorios, pero me dijo que es mejor pedir que se te de el poder del habla, el razonamiento y de la escritura para que te expliques.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #11  
Antiguo 27-04-2012
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Eso es seguro al 99,999999999999999999999999999999%

Algunas veces nos encontramos con errores/problemas que nos parece imposible que sea un error nuestro, pero en el 99,999999999999999999999999999999% de los casos sí que es error nuestro
Como cuando uno confunde filas con columnas por ejemplo

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
database not assigned con fibplus erickperez6 Firebird e Interbase 9 17-10-2011 17:04:15
Assigned y Free gluglu Varios 4 14-05-2007 21:03:37
Invalid Pointer Operation con Free y Assigned adlfv OOP 3 07-10-2005 00:17:06
Database not assigned!! cwelx Conexión con bases de datos 1 29-09-2004 22:06:40
Left side cannot be assigned to gbece7mx7 Varios 2 29-10-2003 19:01:24


La franja horaria es GMT +2. Ahora son las 10:36:06.


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