Ver Mensaje Individual
  #1543  
Antiguo 06-06-2017
scooterjgm scooterjgm is offline
Miembro
 
Registrado: ago 2004
Posts: 115
Reputación: 20
scooterjgm Va por buen camino
Cita:
Empezado por PepCat Ver Mensaje
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.
__________________
Hay 10 tipos de personas, las que entienden el código binario y las que no.

ww.clubdelphi.com/foros/guiaestilo.php
Responder Con Cita