Bueno el objetivo de esta entrada es permitir leer un XML desde un string (que puede ser obtenido mediante un Archivo o un Web Service, que no será tratado en la misma) y mediante el uso del Data type XMLReader procesarlo para que pueda ser usado en un SDT y todas las ventajas que este ofrece. Sin más que acotar empecemos.
Se declaran las variables:
- mensaje de tipo Varchar(200) o LongVarChar (2M) dependiendo del tamaño del texto. Esta variable contendrá el XML en forma de cadena de caracteres o de String.
- XMLReader de tipo XMLReader. Este tipo de objeto permitirá crear un lector para el procesamiento del formato XML. click aquí para más información.
- XML de tipo Varchar(200) o LongVarChar (2M) dependiendo del tamaño del texto, esta variable almacenará el XML crudo como String o cadena.
- SDT de tipo del SDT especialmente construido para guardar la información del XML.
Y mediante el código fuente a explicar:
Básicamente en las variables anteriores ya se definió el funcionamiento del siguiente código salvó la merecida explicación de las funciones Read() que permite procesar la información desde el string hacia el objeto XMLReader; y la función ReadRawXML() que permite enviar el contenido del lector como XML hacia una variable, para que esta pueda ser usada en el llenado del SDT con la función FromXML().
&XMLReader.OpenFromString(&mensaje)
&XMLReader.Read()
&XML = &XMLReader.ReadRawXML()
&SDT.FromXml(&XML)