error Factura electrónica

Post Reply
Loren
Posts: 458
Joined: Fri Feb 16, 2007 10:29 am
Location: Cadiz - España

error Factura electrónica

Post by Loren »

Buenas tardes:

Estoy implementando un nuevo módulo a mi programa para generar automáticamente los archivos .XML para facturas electrónicas.
Aparentemente me los genera "ok", pero cuando intento validarlos con el programa externo "FacturaE", me genera un error justo en el momento de la importación del tipo:

id factura | Error
x | Com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceExc...


¿ A qué puede ser debido ?

Mil gracias.
Saludos.
LORENZO.
Loren
Posts: 458
Joined: Fri Feb 16, 2007 10:29 am
Location: Cadiz - España

Re: error Factura electrónica

Post by Loren »

Gracias hmpaquito por contestar.

Ya solventé ese problema. Era el campo "dirección del cliente" que contenía caracteres tales como " º " y al parecer NO los reconoce.

Ahora tengo otro error: Me genera el XML (versión 3.2.1) y lo lee perfectamente cualquier lector de XML (por ejemplo el navegador), Sin embargo, cuando intento validarlo con "FacturaE" (programa específico para firmar digitales en España), me genera un error del tipo:

Id: Borrador-45 && estado de la factura-nº de factura
Error: Error de validación contra esquema XSD

Si consulto el esquema XSD para versión 3.2.1 XML, dice que el nº de factura debe ser "Caracteres máximo 20 dígitos."... y esto lo cumple!!

Si genero un archivo XML a través de "FacturaE" genera un archivo XML muy parecido al mio, donde la estructura "InvoiceNumber" es exactamente igual a la mia y sin embargo SI lo lee perfectamente.

Mi parte del código, donde al validar se genera el ERROR:

Code: Select all

     FWrite(facturaE,'<InvoiceHeader>'+ CRLF )
       FWrite(facturaE,'<InvoiceNumber>'+alltrim(str(gesfactu->numticket))+'</InvoiceNumber>'+ CRLF )
       FWrite(facturaE,'<InvoiceSeriesCode>Borrador-</InvoiceSeriesCode>'+ CRLF ) 
       FWrite(facturaE,'<InvoiceDocumentType>'+iif(gesfactu->fsimpli=.t.,'FA','FC')+'</InvoiceDocumentType>'+ CRLF ) 
       FWrite(facturaE,'<InvoiceClass>'+iif(gesfactu->LRECTIFI=.t.,'OR','OO')+'</InvoiceClass>'+ CRLF )
     FWrite(facturaE,'</InvoiceHeader>'+ CRLF )
 
La cabecera de mi archivo XML es copia exacta a la que genera FacturaE, tal cual:

Code: Select all

 facturaE := fCreate(cficheroXML,0) && nombre del fichero facturae: F_nºfactura/año factura.XML
 FWrite(facturaE,'<?xml version="1.0" encoding="ISO-8859-1"?>')
 FWrite(facturaE,'<fe:Facturae xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:fe="http://www.facturae.es/Facturae/2014/v3.2.1/Facturae">'+ CRLF)
 FWrite(facturaE,'<FileHeader>'+ CRLF )
   FWrite(facturaE,'<SchemaVersion>3.2.1</SchemaVersion>'+ CRLF )
   FWrite(facturaE,'<Modality>I</Modality>'+ CRLF )
   FWrite(facturaE,'<InvoiceIssuerType>EM</InvoiceIssuerType>'+ CRLF )
   ...
   ...
 
¿ Donde puede estar el fallo?
Por favor, algún alma caritativa....

Mil gracias.
LORENZO.
User avatar
Xevi
Posts: 168
Joined: Wed Nov 29, 2017 11:42 am
Location: Girona

Re: error Factura electrónica

Post by Xevi »

Lorenzo,

creo que esta línea es la que te está dand problemas.
FWrite(facturaE,'<InvoiceSeriesCode>Borrador-</InvoiceSeriesCode>'+ CRLF )

coméntala y prueba si ella
Un Saludo,
Xevi.

Aprendiz de la vida!!!
User avatar
AngelSalom
Posts: 664
Joined: Fri Oct 07, 2005 7:38 am
Location: Vinaros (Castellón ) - España
Contact:

Re: error Factura electrónica

Post by AngelSalom »

Usa este validador web : http://sedeaplicaciones2.minetur.gob.es/FacturaE/ que te dará más pistas.
Angel Salom
http://www.visionwin.com
---------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.0
Post Reply