No reconoce un objeto recientemente creado

18/12/2004 - 12:04 por Hisoft | Informe spam
Hola a todos,

Tengo un caso muy curioso, en el que en ocasiones, como siempre y para hacer
mas dificil su depuracion, la aplicacion le marca un error al cliente:

Error Nº..: 1924
Mensaje...: OPANT no es un objeto.

Cuado el codigo es el siguiente:

LOCAL oPant,lHecho,lIni,lFin

oPant = CREATEOBJECT('FiltrosDiario',pTipo)
IF TYPE('oPant') = 'O'
oPant.Show()
lIni = oPant.Ini &&En esta linea es donde da el error 1924
lFin = oPant.Fin
ELSE
RETURN
ENDIF

Si ya estoy comprobando que exista y no da error en Show(), ¿como puede dar
esta error?

Gracias.
Un Saludo.
Eduardo Amat.

Preguntas similare

Leer las respuestas

#6 Alberto Rodriguez
21/12/2004 - 00:19 | Informe spam
Ok. Entonces tu problema es otro. Si es modal y no pulsas la X para salir (o
en su defecto -aunque pulsandola- usas nodefault y this.hide en QueryOnLoad)
debe funcionar bien.

Prueba

oL = create...
oL.Show()
if vartype(oL) = 'O' and !isnull(ol)
ol.ini
else
set step on
wait wind 'Otro problema.'
endif



"Hisoft" escribió en el mensaje
news:
Hola Alberto,

Lo siento, no entiendo muy bien lo que me dices.

'FiltrosDiario' es una clase basa en un form que es modal. A su vez en
el Init, en funcion del segudo parametro, cargo otro objeto basado en una
clase de rangos, es decir, tengo una clase para desde-hasta numerico,
desde-hasta fecha, etc..., y en el boton aceptar le asigno a las


propiedades
Ini y Fin, los valores introducidos, y despues un ThisForm.Hide, y en el
boton cancelar, directamente Hide.

Las propiedades Ini y Fin, estan definidas en la clase en tiempo de
diseño, con lo que estoy seguro que existen, y por otra parte, yo aqui no


he
conseguido reproducir el error, solo le pasa al cliente y en algunas
ocasiones, porque es una funcionalidad que se usa mucho, y si no estaria
continuamente saliendo el error.

Un saludo.
Eduardo Amat.

"Alberto Rodriguez" escribió en el mensaje
news:
> Si FiltrosDiario' es un form modal se detiene en show y se libera luego


