Skip to content

Integración de Ordenes con Operadores Externos

Motivación

 Debido a que se requiere comprometer información de las las ordenes creadas en el Sistema, con operadores (Carriers) externos desde la etapa mas temprana de las mismas, se ha diseñado este módulo flexible que se describe a lo largo del Documento.

 Surgió inicialment con la primera integración con OCA donde debia comprometerse etiquetas externas (propias de ese operador) en la impresión de etiquetas, y que luego posteriormente con Presis sufrió un refactor, para hacer más flexible la ejecución.

 En las siguientes secciones se describe el modulo, en sus distintos aspectos.

Flujo

Untitled

Ante la creación de una Orden, se muestra como es la delegación en los distintos servios y/o objetos del OMS, como así tambien a servicios externos (SL MS Carrier):

Básicamente lo que representa es que ante una creación de una Order por parte de un Cliente, surge en un punto de la ejecución la evaluación si integra o no con carriers desde esa etapa temprana.

 En caso de que asi sea, se procede a obtener información según la configuración del Carrier asociado y el Cliente involucrado, entre ellas se destacan:

·         Client: Si esta habilitado a operar con ese Carrier

·         Carrier:

-         Nombre del Servicio (al cual se le delegan las operaciones)

-         Configuración de la ejecución: si es asíncrona, y en caso de que lo sea, el nombre de la cola

 Luego el flujo depende si es sincrono o no. Y tal como se muestra, lo que radica es que información se compromete en la respuesta al cliente: en caso de que sea sincrono, se deberá comunicar con un servicio externo (MS Carriers) para remitirle informacion al Cliente acerca de la etiqueta externa (OCA por ejemplo), entre otros atributos. En caso asíncrono, se encola, para obtener esa en el futuro, devolviendo el control al ShippingService, para retornar una respuesta convensional.