Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus-es / 2014-06

como usar una dll activex

14 messages · 3 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Paola Bruccoleri

Hola todos...

una empresa me proporciona una dll de tipo activex, para que yo pueda enviarle desde un sistema de facturaci�n a su servidor, unos comprobantes fiscales.
Tengu un ejemplo hecho en VBasic, que ayer port� a harbour sin mayores problemas.
Quiero hacerlo tb el lazarus ya q tengo sistemas de facturaci�n que lo van a usar.

Estoy mirando esto:
http://wiki.lazarus.freepascal.org/LazActiveX/es

pero yo no quiero crear un activex, sino usarlo!

por ej. en VB
Public Function fCFE() As eFacturaCOM.cfe 'Este procedimiento retorna un objeto del tipo CFE
Private vCfe As New eFacturaCOM.cfe 'Crea un objeto de la clase CFE 'Cabezal
vCfe.AnoEmision = "2014"
vCfe.MesEmision = "03"
vCfe.DiaEmision = "21"
.....
End Function

Alguna idea??
se los agradezco un montooooooonnnnn

mientras voy a seguir googleando..
byeeeeeeeeeeee

Reply by email

Martin Gomez
to Paola Bruccoleri

Lo que dice en la wiki que mandaste es exacto lo que necesitas... El componente TActiveXContainer hace de "puente" entre tu c�digo Lazarus y el control ActiveX que queres usar (eso para enlazar a la DLL en tiempo de ejecuci�n)
Para usar la DLL en tiempo de dise�o, Men� Herramientas, opci�n "Import Type Library", eleg�s la DLL (u OCX) y te crea un par de units Pascal que tienen toda la interfaz para usarla.

2014-06-12 10:12 GMT-03:00 Paola Bruccoleri <pbruccoleri en adinet.com.uy>:

Show quoted text 38 lines
Hola todos... una empresa me proporciona una dll de tipo activex, para que yo pueda enviarle desde un sistema de facturaci�n a su servidor, unos comprobantes fiscales. Tengu un ejemplo hecho en VBasic, que ayer port� a harbour sin mayores problemas. Quiero hacerlo tb el lazarus ya q tengo sistemas de facturaci�n que lo van a usar. Estoy mirando esto: http://wiki.lazarus.freepascal.org/LazActiveX/es pero yo no quiero crear un activex, sino usarlo! por ej. en VB Public Function fCFE() As eFacturaCOM.cfe 'Este procedimiento retorna un objeto del tipo CFE Private vCfe As New eFacturaCOM.cfe 'Crea un objeto de la clase CFE 'Cabezal vCfe.AnoEmision = "2014" vCfe.MesEmision = "03" vCfe.DiaEmision = "21" ..... End Function Alguna idea?? se los agradezco un montooooooonnnnn mientras voy a seguir googleando.. byeeeeeeeeeeee _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
Try not to become a man of success but rather to become a man of value. *Albert Einstein* ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20140612/d8c4a4fb/attachment.html>

Reply by email

Paola Bruccoleri
to Martin Gomez

Hola MArt�n..
si, ya instal� ese paquete q dice la wiki /(no se si en este caso es necesario)/ e hice esa importaci�n que tu me indicaste... no marqu� ninguna casillita en ese cuadro
No necesito ning�n componente visual... solo crear los objetos y usarlos.. Me cre� un .pas que es una interface.. pero de ah� a ver como se usa.. otro tema :)
ver� q me sale..
byeeeeee

El 12/06/2014 12:20, Martin Gomez escribi�:

Show quoted text 71 lines
Lo que dice en la wiki que mandaste es exacto lo que necesitas... El componente TActiveXContainer hace de "puente" entre tu c�digo Lazarus y el control ActiveX que queres usar (eso para enlazar a la DLL en tiempo de ejecuci�n) Para usar la DLL en tiempo de dise�o, Men� Herramientas, opci�n "Import Type Library", eleg�s la DLL (u OCX) y te crea un par de units Pascal que tienen toda la interfaz para usarla. 2014-06-12 10:12 GMT-03:00 Paola Bruccoleri <pbruccoleri en adinet.com.uy <mailto:pbruccoleri en adinet.com.uy>>: Hola todos... una empresa me proporciona una dll de tipo activex, para que yo pueda enviarle desde un sistema de facturaci�n a su servidor, unos comprobantes fiscales. Tengu un ejemplo hecho en VBasic, que ayer port� a harbour sin mayores problemas. Quiero hacerlo tb el lazarus ya q tengo sistemas de facturaci�n que lo van a usar. Estoy mirando esto: http://wiki.lazarus.freepascal.org/LazActiveX/es pero yo no quiero crear un activex, sino usarlo! por ej. en VB Public Function fCFE() As eFacturaCOM.cfe 'Este procedimiento retorna un objeto del tipo CFE Private vCfe As New eFacturaCOM.cfe 'Crea un objeto de la clase CFE 'Cabezal vCfe.AnoEmision = "2014" vCfe.MesEmision = "03" vCfe.DiaEmision = "21" ..... End Function Alguna idea?? se los agradezco un montooooooonnnnn mientras voy a seguir googleando.. byeeeeeeeeeeee _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org <mailto:Lazarus-es en lists.lazarus.freepascal.org> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es -- Try not to become a man of success but rather to become a man of value. /Albert Einstein/ _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es Se certific� que el correo no contiene virus. Comprobada por AVG - www.avg.es <http://www.avg.es> Versi�n: 2014.0.4592 / Base de datos de virus: 3964/7666 - Fecha de la versi�n: 12/06/2014

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20140612/1fa50495/attachment.html>

Reply by email

Paola Bruccoleri
to Martin Gomez: Lo que dice en la wiki que mandaste es exacto lo que necesitas... El componente…

El 12/06/2014 12:20, Martin Gomez escribi�:

Show quoted text 8 lines
Lo que dice en la wiki que mandaste es exacto lo que necesitas... El componente TActiveXContainer hace de "puente" entre tu c�digo Lazarus y el control ActiveX que queres usar (eso para enlazar a la DLL en tiempo de ejecuci�n) Para usar la DLL en tiempo de dise�o, Men� Herramientas, opci�n "Import Type Library", eleg�s la DLL (u OCX) y te crea un par de units Pascal que tienen toda la interfaz para usarla.

sigo con esto.... mi pregunta no es solo a Mart�n.. solo es que sigo el hilo debajo de sus mensajes..

cuando import� como me dijo Mart�n, se me cre� un .pas con la interface, y me aparecen caracteres extra�os. Al abrir el proyecto dice que ese archivo no parece ser un archivo de texto!

muestro la captura de pantalla xq si copio/pego, obvio q no aparecen:

lo elimino y listo, pero m�s abajo tengo la declaraci�n de la interface..

La verdad, no se c�mo hacer ac� para obtener la clase y luego instanciarla...

gracias por cq ayuda
chauuuuuuu

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20140613/67196102/attachment-0001.html> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: cicjiijg.png
Type: image/png
Size: 13638 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20140613/67196102/attachment-0002.png> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: iibdbijg.png
Type: image/png
Size: 16632 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20140613/67196102/attachment-0003.png>

Reply by email

José Mejuto
to Paola Bruccoleri

El 13/06/2014 13:46, Paola Bruccoleri escribi�:

cuando import� como me dijo Mart�n, se me cre� un .pas con la interface, y me aparecen caracteres extra�os. Al abrir el proyecto dice que ese archivo no parece ser un archivo de texto!

Hola,

Los caracteres extra�os son la ruta de la dependencia VBA 6.0, que como quiz� no est� en tu sistema va i saca basura. Esos caracteres deber�an de estar en el comentario, as� que borralos y listo.

Reply by email

Paola Bruccoleri
to José Mejuto

El 13/06/2014 14:39, Jos� Mejuto escribi�:

Show quoted text 13 lines
El 13/06/2014 13:46, Paola Bruccoleri escribi�: > cuando import� como me dijo Mart�n, se me cre� un .pas con la interface, > y me aparecen caracteres extra�os. Al abrir el proyecto dice que ese > archivo no parece ser un archivo de texto! Hola, Los caracteres extra�os son la ruta de la dependencia VBA 6.0, que como quiz� no est� en tu sistema va i saca basura. Esos caracteres deber�an de estar en el comentario, as� que borralos y listo.

Hola Jos�..

