Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-01-2015
iMia iMia is offline
Miembro
 
Registrado: jul 2010
Posts: 141
Poder: 14
iMia Va por buen camino
Manuel, muchas gracias por tu rapidisima respuesta...
Estoy intentando mirar de firmar unicamente el XML con Xades (nada de PDFs), y voy a buscar primero si lo puedo hacer sin componentes. Mirare a traves de alguna dll o algo asi. Ya que puedo generar el xml y en las plataformas de envio del xml a las administraciones publicas, dentro hay la opción de firmar gratuitamente con sus applets... por eso mirar de no pagar y repercutir el gasto a mis "ClientesDeGorra"
Si no al final acabare con SBB...
ademas la app esta hecha con Delphi 5... casi nada...
Responder Con Cita
  #2  
Antiguo 24-01-2015
lithium76 lithium76 is offline
Miembro
 
Registrado: ene 2015
Posts: 33
Poder: 0
lithium76 Va por buen camino
Muy buenas! Increíble que me haya perdido este foro tanto tiempo .. Me siento avergonzado

Como todos vosotros me veo en la necesidad de tratar el tema de la factura electrónica. Quería haceros una pregunta a vosotros que, por lo que veo, vais muy por delante de mi. ¿Habéis usado el fichero xsd de Facturae para generar una clase con el XML Data Binding o lo habéis hecho creando vosotros el XML "a pelo"? Yo, en primera instancia, use el Data Binding y, tras pelearme un poco con él, conseguí generar un XML aparentemente correcto. El problema es en los malditos "namespace" y sus "prefijos"..

en vez de ésto:

<fe:Facturae xmlns:fe="http...Facturae" xmlns:ds="http...xmldsig#">

yo, obtengo:

<Facturae xmlns="http..Facturae"> (nótese la falta del namespace "fe")

He conseguido alguna aproximación mejor pero no me convence la manera ya que rompe la filosofía del Data Binding con "apaños".. Alguien sigo el mismo camino que yo y supo resolverlo.. me sería de gran utilidad

Muchas gracias por avanzado
Responder Con Cita
  #3  
Antiguo 24-01-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.053
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Bienvenido a clubdelphi, como siempre aconsejamos a los nuevos, no olvides leer nuestra guía de estilo, gracias por tu colaboración


Recuerda poner los tags al código fuente, ejemplo:



Gracias
Responder Con Cita
  #4  
Antiguo 25-01-2015
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.473
Poder: 21
newtron Va camino a la fama
Hola.

Echale un vistazo a esto que seguro que te ayudará.

Saludos
__________________
Be water my friend.
Responder Con Cita
  #5  
Antiguo 25-01-2015
lithium76 lithium76 is offline
Miembro
 
Registrado: ene 2015
Posts: 33
Poder: 0
lithium76 Va por buen camino
Gracias por la respuesta tan rápida! La verdad es que he el enlace está muy bien.. lo de la web de facturae ya lo tenía visto, por eso.. El contenido del xml lo tengo generado perfectamente. . El problema es básicamente con el elemento Facturae que he posteado antes .. Con la interface que ha generado el Data Binding al generar este nodo no lo hace como es debido y no entiendo exactamente el motivo.. Quizá sea un fallo del Data Binding y entonces optaré por algun "truco" para evitarlo pero me gustaría saber si alguien sabe como conseguirlo sin optar por "apaños"

Muchas gracias una vez más
Responder Con Cita
  #6  
Antiguo 25-01-2015
iMia iMia is offline
Miembro
 
Registrado: jul 2010
Posts: 141
Poder: 14
iMia Va por buen camino
Hola LITHIUM76,
con el Databinding, si has conseguido generarlo correctamente (ya que el propio de el interprete de xsd delphi no los convierte si tienen referencias externas), lo único que debes haces hacer (o almenos es lo que yo he hecho) ha sido que el nombre del elemento lo he puesto directamente 'fe:Facturae' y el validador del ministerio ha dicho que OK... :-)
Yo serialicé el xsd con XSDTool 3.0... pero luego reescribí todos los tipos que necesité manualmente, ya que hacia mas cosas que lo que quería, y la forma que lo hacía no me gustaba...
Código:
  XMLNode_eFact_32_Facturae                                     = 'fe:Facturae';
    XMLNode_eFact_32_FileHeader                                   = 'FileHeader';
    XMLNode_eFact_32_SchemaVersion                                  = 'SchemaVersion';
    XMLNode_eFact_32_Modality                                     = 'Modality';
    XMLNode_eFact_32_InvoiceIssuerType                            = 'InvoiceIssuerType';

type
  TFacturae = class
  private
    fFileHeader:  TFileHeader;
    fParties:     TParties;
    fInvoices:    TInvoices;
