Ver Mensaje Individual
  #2327  
Antiguo 04-08-2017
antoineL antoineL is offline
Registrado
NULL
 
Registrado: ago 2017
Posts: 8
Reputación: 0
antoineL Va por buen camino
[quote=Sergio J.;519773]Efectivamente, para que el sistema interprete el xml de respuesta y guarde dicha información en el sistema cómo lo hacéis?/QUOTE]

He probado unas cuantas cosas, y he acabado con el método siguiente:
  1. recupero el contenido de la respuesta SOAP/Envelope
  2. compruebo que no es Fault, que tiene Body
  3. paso el elemento dentro del Body por una transformación XSLT que me deja un elemento Respuesta (si en correcto o parcialmente correcto) con un montón de elementos-hijos RespuestaLinea o RespuestaLineaConError; si la respuesta es Incorrecto, es otro elemento madre con un montón de elementos-hijos RespuestaLineaConError
  4. vuelco el XML resultado de la transformación directamente a 4 tablas, donde puedo tranquilamente recuperar las varias partes, actualizar tablas etc.

La ventaja para mí es que así reduzco al mínimo la interfaz con el XML; antes tenía un montón de código que iba por las varias ramas del XML, pero tenía dudas que fuese sencillo de mantener en el futuro.

Si les interese el XSLT, está en http: //pastebin.ca/3850663 (perdonad las molestias del copiar y pegar y editar, soy novato; gracias por adelante al administrador que lo rectificará).
Responder Con Cita