El procedimiento principal asociado a la publicación de los métodos es el procedimiento WSIntercambioV1.
Este procedimiento se encuentra dentro de la folder APIs lo que quiere decir que no es un objeto que deba ser modificado por el programador.
Este procedimiento es el que contiene la declaración de cada uno de los stub asociados a los 4 métodos establecidos por DGI.
Cada uno de esos stubs realiza:
La invocación a las APIs de AddWebServiceLog y UpdWebServiceLogWithFilterData que son dos APIs (en principio dummy) que invocan a otros módulos de PXTools para el registro de Log del consumo de cáda método. Estas APIs no vienen en el módulo de Intercambio entre Emisores pero puden incorporarse en aquellos clientes que tenga licenciamiento de PXTools. Por más información seleccione aquí.
Invoca a un procedimiento común "ProcesamientoStub" que realizará:
La validación de los datos de entrada.
La ejecución de los procesos personalizables que se encargarán del almacenamiento de la información recibida.
El "ProcesamientoStub" encapsulado realiza las siguientes tareas:
Todos los tipos de validación que se deben realizar:
Verificar la existencia de RutReceptor o RUCReceptor según el método invocado.
Verifica la existencia de los datos del Certificado del Emisor que está consumiendo el servicio en base a la información de la conexión basada en WS-Security.
Invoca a ValWSDatosConexion que hace otras validaciones adicionales.
Verifica que el RUT destinatario del mensaje sea un RUT cliente del sistema que está recibiendo la comunicación.
Valida el schema del XMLData recibido según el método que se haya invocado.
Obtiene los datos del Certificado Digital asociado al RUT receptor y los almacena para poder firmar la respuesta del SOAP con el certificado asociado al RUT receptor.
Invoca a uno de los 4 Procedimientos Personalizables para el respectivo almacenamiento de la información recibida.
El procedimiento ValWSDatosConexion realiza las siguientes validaciones:
Verifica que el Certificado Digital recibido de la firma de contenido del request asociado al WS-Security:
Mantenga el estándar de DGI donde en el Serial Number contiene el RUT.
Esté vigente según la fecha vigencia del Certificado.
Verifica que el Certificado Digital del SOAP coincida con el Certificado Digital del XMLData firmado.
Verifica que la IP del servidor que se está comunicando no esté denegada.
Los cuatro Procedimientos dentro de la Folder "Personalized" Serán lo que deberán almacenar la información recibida en alguna tabla que el sistema deberá crear.
El objetivo de estos procedimientos no es procesar la información recibida sino simplemente almacenarla de forma de minimizar los tiempos de respuesta de consumo de estos servicios.
Esto no quiere decir que si el programador decide procesarlo en el momento, en principio no habría problema, pero no se han realizado pruebas en este sentido.
El procesamiento de la información recibida consideramos que es mejor procesarla en modalidad batch de forma de procesar esta información asincrónicamente del momento de la recepción de la misma.