//    fExtensions:  TExtensions;
  public
    constructor Create;
    ///
    function ToXml: IXMLDOMElement;
    ///
    property FileHeader: TFileHeader  read fFileHeader  write fFileHeader;
    property Parties:    TParties     read fParties     write fParties;
    property Invoices:   TInvoices    read fInvoices    write fInvoices;
//    property fExtensions: TExtensions  read fExtensions  write fExtensions;
  end;
Responder Con Cita
  #7  
Antiguo 25-01-2015
lithium76 lithium76 is offline
Miembro
 
Registrado: ene 2015
Posts: 33
Poder: 0
lithium76 Va por buen camino
Muchas gracias iMia
yo también tuve problemas inicialmente con el Data Binding por el import y probé con esa herramienta que mencionas pero no quedé muy contento con el resultado.. Total, que investigando y probando, di con que si descargaba el xsd externo al que hace referencia el del Facturae y lo ponía en el mismo directorio, el Data Binding funcionaba perfectamente. El problema es que todo el XML es perfecto menos el elemento Facturae que sale sin el fe: de las narices . Probé como bien dices poniendo fe:Facturae pero entonces pone el prefijo fe: en todos los elementos del XML y, en consecuencia, el XML no valida. He encontrado algún "apaño" pero me gustaría saber si existe alguna manera elegante de conseguir el prefijo fe solo en elemento y no en sus hijos. No sé si es culpa del DataBinding que no acaba de hacerlo bien del todo o yo que ando algo confundido con mis pocos conocimientos de xml.. se te ocurre alguna cosa? yo ya no sé qué más probar
Responder Con Cita
  #8  
Antiguo 04-02-2015
Kribbeling Kribbeling is offline
Registrado
NULL
 
Registrado: feb 2011
Posts: 5
Poder: 0
Kribbeling Va por buen camino
Cita:
Empezado por iMia Ver Mensaje
Manuel, muchas gracias por tu rapidisima respuesta...
Estoy intentando mirar de firmar unicamente el XML con Xades (nada de PDFs), y voy a buscar primero si lo puedo hacer sin componentes. Mirare a traves de alguna dll o algo asi. Ya que puedo generar el xml y en las plataformas de envio del xml a las administraciones publicas, dentro hay la opción de firmar gratuitamente con sus applets... por eso mirar de no pagar y repercutir el gasto a mis "ClientesDeGorra"
Si no al final acabare con SBB...
ademas la app esta hecha con Delphi 5... casi nada...


Buenas ,
No lo he mirado bien pero en ftp://ftp.zlatkovic.com/libxml/Delphi/ creo que tienes un ejemplo para firmar xml con las libXML y openssl.

Yo estoy empezando con todo este tema y si me pudieras pasar algun ejemplo o algo te lo agradeceria , x cierto creo que ya te lo he pedido en otro post.

Muchas gracias y un saludo .
Responder Con Cita
  #9  
Antiguo 11-02-2015
iMia iMia is offline
Miembro
 
Registrado: jul 2010
Posts: 141
Poder: 14
iMia Va por buen camino
Para el tema de la firma... desde delphi sólo con componentes de terceros $$ o €€ ...

Yo lo voy a solucionar de otra forma...

La AEAT/Ministerio/estado/etc... da las clases para firmar... pero en JAVA....

Pues a hacerlo en java y hacer un shellexecute...

Empiezo las pruebas de firma... iré comentando....
Responder Con Cita
  #10  
Antiguo 11-02-2015
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.473
Poder: 21
newtron Va camino a la fama
Cita:
Empezado por iMia Ver Mensaje
Para el tema de la firma... desde delphi sólo con componentes de terceros $$ o €€ ...

Yo lo voy a solucionar de otra forma...

La AEAT/Ministerio/estado/etc... da las clases para firmar... pero en JAVA....

Pues a hacerlo en java y hacer un shellexecute...

Empiezo las pruebas de firma... iré comentando....
Estupendo. Cualquier ayuda en ese sentido se agradece.
__________________
Be water my friend.
Responder Con Cita
  #11  
Antiguo 11-02-2015
iMia iMia is offline
Miembro
 
Registrado: jul 2010
Posts: 141
Poder: 14
iMia Va por buen camino
Cita:
Empezado por Kribbeling Ver Mensaje
Buenas ,
No lo he mirado bien pero en ftp://ftp.zlatkovic.com/libxml/Delphi/ creo que tienes un ejemplo para firmar xml con las libXML y openssl.

Yo estoy empezando con todo este tema y si me pudieras pasar algun ejemplo o algo te lo agradeceria , x cierto creo que ya te lo he pedido en otro post.

