FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
¿Somos los parias de la programación?
Hola.
Os expongo el caso, para mí incomprensible. La Agencia Tributaria española tiene un ActiveX en un archivo .dll para realizar factura electrónicas (firmar digitalmente una factura) y al instalarlo Delphi me devuelve el mensaje de "Interfaz no compatible", en las Faqs de la Agencia Tributaria ya informa de este mensaje e indica que el ActiveX debe instalarse por REFERENCIA. Yo, la verdad, no sé cómo se instala por referencia en Delphi. El caso es que envío un correo a la Agencia Tributaria pidiendo información y me contestan literalmente. "Desconocemos Delphi, y el programador del ActiveX también, de todas formas el ActiveX debe funcionar por Referencia." He quedado atónito. Desconocen Delphi!!!!, y tal como responden me quedaré sin poder utilizar el control ActiveX, y el caso es que lo necesito incorporar en mi aplicación, si no, adiós dinero. Bueno. Si alguien es capaz de ayudarme, aunque sea pagando, se lo agradeceré. Un saludo a todos. Adolfo de Bonis Mora |
#2
|
||||
|
||||
Delphi no es el lenguaje mas conocido... eso es cierto. Pero lo de parias me parece exagerado. Por otro lado, yo desconozco a Ruby, TCL, Python y practicamente todo lo que me huela a C
Si miras en https://sourceforge.net/softwaremap/...p?form_cat=160 veras que hasta hoy, hay inscritos 1761 proyectos. Teniendo en cuenta que son proyectos open source y se supone que PHP, C++, Java sobre plataforma Linux deberia ser casi lo unico, es un numero impresionante, y esta MUY por encima de Visual Basic.NET y Visual FoxPro y otros y sourceforge es *nix a la lata (Obviamente hay que tener en cuenta que en todo sourceforge hay varios proyectos muertos y que esto no es una estadistica de certeza absoluta, pero una buena indicacion) Lo de instalarce por referencia? Prueba: - Registra la dll con RegSvr32 que se encuentra en Windows\System32 - Dale un IMport de activeX. Si asi no funciona: - Dale un import Type Library. Debe funcionar asi. De todas maneras todo control activex se puede crear usando CreateOleObject (en tiempo de ejecucion) pero asi no tienes soporte a programacion tipada, mejor dicho, toca programar como si fuera un lenguaje de script.
__________________
El malabarista. |
#3
|
||||
|
||||
Cita:
regsvr32 AEATFACT.dll Otra cosa, ¿No te deja instalarlo? o ¿No te deja colocar en un Form? Si es el segundo como me imagino, intenta crear el componnente por código sin arrastrarlo en diseño.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#4
|
||||
|
||||
Hola.
Ok. Ya tenía registrada la dll. Tienes razón. Me deja instalar el ActiveX pero no me deja colorcarlo en un Form. El Caso es que incorporo el archivo tlb creado en mi aplicación y me es imposible acceder a sus métodos. Utilizo el siguiente código procedure FacturaDigital; var MiFactura: Variant; begin MiFactura := CreateOleObject('TAeatFactCtl'); // Aquí me da el error try MiFactura.Firma('archivofactura, Nif, Facturadestino); finally MiFactura.Unassigned; end; end; De aquí no paso. No sé mas. Si me das alguna idea lo agradeceré. Gracias. Adolfo Bonis Mora |
#5
|
||||
|
||||
Seguramente 'TAeatFactCtl' no es el nombre correcto del control. En la documentación o el servicio técnico debieran informarte cuál es el nombre correcto. Si no, posiblemente una búsqueda en el registro de Windows por el término AeatFactCtl te lleve al nombre adecuado.
Y por cierto, nada de parias. Que haya personas que consideren otros lenguajes como mejores que Delphi o incluso que consideren que Delphi es malo, es normal, todos tienen un punto de vista distinto. Pero si el programador del control ActiveX afirma que desconoce Delphi, entonces es simplemente que se trata de un soberbio, incapaz además, de dar el soporte requerido. // Saludos |
#6
|
||||
|
||||
Cita:
¿Has probado a utilizarla de la forma estándard? TOLeControl (de la que deriva) posee el método create:
¿Has probado?
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#7
|
||||
|
||||
Hola.
Si, ya he hecho lo que indicas, pero al ejecutar el programa y en el momento en que se ejecuta el método create muestra el mensaje "Interfaz no compatible" y adiós. Lo de parias todavía creo que lo somos. Una cosa es que un programador no sepa qué es Delphi, pero otra cosa es que la Agencia Tributaria española no tenga en cuenta otro lenguaje de programación que no sea Visual basic, y encima me digan nue !!No lo conocen!!. Otra cosa sería que lo conocen pero que no han puesto ejemplos de utilización o que no tienen ganas de hacerlo. En definitiva, sigo sin conseguir utilizar el componente. Gracias. Adolfo Bonis Mora |
#8
|
||||
|
||||
Hola.
Por fin he dado con el tema. El código sería tal como este: Factura := CreateOleObject('AeatFact.AeatFactCtl'); try Salida := Factura.FIRMA(Inicio, Nif, Final); finally Factura := Unassigned; end; Gracias a todos. Adolfo Bonis Mora Barcelona |
#9
|
||||
|
||||
Cita:
En concreto de dónde sale ésto (simple curiosidad): 'AeatFact.AeatFactCtl'
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#10
|
||||
|
||||
Hola.
Bueno, me metí otra vez en las Faqs de la Agencia Tributaria y ví una en la que daba un ejemplo de utilización del componente en Visual basic en la que utilizaba la misma función "CreateOleObject" con el parámtero "AeatFact.AeatFactCtl". Así que lo probé y funcionó. Un saludo Adolfo Bonis Mora Barcelona |
|
|
|