ok, ya los hab�a eliminado, pero sigo lidiando ... se me crearon 2 .pas: efacturacom_1_0_tlb.pas y msxml2_6_0_tlb.pas. (Unit eFacturaCOM_1_0_TLB; y Unit MSXML2_6_0_TLB; respectivamente) PERO la cosa es que en el primero, hace referencia a esta unit: VBA_6_0_TLB y obviamente ese .pas no se me gener�!

(ese activex dll est� hecho en vb 6)
me tranqu�...

encontr� esto que me estaba sirviendo:
http://forum.lazarus.freepascal.org/index.php?topic=21113.0 pero ese ejemplo es sencillo; yo tengo 8 interfaces y sus co-clases

no entendo la complicaci�n.... �ac� no habr� algo como en harbour, q simplemente hago esto:

vCfe:=WIN_OLECREATEOBJECT("eFacturaCOM.cfe")
IF !HB_ISOBJECT(vCfe)
ALERT('Falta instalar control OCX o problemas al crear objeto OLE CABECERA'+CRLF+'Consulte a Sistemas o a'+CRLF+'PAOLA BRUCCOLERI','Error') RETURN
ENDIF

  ************* DATOS CABECERA FACTURA *******************************
vCfe:AnoEmision      := "2014"
vCfe:MesEmision      := "03"
.......................etc

byeeeeeeeee

Reply by email

Paola Bruccoleri
to José Mejuto: El 13/06/2014 13:46, Paola Bruccoleri escribi�: Los caracteres extra�os son la ruta…

El 13/06/2014 14:39, Jos� Mejuto escribi�:

Show quoted text 13 lines
El 13/06/2014 13:46, Paola Bruccoleri escribi�: > cuando import� como me dijo Mart�n, se me cre� un .pas con la interface, > y me aparecen caracteres extra�os. Al abrir el proyecto dice que ese > archivo no parece ser un archivo de texto! Hola, Los caracteres extra�os son la ruta de la dependencia VBA 6.0, que como quiz� no est� en tu sistema va i saca basura. Esos caracteres deber�an de estar en el comentario, as� que borralos y listo.

Hola Jos�..

ok, ya los hab�a eliminado, pero sigo lidiando ... se me crearon 2 .pas: efacturacom_1_0_tlb.pas y msxml2_6_0_tlb.pas. (Unit eFacturaCOM_1_0_TLB; y Unit MSXML2_6_0_TLB; respectivamente) PERO la cosa es que en el primero, hace referencia a esta unit: VBA_6_0_TLB y obviamente ese .pas no se me gener�!

(ese activex dll est� hecho en vb 6)
me tranqu�...

encontr� esto que me estaba sirviendo:
http://forum.lazarus.freepascal.org/index.php?topic=21113.0 pero ese ejemplo es sencillo; yo tengo 8 interfaces y sus co-clases

no entendo la complicaci�n.... �ac� no habr� algo como en harbour, q simplemente hago esto:

vCfe:=WIN_OLECREATEOBJECT("eFacturaCOM.cfe")
IF !HB_ISOBJECT(vCfe)
ALERT('Falta instalar control OCX o problemas al crear objeto OLE CABECERA'+CRLF+'Consulte a Sistemas o a'+CRLF+'PAOLA BRUCCOLERI','Error') RETURN
ENDIF

  ************* DATOS CABECERA FACTURA *******************************
vCfe:AnoEmision      := "2014"
vCfe:MesEmision      := "03"
.......................etc

byeeeeeeeee

Reply by email

José Mejuto
to Paola Bruccoleri

El 13/06/2014 19:59, Paola Bruccoleri escribi�:

Show quoted text 13 lines
vCfe:=WIN_OLECREATEOBJECT("eFacturaCOM.cfe") IF !HB_ISOBJECT(vCfe) ALERT('Falta instalar control OCX o problemas al crear objeto OLE CABECERA'+CRLF+'Consulte a Sistemas o a'+CRLF+'PAOLA BRUCCOLERI','Error') RETURN ENDIF ************* DATOS CABECERA FACTURA ******************************* vCfe:AnoEmision := "2014" vCfe:MesEmision := "03" .......................etc

Hola,

Pues en teor�a es m�s o menos lo mismo:

var
vCfe: _CFE;
begin
   vCfe:=_CFE.create;
   vCfe.AnoEmision:='2014';
   ...
   ...
end;

Eso si, tienes que tener al menos esas dos DLL registradas en tu sistema, el VBA6.dll y el MSXML2.DLL