Muchas gracias y un saludo .
Lo he mirado, esta bién , pero no me sirve...
No firma xml en formato Xades enveloped, que es el que se necesita para la efactura.
Como he comentado en el mensaje de encima, la única forma gratuita es con las clases de la AEAT, pero son clases java. hay que crear un programa en java (.jar) que use esas clases para firmar con 3 parametros, el xml, el certificado y el ficherode salida (".xml" firmado ... ".xsig") y llamarlo con un shell execute....
Responder Con Cita
  #12  
Antiguo 11-02-2015
iMia iMia is offline
Miembro
 
Registrado: jul 2010
Posts: 141
Poder: 14
iMia Va por buen camino
Aquí estan las clases en java para firmar...

http://oficinavirtual.mityc.es/compo...des/index.html
Responder Con Cita
  #13  
Antiguo 12-02-2015
iMia iMia is offline
Miembro
 
Registrado: jul 2010
Posts: 141
Poder: 14
iMia Va por buen camino
Cita:
Empezado por aposi
Cita:
Empezado por iMia
Cita:
Empezado por aposi
Hola iMia,
he visto que generas el xml para la Efactura.
Me podrias passar un ejemplo de com lo generas? es que nunca he trabajado con xml y con el XML Data Binding tengo algunos problemas.
Si fueras tanamable de passar como generas el arxivo y si tienes solucionado el tema de la firma estaria muy agradecido
Hola aposi,

No es complicado, es laborioso, por que yo me he creado las clases de cada tipo de dato, (manualmente, ya que con el Databinding no se puede, ya que el extractor de clases a partir del xsd no funciona bien si hay referencias externas) y en cada clase he creado el metodo ToXML que genera los nodos.
Todas las clases anidadas, de esa forma al crear el objeto "padre" se crean todas las clases "hijas" y solo hay que rellenarlas con datos y llar al método TOXML que devuelve los nodos del XML.

mira el código que puse...

a partit de aquí crear las clases TFileHeader, TParties, etc...
Me podrias passar el codigo que te has creado si no es mucha molestia?
Hombre... ya he puesto lo básico, para tener un punto de patida... que ya es pero que mucho...
Para ponerme en el camino yo solito, sin orientación, tardé un par de semanas... y un par de semanas en tener la serialización fina y a mi gusto... por que la herramineta que he comentado que sí serializa no era de mi gusto lo que dejaba...
He dado pistas y codigo para tener más de la mitad de la faena hecha... y utilizando el serializador, sería toda la faena hecha... pero para hacerla hay que leer mucho y comprender bien que hay que hacer...
Si te pongo todo el código y te doy hecho todo mi trabajo... ¿me pagas lo mismo que mi empresa por ese mes de trabajo?
Responder Con Cita
  #14  
Antiguo 12-02-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.053
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por iMia Ver Mensaje
Si te pongo todo el código y te doy hecho todo mi trabajo... ¿me pagas lo mismo que mi empresa por ese mes de trabajo?
No es necesario ese tipo de comentarios, si quieres compartir tu código lo compartes y si no quieres, entonces mejor no digas nada. Aquí compartimos código y todo ese código es fruto de nuestro trabajo, encontrarás programas completos que se han compartido, utilidades, trucos, código de toda clase y tipo, algunos han costado poco hacerlo y otros son trabajo de meses o años.
Pero por eso estamos aquí, para compartir nuestros conocimientos, no para decirle a los demás que "a mí me costó un mes de trabajo, ¿me lo pagarás?"
Espero que lo hayas compartido, y en caso contrario, este no es tu sitio.
Responder Con Cita
  #15  
Antiguo 12-02-2015
iMia iMia is offline
Miembro
 
Registrado: jul 2010
Posts: 141
Poder: 14
iMia Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
No es necesario ese tipo de comentarios, si quieres compartir tu código lo compartes y si no quieres, entonces mejor no digas nada. Aquí compartimos código y todo ese código es fruto de nuestro trabajo, encontrarás programas completos que se han compartido, utilidades, trucos, código de toda clase y tipo, algunos han costado poco hacerlo y otros son trabajo de meses o años.
Pero por eso estamos aquí, para compartir nuestros conocimientos, no para decirle a los demás que "a mí me costó un mes de trabajo, ¿me lo pagarás?"
Espero que lo hayas compartido, y en caso contrario, este no es tu sitio.
Estoy comentando, explicando los pasos que he hecho, compartiendo , aportando mis pocos conocimientos con los demás, explicando los problemas que me he econtradom, para que los demás no los tengan que sufrir, poniendo parte del código que he hecho ...
Pero me insiste en que se lo pase todo... un foro es para compartir, que es lo que estoy haciendo, para ayudar y encaminar, que es lo que he hecho, para ahorrar horas de investigación, que es lo que he hecho... No para hacerle el trabajo a los demás... por que "como nunca he trabajo con XML"... leches, ni yo antes tampoco... pero ahora sí... por que he leido, investigado, he probado, me he equivocado, vamos, que he aprendido... y no por que me lo han dado hecho sin tener yo que hacer ningún esfuerzo...y sabes de sobras que en todos los foros, de este tipo de gente hay mucha... que sus únicas aportaciones son pedir código y luego silencio...

