Ver Mensaje Individual
  #230  
Antiguo 02-03-2017
jlegido jlegido is offline
Miembro
NULL
 
Registrado: feb 2017
Posts: 17
Reputación: 0
jlegido Va por buen camino
Cita:
Empezado por javi_valencia44 Ver Mensaje
Tengo el mismo problema...
Hola javi_valencia44 y paquimd,

Ambos teneis el mismo problema que es que al Deserializar. Deserializar(es decir convertir un xml –en esencia un string – a un Objeto) os da errores.

Por ejemplo, hecho en codigo VB. Cargo un archivo llamado alta_factura.xml que he generado
Código:
      Dim filename As String = "G:\alta_factura.xml"  
      Dim reader As FileStream = New FileStream(filename, FileMode.Open)
      Dim ser As System.Xml.Serialization.XmlSerializer
      Dim facturas As New SuministroLRFacturasEmitidas
      ser = New System.Xml.Serialization.XmlSerializer(facturas.GetType())
      facturas = CType(ser.Deserialize(reader), SuministroLRFacturasEmitidas)
esto me dara error al serializarlo, ¿Por qué?: porque el nodo raiz de alta_factura.xml es
Código:
<soapenv:Envelope xmlns:soapenv="*://schemas.xmlsoap.org/soap/envelope/" xmlns:siiLR="*://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroLR.xsd" xmlns:sii="https://*.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroInformacion.xsd">
Pero el nodo raiz que admite un objeto tipo SuministroLRFacturasEmitidas es <siiLR:SuministroLRFacturasEmitidas>. Es decir que si generamos el xml por otros metodos distintos del uso de Objetos, no debemos poner ese primer nodo, si despues lo queremos enviar a AEAT de la forma
Código:
      Dim resul As RespuestaLRFEmitidasType
      resul = proxy.SuministroLRFacturasEmitidas(facturas)
Espero sea de ayuda

P.D. donde pongo * me refiero a un enlace (No tengo permiso para poner enlaces de forma normal)
Responder Con Cita