Calculo que el MSXML2_6_0_TLB.pas no lo necesitas en tu proyecto para nada.

Reply by email

Martin Gomez
to José Mejuto

Al final de la p�gina de la wiki de Lazarus muestra que al crear el .PAS podes crear un paquete e instalarlo, y el componente te aparecer�a en la solapa ActiveX.
Si aparece ah�, es como cualquier otro, lo pegas y lo usas.

2014-06-13 15:33 GMT-03:00 Jos� Mejuto <joshyfun en gmail.com>:

Show quoted text 44 lines
El 13/06/2014 19:59, Paola Bruccoleri escribi�: vCfe:=WIN_OLECREATEOBJECT("eFacturaCOM.cfe") > IF !HB_ISOBJECT(vCfe) > ALERT('Falta instalar control OCX o problemas al crear objeto OLE > CABECERA'+CRLF+'Consulte a Sistemas o a'+CRLF+'PAOLA BRUCCOLERI','Error') > RETURN > ENDIF > > ************* DATOS CABECERA FACTURA ******************************* > vCfe:AnoEmision := "2014" > vCfe:MesEmision := "03" > .......................etc > > > Hola, Pues en teor�a es m�s o menos lo mismo: var vCfe: _CFE; begin vCfe:=_CFE.create; vCfe.AnoEmision:='2014'; ... ... end; Eso si, tienes que tener al menos esas dos DLL registradas en tu sistema, el VBA6.dll y el MSXML2.DLL Calculo que el MSXML2_6_0_TLB.pas no lo necesitas en tu proyecto para nada. -- _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
Try not to become a man of success but rather to become a man of value. *Albert Einstein* ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20140613/9cb91a1c/attachment.html>

Reply by email

Paola Bruccoleri
to José Mejuto: El 13/06/2014 19:59, Paola Bruccoleri escribi�: Pues en teor�a es m�s o menos lo…

El 13/06/2014 15:33, Jos� Mejuto escribi�:

Show quoted text 38 lines
El 13/06/2014 19:59, Paola Bruccoleri escribi�: > vCfe:=WIN_OLECREATEOBJECT("eFacturaCOM.cfe") > IF !HB_ISOBJECT(vCfe) > ALERT('Falta instalar control OCX o problemas al crear objeto OLE > CABECERA'+CRLF+'Consulte a Sistemas o a'+CRLF+'PAOLA > BRUCCOLERI','Error') > RETURN > ENDIF > > ************* DATOS CABECERA FACTURA ******************************* > vCfe:AnoEmision := "2014" > vCfe:MesEmision := "03" > .......................etc > > Hola, Pues en teor�a es m�s o menos lo mismo: var vCfe: _CFE; begin vCfe:=_CFE.create; vCfe.AnoEmision:='2014'; ... ... end; Eso si, tienes que tener al menos esas dos DLL registradas en tu sistema, el VBA6.dll y el MSXML2.DLL Calculo que el MSXML2_6_0_TLB.pas no lo necesitas en tu proyecto para nada.

si,estaba buscando la vb6.dll.... si alquien la tiene, me la manda??? encontr� un exe pero aca en el trabajo tengo trancada la bajada de exes...

aunque con harbour, no necesit� hacer NADA de NADA de esto; ni registrar ni tener nada...

byeeeeeeeee

Reply by email

Paola Bruccoleri
to José Mejuto: El 13/06/2014 19:59, Paola Bruccoleri escribi�: Pues en teor�a es m�s o menos lo…

El 13/06/2014 15:33, Jos� Mejuto escribi�:

Show quoted text 38 lines
El 13/06/2014 19:59, Paola Bruccoleri escribi�: > vCfe:=WIN_OLECREATEOBJECT("eFacturaCOM.cfe") > IF !HB_ISOBJECT(vCfe) > ALERT('Falta instalar control OCX o problemas al crear objeto OLE > CABECERA'+CRLF+'Consulte a Sistemas o a'+CRLF+'PAOLA > BRUCCOLERI','Error') > RETURN > ENDIF > > ************* DATOS CABECERA FACTURA ******************************* > vCfe:AnoEmision := "2014" > vCfe:MesEmision := "03" > .......................etc > > Hola, Pues en teor�a es m�s o menos lo mismo: var vCfe: _CFE; begin vCfe:=_CFE.create; vCfe.AnoEmision:='2014'; ... ... end; Eso si, tienes que tener al menos esas dos DLL registradas en tu sistema, el VBA6.dll y el MSXML2.DLL Calculo que el MSXML2_6_0_TLB.pas no lo necesitas en tu proyecto para nada.

Hola Jos�, resto del grupo..

ya consegu� la vba6.dll. Lo que hice para obtener la VBA_6_0_TLB fue hacer lo mismo q con la otra: import type library. No la registr� ni nada; solo dej� la dll en la misma carpeta del proyecto, al igual que la otra dll activex.
En fin, aparentemente ya tengo todos los .pas q necesito. Todav�a no me voy a meter en hacer ning�n paquete como sugiere Mart�n xq primero quiero ver que todo funcione bien.

Siguiendo con la sintaxis que me sugiri� Jos�, y que tb algo encontr� en este foro:
http://forum.lazarus.freepascal.org/index.php?topic=21113.0

logr� armar casi lo mismo que tengo en harbour, PEROOOO siempre hay un PEROOOOO..a la hora de compilar me salta este error:

efacturacom_1_0_tlb.pas(90,38) Fatal: Syntax error, "identifier"
expected but ":" found

y es ac�:
*procedure Set_ivaTasaBasica(const :Currency); safecall;*

pero ese c�digo, si es que est� mal, se gener� solo! (es la librer�a de importaci�n o como se llame)

estoy usando para esto el lazarus 1.2.2 reci�n bajadito.... (en win8 64b)

help!
millones de gracias!!
byeeeeeeeeeeeee

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20140613/54ec1c37/attachment-0001.html>

Reply by email

José Mejuto
to Paola Bruccoleri

El 14/06/2014 0:13, Paola Bruccoleri escribi�:

Show quoted text 8 lines
y es ac�: *procedure Set_ivaTasaBasica(const :Currency); safecall;* pero ese c�digo, si es que est� mal, se gener� solo! (es la librer�a de importaci�n o como se llame) estoy usando para esto el lazarus 1.2.2 reci�n bajadito.... (en win8 64b)

Hola,

Prueba con:

procedure Set_ivaTasaBasica(const Value: Currency); safecall;

Reply by email

Paola Bruccoleri
to Paola Bruccoleri: El 13/06/2014 15:33, Jos� Mejuto escribi�: Hola Jos�, resto del grupo.. ya…

El 13/06/2014 19:13, Paola Bruccoleri escribi�:

Show quoted text 71 lines
El 13/06/2014 15:33, Jos� Mejuto escribi�: > El 13/06/2014 19:59, Paola Bruccoleri escribi�: > > >> vCfe:=WIN_OLECREATEOBJECT("eFacturaCOM.cfe") >> IF !HB_ISOBJECT(vCfe) >> ALERT('Falta instalar control OCX o problemas al crear objeto >> OLE > >> CABECERA'+CRLF+'Consulte a Sistemas o a'+CRLF+'PAOLA >> BRUCCOLERI','Error') >> RETURN >> ENDIF >> >> ************* DATOS CABECERA FACTURA ******************************* >> vCfe:AnoEmision := "2014" >> vCfe:MesEmision := "03" >> .......................etc >> >> > > Hola, > > Pues en teor�a es m�s o menos lo mismo: > > var > vCfe: _CFE; > begin > vCfe:=_CFE.create; > vCfe.AnoEmision:='2014'; > ... > ... > end; > > Eso si, tienes que tener al menos esas dos DLL registradas en tu > sistema, el VBA6.dll y el MSXML2.DLL > > Calculo que el MSXML2_6_0_TLB.pas no lo necesitas en tu proyecto para > nada. > Hola Jos�, resto del grupo.. ya consegu� la vba6.dll. Lo que hice para obtener la VBA_6_0_TLB fue hacer lo mismo q con la otra: import type library. No la registr� ni nada; solo dej� la dll en la misma carpeta del proyecto, al igual que la otra dll activex. En fin, aparentemente ya tengo todos los .pas q necesito. Todav�a no me voy a meter en hacer ning�n paquete como sugiere Mart�n xq primero quiero ver que todo funcione bien. Siguiendo con la sintaxis que me sugiri� Jos�, y que tb algo encontr� en este foro: http://forum.lazarus.freepascal.org/index.php?topic=21113.0 logr� armar casi lo mismo que tengo en harbour, PEROOOO siempre hay un PEROOOOO..a la hora de compilar me salta este error: efacturacom_1_0_tlb.pas(90,38) Fatal: Syntax error, "identifier" expected but ":" found y es ac�: *procedure Set_ivaTasaBasica(const :Currency); safecall;* pero ese c�digo, si es que est� mal, se gener� solo! (es la librer�a de importaci�n o como se llame) estoy usando para esto el lazarus 1.2.2 reci�n bajadito.... (en win8 64b) help! millones de gracias!! byeeeeeeeeeeeee

sigoooooo
para probar, rellen� a mano cada variable q faltaba antes del tipo.. *procedure Set_ivaTasaBasica(const ivatasabasica:Currency); safecall;*

pero tu sintaxis me di� error ac� en rojo:
var
   vCfe: _CFE;
   itemFact1, itemFact2: _ItemFactura;
begin
vCfe=_CFE.Create;
unit1.pas(38,13) Error: identifier idents no member "Create"
y lo modifiqu� por:
vCfe:= CoCFE.Create;

aparenta quedar pronto...
igual tengo 3 errores que no logro darme cuenta:

unit1.pas(117,54) Error: Variable identifier expected
efacturacom_1_0_tlb.pas(705,13) Hint: Found declaration:
_Sobre.SaveXMLToFile(var WideString):OleVariant; SafeCall;
unit1.pas(118,56) Error: Variable identifier expected
efacturacom_1_0_tlb.pas(187,13) Hint: Found declaration:
_CFE.SaveXMLToFile(var WideString):OleVariant; SafeCall;
unit1.pas(121,51) Error: Variable identifier expected
efacturacom_1_0_tlb.pas(811,13) Hint: Found declaration:
_Respuesta.savePDF(var WideString):WordBool; SafeCall;
unit1.pas(130) Fatal: There were 3 errors compiling module, stopping

donde:
vSobre.SaveXMLToFile('f:\lz\felectronica\sobre.xml'); ___ERROR 1_ vSobre.cfe.SaveXMLToFile('f:\lz\felectronica\cfe.xml'); ___ERROR 2_

   if vSobre.callWebService then begin
      resp:= vSobre.Response;
      resp.savePDF('f:\lz\felectronica\compPdf.pdf');_  ERROR 3_
   end else begin
      ShowMessage('ERROR AL LLAMAR AL WEB SERVICE...')
   end

y en el pas que se gener� con la DLL

    function SaveXMLToFile(var strPath:WideString):OleVariant;safecall;
(est� en la interface de _Sobre)
    function SaveXMLToFile(var strPath:WideString):OleVariant;safecall;
(est� en la interface de _CFE)
    function savePDF(var strPath:WideString):WordBool;safecall; (est� en
la interface de _Respuesta)

gracias nuevamente!
byeeeeeeeeee
------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20140613/37631f9e/attachment.html>

Reply by email

Paola Bruccoleri
to Paola Bruccoleri

El 13/06/2014 21:20, Paola Bruccoleri escribi�:

