FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#221
|
||||
|
||||
Cita:
http://www.agenciatributaria.es/AEAT...del_SII_.shtml Miraros las faqs que tienen varios ejemplos. Un Saludo. |
#222
|
||||
|
||||
Cita:
Saludos. |
#223
|
|||
|
|||
Cita:
|
#224
|
|||
|
|||
SIIHacienda
Cita:
Yo lo he hecho a base de XElements (Estructura XML) y Strings. Te digo más o menos como lo he hecho (Que supongo que no será la forma más óptima pero es como se me ha ocurrido) Para poner los prefijos de Sii, SiiLR y demás he usado esto: public static XNamespace NAMESPACE = @"*/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroLR.xsd"; Para crear los nodos XElement con sus prefijos: XElement root = new XElement(NAMESPACE + "SuministroLRFacturasEmitidas"); Para poner la cabecera yo he usado esto: XElement Envelope = new XElement(soapenv + "Envelope", new XAttribute(XNamespace.Xmlns + "soapenv", @"*schemas.xmlsoap.org/soap/envelope/"), new XAttribute(XNamespace.Xmlns + "siiLR", @"*/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroLR.xsd"), new XAttribute(XNamespace.Xmlns + "sii", @"*/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroInformacion.xsd")); XElement Header = new XElement(soapenv + "Header"); Envelope.Add(Header); String file = Utilidades.CreateXMLFile(Envelope, i, "Alta Facturas Emitidas"); Mi Utilidades.CreateXMLFile: XmlTextWriter writer = new XmlTextWriter(archivoPath, Encoding.UTF8); //Con esto de aquí le pones la primera línea esa "<?xml version="1.0" encoding="UTF-8"?>" writer.WriteStartDocument(); writer.Formatting = Formatting.Indented; xml.WriteTo(writer); writer.Flush(); writer.Close(); Espero haberte ayudado. P.D. donde pongo * me refiero a una enlace (No me deja copiarlos tal cual) xD |
#225
|
|||
|
|||
Cita:
Si, muchas gracias,me ha sido util tu codigo. Yo tenia ya algo parecido hecho con XmlWriter. De todas formas , me faltaria saber que contiene la variable soapenv, que tu pones en varias partes del codigo, p.e. Código:
XElement Header = new XElement(soapenv + "Header"); Código:
resul = proxy.SuministroLRFacturasEmitidas(AsuminstroFacturasEmitidas) |
#226
|
|||
|
|||
Esta mañana me han confirmado que era una incidencia de ellos y que ya estaba solucionado.
|
#227
|
|||
|
|||
Cita:
resul = proxy.SuministroLRFacturasEmitidas(AsuminstroFacturasEmitidas) pero al serializar me da errores. Gracias |
#228
|
|||
|
|||
Pues no les costaría tanto mandar una respuesta diciendo "estamos en obras". Y todos tranquilos.
|
#229
|
||||
|
||||
Cita:
Pero no hay mal que por bien no venga, de esta manera descubrí el Wizdler. Que gozaba!! Todavía estoy flipandolo! |
#230
|
|||
|
|||
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) 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"> Código:
Dim resul As RespuestaLRFEmitidasType resul = proxy.SuministroLRFacturasEmitidas(facturas) P.D. donde pongo * me refiero a un enlace (No tengo permiso para poner enlaces de forma normal) |
#231
|
|||
|
|||
Cita:
'siiLR' es un prefijo no declarado |
#232
|
|||
|
|||
A mi me ocurría lo mismo. Para que te deserialice tienes que quitar todos los prefijos Sii: del xml, dejarlo así:
Código:
<SuministroLRFacturasEmitidas> <Cabecera> <IDVersionSii>0.5</IDVersionSii> <Titular> Gracias de antemano a todos. |
#233
|
|||
|
|||
Cita:
El XML no cumple el esquema. Falta informar campo obligatorio.: Cabecera |
#234
|
|||
|
|||
Cita:
Código:
<siiLR:SuministroLRFacturasEmitidas> <sii:Cabecera> <sii:IDVersionSii>0.5</sii:IDVersionSii> <sii:Titular> |
#235
|
|||
|
|||
Cita:
Los estoy importando pero ni por esas: Imports <xmlns:siiLR="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroLR.xsd"> Imports <xmlns:sii="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroInformacion.xsd"> |
#236
|
|||
|
|||
Cita:
|
#237
|
|||
|
|||
Cita:
En ninguna parte del código agregas los namespaces? |
#238
|
|||
|
|||
Sí los agrego. Construyo el XML, con iteración de facturas, y pongo el namespace que corresponde a cada línea. Una vez completado el XML, lo mando y obtengo la respuesta esperada. Todo correcto, u otras cosas, como Factura duplicada si vuelvo a mandar el mismo.
|
#239
|
|||
|
|||
Cita:
Código:
<SuministroLRFacturasEmitidas> <Cabecera> <IDVersionSii>0.5</IDVersionSii> <Titular> Saludos |
#240
|
|||
|
|||
Cita:
Creo que el error de las cabeceras os puede venir porque: - El objeto deserializer no admite campos soap. Por dicho motivo y como bien dices, debes tomar la parte del xml que comprende el nodo <SuministroLRFacturasEmitidas> - No le estáis pasando el namespace al XmlSerializer. El mío lo tengo así (para el registro facturas emitidas): Código:
Dim x As New XmlSerializer(_SuministroLRFacturasEmitidas.GetType, "https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroLR.xsd") ', "https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroLR.xsd") ' A FileStream is needed to read the XML document. Dim filename As String = "facturaEmitidaMODEL.XML" Using reader As New FileStream(filename, FileMode.Open) _SuministroLRFacturasEmitidas = CType(x.Deserialize(reader), SuministroLRFacturasEmitidas) End Using |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
TICKET BAI (TicketBAI); Nuevo sistema de la Agencia Tributaria del Pais Vasco | keys | Internet | 4288 | Hace 1 Semana 13:58:30 |
AEAT envio de datos vía Webservice problemas con WSDL | CelsoO | Internet | 11 | 09-10-2019 21:03:41 |
webService Soap de la Administración Digital Española notific@ | apicito | Internet | 3 | 31-01-2017 12:25:28 |
Error en Webservice funcion envio de sms | webmasterplc | Delphi para la web | 5 | 25-07-2013 21:10:29 |
Problemas con envío de XML a un WebService | davidvamo | Internet | 1 | 13-02-2007 16:49:20 |
|