Saltar a contenido

Integración por Lotes (Batch) de Afinidades de Producto

Introducción

Este documento describe la interfaz de carga de afinidades de producto en la TOL.

Una afinidad permite definir un conjunto de productos relacionados con otros productos. Estas afinidades se definen de forma asimétrica y especificando un valor de afinidad. Además, es posible definir diferentes tipos de afinidad.

Interface

La carga de afinidades es completa, cada vez que se carga un nuevo fichero, todas las afinidades son remplazadas por las nuevas. No existe como tal la gestión de bajas.

Formato del fichero

Diariamente y según la planificación establecida, se ejecutará un proceso que recibirá un archivo JSON con la información de las afinidades de productos mostrados en la tienda online

Este archivo tendrá el siguiente nombre: “prefijoNombrefichero”, donde:

  • Prefijo: Prefijo a definir en cada instalación (eje: producto_afinidad)
  • NombreFichero: A definir por el cliente en la instalación, p.ej . AAAAMMDDHHmmss

Planificación del proceso

Diariamente y según la planificación establecida, se ejecutará un proceso que recogerá el archivo JSON desde una carpeta del servidor de archivos definido y una vez procesado lo moverá a una carpeta de archivos procesados.

Las carpetas de lectura y de archivos procesados son configurables en cada instalación. Por defecto se usa la misma ruta que la carga de surtido

El proceso se puede lanzar de forma manual desde el back-office.

El proceso envía un mail a la cuenta de cargas con el resultado de la ejecución:

Image

Formato del archivo JSON

El archivo JSON tendrá la estructura siguiente:

Campo “Nombre campo” Descripción/Ejemplo Formato Oblig.
Afinidades “afinidades” Lista con la información de las afinidades Lista del Tipo Afinidad Sí
Campo “Nombre campo” Descripción/Ejemplo Formato Oblig.
Tipo “tipo” Tipo de afinidad. Por defecto es 1 Numérico entero No
Código Origen “codigo_origen” Código que identifica el producto origen Literal (50 caracteres máximos) Sí
Código Destino “codigo_destino” Código que identifica el producto destino Literal (50 caracteres máximos) Sí
Zona “zona” Identificador de la zona si la afinidad va por zona. Literal No
Valor “valor” Valor de afinidad entre los dos productos. Decimal Sí

ANEXOS. Ejemplos json

Ejemplo fichero de afinidades

{
  "afinidades": [
    {
      "codigo_origen": "113",
      "codigo_destino": "110",
      "valor": 20
    },
    {
      "codigo_origen": "113",
      "codigo_destino": "110",
      "valor": 21,
      "zona": 1
    }
  ]
}

Gestión de versiones

Versión Cambios
25.0 Importación inicial