Espero me puedan ayudar a resolver este inconveniente. Utilizando el componente HTTPRIO de Delphi7 logre consumir un WS desarrollado en .NET que retorna un DataTable. La respuesta del Web Service es un XML el cual le he asignado a un componente Memo. Al intentar leer el XML veo que no es un XML comun pues contiene un tipo de dato complexType del cual quiero leer sus elementos pero no tengo idea de como debo hacerlo.
A continuación copio el XML que quiero leer por si alguien me puede ayudar con alguna sugerencia.
Cita:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<ConsultarDatosClienteMercadeoResponse xmlns="http://tempuri.org/SecureService/SecureService">
<ConsultarDatosClienteMercadeoResult>
<xs:schema id="SetDeDatos" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="SetDeDatos" msdata:IsDataSet="true" msdata:MainDataTable="Datos" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Datos">
<xs:complexType>
<xs:sequence>
<xs:element name="COD_ASEG" type="xs:decimal" minOccurs="0" />
<xs:element name="IDENTIFICACION" type="xs:string" minOccurs="0" />
<xs:element name="NRO_RUC" type="xs:string" minOccurs="0" />
<xs:element name="NOMBRE_CLIENTE" type="xs:string" minOccurs="0" />
<xs:element name="CALIFICACION" type="xs:string" minOccurs="0" />
<xs:element name="OBSERVACION" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<SetDeDatos xmlns="">
<Datos diffgr:id="Datos1" msdata:rowOrder="0">
<COD_ASEG>00000</COD_ASEG>
<IDENTIFICACION>111111111</IDENTIFICACION>
<NOMBRE_CLIENTE>MENDOZA XXXX</NOMBRE_CLIENTE>
<OBSERVACION>CLIENTE</OBSERVACION>
</Datos>
<Datos diffgr:id="Datos2" msdata:rowOrder="1">
<COD_ASEG>11111</COD_ASEG>
<IDENTIFICACION>222222222</IDENTIFICACION>
<NOMBRE_CLIENTE> JOHN YYYYY</NOMBRE_CLIENTE>
<OBSERVACION>CLIENTE</OBSERVACION>
</Datos>
<Datos diffgr:id="Datos3" msdata:rowOrder="2">
<COD_ASEG>22222</COD_ASEG>
<IDENTIFICACION>333333333</IDENTIFICACION>
<NOMBRE_CLIENTE>JUAN XXXXXX</NOMBRE_CLIENTE>
<OBSERVACION>CLIENTE</OBSERVACION>
</Datos>
</SetDeDatos>
</diffgr:diffgram>
</ConsultarDatosClienteMercadeoResult>
</ConsultarDatosClienteMercadeoResponse>
</soap:Body>
</soap:Envelope>
|
Saludos.