Cita:
Empezado por PepCat
Si quieres mandar el XML directamente desde Delphi 6 puedes mirar el post #964 que en el caso del Delphi 7 funciona perfectamente.
|
Yo he conseguido enviar el XML en Delphi 7 siguiendo el ejemplo de Web Service que comenta el compañero.
El XML lo he construido a mano, ahora el problema lo tengo al interpretar el XML de respuesta. Estoy utilizando el componente TXMLDocument, pero no me deja acceder a los nodos hijos. ¿A alguien le ha pasado algo similar?¿Alguna recomendación de otro componente?
El nodo 'Body' lo encuentra, pero de ahí no paso
Código:
<?xml version="1.0" encoding="ISO-8859-1"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body Id="Body">
<siiR:RespuestaLRFacturasRecibidas xmlns:sii="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroInformacion.xsd" xmlns:siiR="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/RespuestaSuministro.xsd">
[....]
</siiR:RespuestaLRFacturasRecibidas>
</env:Body>
</env:Envelope>
Código:
nodoBody:= xmlDoc.DocumentElement.ChildNodes.FindNode('Body');
//pruebas debug...
nodoRespuestaLRFacturasRecibidas:= nodoBody.ChildNodes.FindNode('RespuestaLRFacturasRecibidas','siiR');
nodoRespuestaLRFacturasRecibidas:= xmlDoc.DocumentElement.ChildNodes.FindNode('RespuestaLRFacturasRecibidas','siiR');
nodoEstadoEnvio:= nodoRespuestaLRFacturasRecibidas.ChildNodes.FindNode('siiR:EstadoEnvio');
Gracias.