In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Ocx

Foro de Xailer profesional en español
Responder
Estudio Informatico S
Mensajes: 26
Registrado: Sab Mar 13, 2010 4:51 pm

Ocx

Mensaje por Estudio Informatico S »

Hola
estoy trabajando con una ocx que me permite enviar comandos a una impresora fiscal que está definida por la siguiente clase, (solo le estoy mandando el nombre de la clase y la primer propiedad)
CLASS THASAR FROM TOcx
// Fiscal Class
PROPERTY cCLSID INIT "HASAR.Fiscal.1"
1)
en el formulario principal tengo
METHOD FormInitialize( oSender ) CLASS TForm1
WITH OBJECT ::oOcx := THASAR():New(Self) //esta anda
//WITH OBJECT ::oOcx := THASAR():New(::TForm1) //esta anda
:nAlign := alClient
:Create()
END
RETURN Nil
la compilación no me arroja ningún error
pero en la ejecución apenas se abre el formulario me aparece el formulario junto con la ventana del debug y alli me aparece lo siguiente
#1: ATL:
#2: IPersistStorageImpl::InitNew
#3: ATL:
#4: IPersistStreamInitImpl::InitNew
#5: ATL:
#6: IPersistStreamInitImpl::InitNew
que me está diciendo y como lo soluciono?????
2) quiero hacer referencia a esta componente ocx desde otro formulario, en el formulario ppal tengo un boton donde en el evento onclick le doy el método Memoria_trabajo
METHOD Memoria_trabajo( oSender ) CLASS TForm1
TForm2():new( Self ) : showmodal()
RETURN Nil
en el form2 hago lo mismo que en el form1 en su método forminitialie nada mas que le doy otro nombre a la componente oxc
Acá la duda es como refrenciar desde el form2 la componente definida en el form1 sin crearla de nuevo
METHOD FormInitialize( oSender ) CLASS TForm2
local los_forms
WITH OBJECT ::oOcx1 := THASAR():New(Self)
:nAlign := alClient //Makes the control fill the client window passed into the New Method above
:Create()
end
RETURN Nil
Saludos
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9441
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Ocx

Mensaje por ignacio »

Muy Sr. mí­o,
1) Me temo que no podemos ayudarle con este error ya que es generado por el
OCX. Es posible que algún otro usuario de Xailer esté utilizando impresoras
fiscales ví­a OCX y puede echarle una mano.
2) Añada una DATA oOCX en el formulario principal. Luego para acceder a
dicho objeto desde cualquier formulario hijo sólo tiene que hacer:
::oParent:oOCX. No es necesario ni recomendable que cree dos instancias del
objeto OCX.
Saludos
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
http://www.xailer.com/forum
http://www.xailer.com/dokuwiki
"Estudio Informatico Sur" escribió en el mensaje de
noticias:4cd9ae6e$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
Hola
estoy trabajando con una ocx que me permite enviar comandos
a una impresora fiscal que está definida por la siguiente
clase, (solo le estoy mandando el nombre de la clase y la
primer propiedad)
CLASS THASAR FROM TOcx
// Fiscal Class
PROPERTY cCLSID INIT "HASAR.Fiscal.1"
1)
en el formulario principal tengo
METHOD FormInitialize( oSender ) CLASS TForm1
WITH OBJECT ::oOcx := THASAR():New(Self) //esta anda
//WITH OBJECT ::oOcx := THASAR():New(::TForm1) //esta anda
:nAlign := alClient
:Create()
END
RETURN Nil
la compilación no me arroja ningún error
pero en la ejecución apenas se abre el formulario me
aparece el formulario junto con la ventana del debug y alli
me aparece lo siguiente
#1: ATL:
#2: IPersistStorageImpl::InitNew
#3: ATL:
#4: IPersistStreamInitImpl::InitNew
#5: ATL:
#6: IPersistStreamInitImpl::InitNew
que me está diciendo y como lo soluciono?????
2) quiero hacer referencia a esta componente ocx desde otro
formulario, en el formulario ppal tengo un boton donde en el
evento onclick le doy el método Memoria_trabajo
METHOD Memoria_trabajo( oSender ) CLASS TForm1
TForm2():new( Self ) : showmodal()
RETURN Nil
en el form2 hago lo mismo que en el form1 en su método
forminitialie nada mas que le doy otro nombre a la
componente oxc
Acá la duda es como refrenciar desde el form2 la componente
definida en el form1 sin crearla de nuevo
METHOD FormInitialize( oSender ) CLASS TForm2
local los_forms
WITH OBJECT ::oOcx1 := THASAR():New(Self)
:nAlign := alClient //Makes the control fill the
client window passed into the New Method above
:Create()
end
RETURN Nil
Saludos
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Responder