de
> continuar transformando a oPant en .NULL. (a menos que uses this.hide en
vez
> de this.release en el metodo salir y en queryonload.
> Si no es modal oPant debe ser publica y no local.
>
>
> "Hisoft" escribió en el mensaje
> news:
> > Hola a todos,
> >
> > Tengo un caso muy curioso, en el que en ocasiones, como siempre y para
> hacer
> > mas dificil su depuracion, la aplicacion le marca un error al cliente:
> >
> > Error Nº..: 1924
> > Mensaje...: OPANT no es un objeto.
> >
> > Cuado el codigo es el siguiente:
> >
> > LOCAL oPant,lHecho,lIni,lFin
> >
> > oPant = CREATEOBJECT('FiltrosDiario',pTipo)
> > IF TYPE('oPant') = 'O'
> > oPant.Show()
> > lIni = oPant.Ini &&En esta linea es donde da el error 1924
> > lFin = oPant.Fin
> > ELSE
> > RETURN
> > ENDIF
> >
> > Si ya estoy comprobando que exista y no da error en Show(), ¿como


puede
> dar
> > esta error?
> >
> > Gracias.
> > Un Saludo.
> > Eduardo Amat.
> >
> >
> >
>
>
>



Respuesta Responder a este mensaje
#7 Alberto Rodriguez
21/12/2004 - 00:20 | Informe spam
Por otra parte asegurate de que las propiedades del form no esten ocultas o
protegidas.


"Hisoft" escribió en el mensaje
news:
Hola Alberto,

Lo siento, no entiendo muy bien lo que me dices.

'FiltrosDiario' es una clase basa en un form que es modal. A su vez en
el Init, en funcion del segudo parametro, cargo otro objeto basado en una
clase de rangos, es decir, tengo una clase para desde-hasta numerico,
desde-hasta fecha, etc..., y en el boton aceptar le asigno a las


propiedades
Ini y Fin, los valores introducidos, y despues un ThisForm.Hide, y en el
boton cancelar, directamente Hide.

Las propiedades Ini y Fin, estan definidas en la clase en tiempo de
diseño, con lo que estoy seguro que existen, y por otra parte, yo aqui no


he
conseguido reproducir el error, solo le pasa al cliente y en algunas
ocasiones, porque es una funcionalidad que se usa mucho, y si no estaria
continuamente saliendo el error.

Un saludo.
Eduardo Amat.

"Alberto Rodriguez" escribió en el mensaje
news:
> Si FiltrosDiario' es un form modal se detiene en show y se libera luego


de
> continuar transformando a oPant en .NULL. (a menos que uses this.hide en
vez
> de this.release en el metodo salir y en queryonload.
> Si no es modal oPant debe ser publica y no local.
>
>
> "Hisoft" escribió en el mensaje
> news:
> > Hola a todos,
> >
> > Tengo un caso muy curioso, en el que en ocasiones, como siempre y para
> hacer
> > mas dificil su depuracion, la aplicacion le marca un error al cliente:
> >
> > Error Nº..: 1924
> > Mensaje...: OPANT no es un objeto.
> >
> > Cuado el codigo es el siguiente:
> >
> > LOCAL oPant,lHecho,lIni,lFin
> >
> > oPant = CREATEOBJECT('FiltrosDiario',pTipo)
> > IF TYPE('oPant') = 'O'
> > oPant.Show()
> > lIni = oPant.Ini &&En esta linea es donde da el error 1924
> > lFin = oPant.Fin
> > ELSE
> > RETURN
> > ENDIF
> >
> > Si ya estoy comprobando que exista y no da error en Show(), ¿como


puede
> dar
> > esta error?
> >
> > Gracias.
> > Un Saludo.
> > Eduardo Amat.
> >
> >
> >
>
>
>



Respuesta Responder a este mensaje
#8 Hisoft
23/12/2004 - 21:04 | Informe spam
Hola Alberto,

Gracias por tu ayuda, lo he puesto como tu me dices y en principio
funciona correctamente, pero como el otro codigo tampoco me daba fallo a mi,
pues se lo instalare al cliente y "crucemos los dedos" :-)

Un Saludo.
Eduardo Amat.


"Alberto Rodriguez" escribió en el mensaje
news:
Ok. Entonces tu problema es otro. Si es modal y no pulsas la X para salir


(o
en su defecto -aunque pulsandola- usas nodefault y this.hide en


QueryOnLoad)
debe funcionar bien.

Prueba

oL = create...
oL.Show()
if vartype(oL) = 'O' and !isnull(ol)
ol.ini
else
set step on
wait wind 'Otro problema.'
endif



"Hisoft" escribió en el mensaje
news:
> Hola Alberto,
>
> Lo siento, no entiendo muy bien lo que me dices.
>
> 'FiltrosDiario' es una clase basa en un form que es modal. A su vez


en
> el Init, en funcion del segudo parametro, cargo otro objeto basado en


una
> clase de rangos, es decir, tengo una clase para desde-hasta numerico,
> desde-hasta fecha, etc..., y en el boton aceptar le asigno a las
propiedades
> Ini y Fin, los valores introducidos, y despues un ThisForm.Hide, y en el
> boton cancelar, directamente Hide.
>
> Las propiedades Ini y Fin, estan definidas en la clase en tiempo de
> diseño, con lo que estoy seguro que existen, y por otra parte, yo aqui


no
he
> conseguido reproducir el error, solo le pasa al cliente y en algunas
> ocasiones, porque es una funcionalidad que se usa mucho, y si no estaria
> continuamente saliendo el error.
>
> Un saludo.
> Eduardo Amat.
>
> "Alberto Rodriguez" escribió en el mensaje
> news:
> > Si FiltrosDiario' es un form modal se detiene en show y se libera


luego
de
> > continuar transformando a oPant en .NULL. (a menos que uses this.hide


en
> vez
> > de this.release en el metodo salir y en queryonload.
> > Si no es modal oPant debe ser publica y no local.
> >
> >
> > "Hisoft" escribió en el mensaje
> > news:
> > > Hola a todos,
> > >
> > > Tengo un caso muy curioso, en el que en ocasiones, como siempre y


para
> > hacer
> > > mas dificil su depuracion, la aplicacion le marca un error al


cliente:
> > >
> > > Error Nº..: 1924
> > > Mensaje...: OPANT no es un objeto.
> > >
> > > Cuado el codigo es el siguiente:
> > >
> > > LOCAL oPant,lHecho,lIni,lFin
> > >
> > > oPant = CREATEOBJECT('FiltrosDiario',pTipo)
> > > IF TYPE('oPant') = 'O'
> > > oPant.Show()
> > > lIni = oPant.Ini &&En esta linea es donde da el error


1924
> > > lFin = oPant.Fin
> > > ELSE
> > > RETURN
> > > ENDIF
> > >
> > > Si ya estoy comprobando que exista y no da error en Show(), ¿como
puede
> > dar
> > > esta error?
> > >
> > > Gracias.
> > > Un Saludo.
> > > Eduardo Amat.
> > >
> > >
> > >
> >
> >
> >
>
>
>



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida