Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   La Taberna (https://www.clubdelphi.com/foros/forumdisplay.php?f=40)
-   -   facturae en españa ¿ por donde empezar ? (https://www.clubdelphi.com/foros/showthread.php?t=91250)

avmm2004 13-12-2016 15:13:51

facturae en españa ¿ por donde empezar ?
 
Hola a todos.... necesito utilizar facturae desde delphi ¿ por donde empiezo ?

Busco componentes para xml ? Ya los tiene el delphi ? son óptimos ?
que componentes necesito ? que documentación debería estudiar de delphi necesaria para interactuar con facturae a parte de la propia de facturae ?

Vamos ¿ por donde empiezo ?

Hay alguien que la haya implementado en su programa y me de pistas ?

Gracias.

AgustinOrtu 13-12-2016 17:03:15

Y que dice la documentación de facturae?

avmm2004 13-12-2016 17:32:45

Hola Agustin y gracias por contestar ..... dice que que hay que generar un fichero XML con todos los datos, diferentes tipos, campos etc......

El problema es que no he trabajado nunca con XML, si con varias bases de datos pero no con XML y no tengo ni docum. de xml en delphi ni como se usa, ni ejemplos sencillos, no
se siquiera si debo adquirir un componente para eso o cuales son los mejores.......

Gracias.

AgustinOrtu 13-12-2016 18:13:49

Xml en Delphi es lo de menos. Tiene bibliotecas nativas y también las hay de terceros. Es cuestión de usar la que me te guste. De hecho viene con un asistente (Googlea Delphi XML wizard) que te genera apartir de un archivo XML (o el de definición de la estructura del XML que justo ahora no recuerdo como se llama) interfaces con propiedades para acceder a los campos del XML de manera segura y fácil. También te genera unas funciones para que uses a modo de constructor para inicializar dichas interfaces

Lo que realmente te va a preocupar es protocolo de comunicación, cifrado de la información que va y viene entre vos y facturae y firmado digital.

Que tipo de servicio ofrecen en España? En Argentina usan soap 1.2 sino falla la memoria. También podría ser un servicio REST

newtron 13-12-2016 18:25:06

Hola.

A ver.... el tema facturae ya se ha tratado aquí en diversos hilos y tiene dos líneas importantes, una es la creación, como bien dices, de un fichero XML con unas especificaciones determinadas y otra (y más peliaguda) la firma digital de ese fichero XML generado. El tema de la creación del fichero XML no debería de darte más complicaciones, yo lo que hago es usar el componente TXMLDocument para generarlo y es relativamente fácil, para ver la estructura del fichero puedes echarle un vistazo a esto pero es algo lioso por lo que mi recomendación es que te descargues el programa facturae, hagas una factura en ese programa, la exportes y copies el diseño del fichero (seguro que algún purista me chillará pero para mi es lo más simple :D).

Por otro lado tenemos el asunto de firmar digitalmente el archivo generado. Yo en particular no he encontrado una forma económica y simple de hacerlo con componentes Delphi así que lo que he hecho ha sido hacer una llamada a un programita de libre distribución hecho en java que me hace ese trabajo. Puedes echarle un vistazo a este hilo y te aclarará algunas dudas.

El "rollete" facturae no es un tema baladí pero tampoco es un mundo así que echándole algo de tiempo verás que no es ningún misterio.

El envío del fichero, si no te quieres complicar mucho y no son muchas facturas, se puede hacer directamente en la web del ministerio.

Por otro lado, si haces una búsqueda de "facturae" te saldrán unos cuantos hilos. Yo la verdad es que no sé cómo adjuntártelos al pie del post como hacen algunos por aquí :o.

Saludos

avmm2004 13-12-2016 18:29:50

Hola Agustin, es mas sencillo que eso. El Facturae es un programa que se encarga de hacerlo todo. Pero ¿ cual es el problema ? Los clientes cada uno tiene su aplicación y lo que no quieren es hacer dos veces una factura (una mediante su programa habitual y otra mediante el facturae para enviar facturas a la administración).

El facturae es un programa hecho en Java (creo) y lo que permite es importar facturas de otros programas (archivos) pero en formato xml y con los campos y las especificaciones que ellos dan.

Así que, si le das un formato xml con esas especificaciones, facturae lo importa y hace todo (envío / recepción / firma digital de doctos, etc).

El problema es crear ese fichero xml (¿ con que herramientas / componentes ?) (las descripciones de los registros y campos las tengo) de la forma mas sencilla.

Por lo que realmente busco es acelerar esa creación del xml de la manera mas sencilla. La documentación de los campos , registros, tipo de registros y eso es una labor de leer y releer pero el trabajo con el xml de delphi es lo que me preocupa.

Por lo que los protocolos Soap / rest y todo eso no lo toco.

Nasca 13-12-2016 18:42:40

Cita:

Empezado por avmm2004 (Mensaje 511718)
El problema es crear ese fichero xml (¿ con que herramientas / componentes ?) (las descripciones de los registros y campos las tengo) de la forma mas sencilla.

Por lo que realmente busco es acelerar esa creación del xml de la manera mas sencilla. La documentación de los campos , registros, tipo de registros y eso es una labor de leer y releer pero el trabajo con el xml de delphi es lo que me preocupa.

Bajo mi punto de vista no merece la pena volverse loco con componentes.

Después de pelearme con diferentes formatos XML (Sepa, ETE, etc) al final he optado por hacerlos directamente a mano con ayuda de algunas simples funciones. En otros casos uso campos con máscaras y plantillas.
El xml no deja de ser un archivo de texto.

Usar los componentes genera dependencias de componentes de Windows, en mi caso el sistema se rompía en sistemas con 64bits. De esta forma no hay dependencia ninguna. Eso también ayuda luego a que la aplicación funcione con Wine.

AgustinOrtu 13-12-2016 19:04:42

Yo lo poco que he usado XML es lo mismo que comenta Newtron. TXMLDocument funciona bien, y está integrado en Delphi (acordate de usar CoInitialize Y CoUninitialize). De nuevo, si buscas más bibliotecas para tratar XML, vas a encontrar una abajo de cada piedra que levantes. OmniXML se me viene a la mente, SuperObject creo que también tiene algo

Saludos


La franja horaria es GMT +2. Ahora son las 00:47: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