Show quoted text 123 lines
El 13/06/2014 19:13, Paola Bruccoleri escribi�: > El 13/06/2014 15:33, Jos� Mejuto escribi�: >> El 13/06/2014 19:59, Paola Bruccoleri escribi�: >> >> >>> vCfe:=WIN_OLECREATEOBJECT("eFacturaCOM.cfe") >>> IF !HB_ISOBJECT(vCfe) >>> ALERT('Falta instalar control OCX o problemas al crear >>> objeto OLE >> >>> CABECERA'+CRLF+'Consulte a Sistemas o a'+CRLF+'PAOLA >>> BRUCCOLERI','Error') >>> RETURN >>> ENDIF >>> >>> ************* DATOS CABECERA FACTURA ******************************* >>> vCfe:AnoEmision := "2014" >>> vCfe:MesEmision := "03" >>> .......................etc >>> >>> >> >> Hola, >> >> Pues en teor�a es m�s o menos lo mismo: >> >> var >> vCfe: _CFE; >> begin >> vCfe:=_CFE.create; >> vCfe.AnoEmision:='2014'; >> ... >> ... >> end; >> >> Eso si, tienes que tener al menos esas dos DLL registradas en tu >> sistema, el VBA6.dll y el MSXML2.DLL >> >> Calculo que el MSXML2_6_0_TLB.pas no lo necesitas en tu proyecto >> para nada. >> > Hola Jos�, resto del grupo.. > > ya consegu� la vba6.dll. Lo que hice para obtener la VBA_6_0_TLB fue > hacer lo mismo q con la otra: import type library. No la registr� ni > nada; solo dej� la dll en la misma carpeta del proyecto, al igual que > la otra dll activex. > En fin, aparentemente ya tengo todos los .pas q necesito. > Todav�a no me voy a meter en hacer ning�n paquete como sugiere Mart�n > xq primero quiero ver que todo funcione bien. > > Siguiendo con la sintaxis que me sugiri� Jos�, y que tb algo encontr� > en este foro: > http://forum.lazarus.freepascal.org/index.php?topic=21113.0 > > logr� armar casi lo mismo que tengo en harbour, PEROOOO siempre hay > un PEROOOOO..a la hora de compilar me salta este error: > > efacturacom_1_0_tlb.pas(90,38) Fatal: Syntax error, "identifier" > expected but ":" found > > y es ac�: > *procedure Set_ivaTasaBasica(const :Currency); safecall;* > > pero ese c�digo, si es que est� mal, se gener� solo! (es la librer�a > de importaci�n o como se llame) > > estoy usando para esto el lazarus 1.2.2 reci�n bajadito.... (en win8 64b) > > help! > millones de gracias!! > byeeeeeeeeeeeee sigoooooo para probar, rellen� a mano cada variable q faltaba antes del tipo.. *procedure Set_ivaTasaBasica(const ivatasabasica:Currency); safecall;* pero tu sintaxis me di� error ac� en rojo: var vCfe: _CFE; itemFact1, itemFact2: _ItemFactura; begin vCfe=_CFE.Create; unit1.pas(38,13) Error: identifier idents no member "Create" y lo modifiqu� por: vCfe:= CoCFE.Create; aparenta quedar pronto... igual tengo 3 errores que no logro darme cuenta: unit1.pas(117,54) Error: Variable identifier expected efacturacom_1_0_tlb.pas(705,13) Hint: Found declaration: _Sobre.SaveXMLToFile(var WideString):OleVariant; SafeCall; unit1.pas(118,56) Error: Variable identifier expected efacturacom_1_0_tlb.pas(187,13) Hint: Found declaration: _CFE.SaveXMLToFile(var WideString):OleVariant; SafeCall; unit1.pas(121,51) Error: Variable identifier expected efacturacom_1_0_tlb.pas(811,13) Hint: Found declaration: _Respuesta.savePDF(var WideString):WordBool; SafeCall; unit1.pas(130) Fatal: There were 3 errors compiling module, stopping donde: vSobre.SaveXMLToFile('f:\lz\felectronica\sobre.xml'); ___ERROR 1_ vSobre.cfe.SaveXMLToFile('f:\lz\felectronica\cfe.xml'); ___ERROR 2_ if vSobre.callWebService then begin resp:= vSobre.Response; resp.savePDF('f:\lz\felectronica\compPdf.pdf');_ ERROR 3_ end else begin ShowMessage('ERROR AL LLAMAR AL WEB SERVICE...') end y en el pas que se gener� con la DLL function SaveXMLToFile(*var* strPath:WideString):OleVariant;safecall; (est� en la interface de _Sobre) function SaveXMLToFile(var strPath:WideString):OleVariant;safecall; (est� en la interface de _CFE) function savePDF(var strPath:WideString):WordBool;safecall; (est� en la interface de _Respuesta)

le saqu� el *var* a cada funci�n.. y despej� esos errores ahora, como estaba haciedo:

var
   vCfe: _CFE;
begin
   vCfe=_CFE.Create;
da error al compilar:
unit1.pas(45,13) Error: identifier idents no member "Create"
si la cambio x esto:
vCfe:=CoCFE.Create;
se crea el exe, pero da un SIGSEGV ac�:
   vCfe.AnoEmision      :='2014';

evidentemente estoy interpretando mal todo esto....

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20140614/b8a3df57/attachment.html> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: ejibbddh.png
Type: image/png
Size: 5683 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20140614/b8a3df57/attachment.png>

Reply by email