P.D.: Si no soy bienvenido, y a parte de aportar mi reducida experiencia y problemas que me he encontrado, estoy obligado a poner todo el codigo... pues tambien se dice... y me largo por donde he venido... sin problemas...
Responder Con Cita
  #16  
Antiguo 12-02-2015
aposi aposi is offline
Miembro
 
Registrado: dic 2006
Posts: 146
Poder: 18
aposi Va por buen camino
Cita:
Empezado por iMia Ver Mensaje
Hombre... ya he puesto lo básico, para tener un punto de patida... que ya es pero que mucho...
Para ponerme en el camino yo solito, sin orientación, tardé un par de semanas... y un par de semanas en tener la serialización fina y a mi gusto... por que la herramineta que he comentado que sí serializa no era de mi gusto lo que dejaba...
He dado pistas y codigo para tener más de la mitad de la faena hecha... y utilizando el serializador, sería toda la faena hecha... pero para hacerla hay que leer mucho y comprender bien que hay que hacer...
Si te pongo todo el código y te doy hecho todo mi trabajo... ¿me pagas lo mismo que mi empresa por ese mes de trabajo?
Solo por alusiones:
iMia siento que te sientas ofendido por mi petición.
Desde que me registre en este foro siempre he intentado responder a todos los usuarios que he podido ayudar.
En algunos casos he llegado a enviar codigos en privado de lo cual estoy muy orgullos de ello, ja que bajo mi punto de vista a parte de ayudar tambien me he visto recompensado ja que en algunos casos al que le he enviado el codigo ha detectado algun fallo o ha mejorado el funcionamento y esto ha echo que todos salimos ganando (El mundo de la programacion es muy amplio y una personano puede abarcar todos los puntos).

Vuelvo a repetir mis disculpas si te has sentido ofendido, ja que no era mi objetivo y como te comente en el primer correo el tema xml no lo he trabajado nunca.

PD. Estoy inventigando soluciones para firmar los ficheros y si encuentro una solucion util para todos la expondre en este tema
Responder Con Cita
  #17  
Antiguo 12-02-2015
iMia iMia is offline
Miembro
 
Registrado: jul 2010
Posts: 141
Poder: 14
iMia Va por buen camino
ale... ya está...
aquí lo tenéis todo para firmar desde java....

http://www.oracle.com/technetwork/ja...pi-140772.html
Responder Con Cita
  #18  
Antiguo 12-02-2015
Kribbeling Kribbeling is offline
Registrado
NULL
 
Registrado: feb 2011
Posts: 5
Poder: 0
Kribbeling Va por buen camino
Cita:
Empezado por iMia Ver Mensaje
Lo he mirado, esta bién , pero no me sirve...
No firma xml en formato Xades enveloped, que es el que se necesita para la efactura.
Como he comentado en el mensaje de encima, la única forma gratuita es con las clases de la AEAT, pero son clases java. hay que crear un programa en java (.jar) que use esas clases para firmar con 3 parametros, el xml, el certificado y el ficherode salida (".xml" firmado ... ".xsig") y llamarlo con un shell execute....

Suerte con la firma , yo he resuelto la creacion de la factura y de momento con eso me quedo.
Gracias x todo.
Responder Con Cita
  #19  
Antiguo 13-02-2015
iMia iMia is offline
Miembro
 
Registrado: jul 2010
Posts: 141
Poder: 14
iMia Va por buen camino
Fantástico! Enhorabuena!
Si lo que hemos puesto te ha servido, ni que sea, para poner media línea de código, ya estamos contentos nosotros también... (o almenos yo...)
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Mexico - Como crear sellos en FACTURA ELECTRONICA.. pcicom API de Windows 12 10-11-2012 18:46:55
Factura Electrónica aig Varios 13 10-12-2010 17:12:44
factura electronica spia Varios 2 22-02-2009 21:30:06
Factura electronica AUNA Aprendiz Varios 5 01-09-2005 10:44:15
programa para validar formato de archivo de texto n3mohack Varios 4 21-04-2005 00:27:00


La franja horaria es GMT +2. Ahora son las 17:52:55.


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
Copyright 1996-2007 Club Delphi