Skip to main content

CMS - Carga CSV de Reclamaciones

Resumen

El sistema de carga de CSV para la Gestión de Reclamaciones permite subir y gestionar los datos del flujo de reclamaciones mediante dos archivos CSV: uno en inglés y otro en árabe. El sistema incluye validación, funcionalidad de vista previa y gestión de errores para garantizar la integridad de los datos.

Leyenda de códigos de referencia

Acciones

Código Definición
X Ir al siguiente nodo
Q Pregunta al cliente
QP Pedir prueba al cliente, subir foto
S Mostrar el pedido del cliente para elegir un artículo
CB Devolver llamada al cliente
R Reembolso
R30 Reembolso del 30% del artículo por defecto
T Valoración
TT Transferencia del ticket a un agente para evaluación manual
QD Cuadro de diálogo
QPD Cuadro de diálogo y subida de foto
PHONE Facilitar el teléfono del repartidor en el campo variable {%phone%}
R100P150 Reembolso del 100% del valor del pedido, hasta 150 SAR

Estado

Código Definición
CA Cerrado - Abandonado
C Cerrado
O Abierto

Condiciones

Código Definición
NOPHONE El teléfono del repartidor no está disponible
YESPHONE El teléfono del repartidor está disponible
RP Reembolso de Garantía Platinum procesado
RNP Reembolso de Garantía no procesado
GSE Suscripción Gold caducada
GSNE Suscripción Gold no caducada
GTP El cliente pasó de Gold a Platinum
PSE Suscripción Platinum caducada
PSNE Suscripción Platinum no caducada
SLABD30 Incumplimiento del SLA de entrega - Garantía Platinum de 30 min desde el inicio teórico de producción hasta la llegada al cliente
NOSLAB30 No se ha incumplido el SLA de entrega Platinum de 30 min
SLABPU15 Incumplimiento del SLA de recogida - Garantía Platinum de 15 min desde el inicio teórico hasta el fin real de producción
NOSLAB15 No se ha incumplido el SLA de recogida Platinum de 15 min
SLABD Incumplimiento del SLA de entrega (SLA = 40 min)
SLABPU Incumplimiento del SLA de recogida (SLA = 15 min)
N Sin condición
ITEMCHECKS El artículo seleccionado del pedido debe ser únicamente un acompañamiento
NOSLAB Sin incumplimiento de SLA en recogida ni en entrega
CHECKCUSTY Se han añadido personalizaciones a la pizza
CHECKCUSTN No se han añadido personalizaciones a la pizza
ORSPT El pedido es para recoger en tienda (Pickup/Takeaway)
ORSD El pedido es a domicilio (Delivery)
SLABD20 El incumplimiento del SLA está entre 1 y 20 min
SLABD2035 El incumplimiento del SLA está entre 20 y 35 min
SLABD3550 El incumplimiento del SLA está entre 35 y 50 min
SLABD50+ El incumplimiento del SLA supera los 50 min
WMP Hay saldo disponible en el monedero (wallet) de la cuenta
WMPF El saldo del monedero es 0
EXEMPT Si el reembolso se concede con Exempt en la Acción, no debe contabilizarse en el perfilado futuro del cliente

Variables

Código Inglés Árabe
{%wallet%} (%AMOUNT%) in your wallet (%AMOUNT%) في محفظتك.
{%wallet%} (%Loyalty Points%) rewards points (%Loyalty Points%) نقطة مكافأة.
{%wallet%} (%AMOUNT%) in your wallet & (%Loyalty Points%) rewards points (%AMOUNT%) في محفظتك و (%Loyalty Points%) نقطة مكافأة.
{%currency%} SAR ريال سعودي.
{%currency%} AED درهم إماراتي.

(El contenido de esta tabla corresponde a los textos exactos que el sistema inserta en inglés y árabe; no se traduce para no alterar las cadenas reales usadas en producción.)

Niveles de fidelización (Loyalty Tiers)

Código Definición
S Silver (Plata)
G Gold (Oro)
P Platinum (Platino)

Tipos de cliente

Código Definición
H Healthy (saludable / sin incidencias)
A Alert (en seguimiento)
B Abusive (abusivo)

Flujo del proceso de carga

1. Selección de archivos

  • CSV en inglés: contiene la estructura principal del flujo de reclamaciones con todos los datos de los nodos.
  • CSV en árabe: contiene las traducciones al árabe de las descripciones de los nodos.
  • Formato de archivo: solo se admiten archivos .csv.
  • Requisito: ambos archivos deben seleccionarse antes de continuar.

2. Validación de archivos

El sistema realiza una validación exhaustiva en el siguiente orden:

  1. Validación de formato: comprueba la estructura del archivo y las columnas requeridas.
  2. Validación de datos: valida los tipos de datos y los campos obligatorios.
  3. Validación de flujo: verifica la lógica del flujo de los procesos de reclamación.

3. Ejecución de la carga

  • Los archivos se suben a las tablas de la base de datos de pruebas (test).
  • Los datos existentes de las reclamaciones de la marca seleccionada se sustituyen por los nuevos.
  • La carga se realiza mediante transacciones, lo que garantiza la consistencia de los datos.

Requisitos de formato de archivo

Estructura del CSV en inglés

Columnas obligatorias (distinguen mayúsculas/minúsculas):

  • NODE_ID - Identificador numérico (obligatorio, único)
  • CUST_ID - ID de cliente (numérico, obligatorio)
  • PARENT_NODE_ID - Referencia al nodo padre (numérico o NULL)
  • DESCRIPTION - Descripción del nodo en inglés (obligatorio, no vacío)
  • SHORT_NAME - Nombre corto para mostrar (obligatorio)
  • CUSTOMER_TYPE - Clasificación del tipo de cliente
  • LOYALTY_TIER - Indicador de nivel de fidelización
  • ACTION - Tipo de acción para este nodo
  • CONDITION - Lógica condicional (si aplica)
  • LAST_NODE - Indicador de nodo final
  • STATUS - Estado del nodo

Separador de columnas: punto y coma (;)

Estructura del CSV en árabe

Columnas obligatorias (distinguen mayúsculas/minúsculas):

  • NODE_ID - Debe coincidir con el NODE_ID del CSV en inglés (numérico, obligatorio)
  • CUST_ID - Debe coincidir con el CUST_ID del CSV en inglés (numérico, obligatorio)
  • PARENT_NODE_ID - Referencia al nodo padre (numérico o NULL)
  • Description (Arabic) - Traducción al árabe (obligatorio, no vacío)
  • SHORT_NAME - Nombre corto en árabe

Separador de columnas: punto y coma (;)

Proceso de validación

Paso 1: Validación del formato del archivo

El sistema comprueba:

  • ✅ El archivo contiene cabeceras y al menos una fila de datos
  • ✅ Están presentes todas las columnas obligatorias
  • ✅ El número de columnas coincide en todas las filas
  • ✅ La codificación del archivo es compatible con UTF-8

Errores de formato habituales:

  • Faltan columnas obligatorias
  • Separador de columnas incorrecto (debe ser ;)
  • Archivos vacíos o que solo contienen la cabecera
  • Número de columnas distinto entre filas

Paso 2: Validación del tipo de datos

El sistema valida:

  • ✅ NODE_ID es numérico
  • ✅ CUST_ID es numérico
  • ✅ PARENT_NODE_ID es numérico o NULL
  • ✅ Los campos de texto obligatorios no están vacíos
  • ✅ Las descripciones en árabe contienen texto válido

Errores de datos habituales:

  • Valores no numéricos en campos de ID
  • Campos de descripción vacíos
  • Codificación de caracteres inválida
  • Faltan valores en campos obligatorios

Paso 3: Validación del flujo

Comprobaciones avanzadas de validación:

  • ✅ Integridad de la jerarquía de nodos
  • ✅ Relaciones padre-hijo
  • ✅ Detección de referencias circulares
  • ✅ Validación de nodos finales
  • ✅ Consistencia del tipo de acción
  • ✅ Validación del patrón de variables

Indicadores de estado de la carga

Iconos de estado del archivo

  • 🔄 Validando: validación del archivo en curso
  • ✅ Validado: el archivo ha superado todas las comprobaciones
  • ⏳ En espera: archivo en cola para validación
  • ⚠️ Aviso: archivo seleccionado pero no validado
  • ❌ Error: la validación ha fallado

Mensajes de estado de la carga

  • 📤 "Uploading" (Subiendo): los archivos se están procesando en el servidor
  • ✅ "Files uploaded successfully" (Archivos subidos correctamente): la carga finalizó sin errores
  • ❌ "Upload failed" (Error en la carga): error del servidor durante el proceso de carga

Mensajes de error y soluciones

Errores de selección de archivo

Error Solución
"Select both English and Arabic CSV files" Debe seleccionar tanto el CSV en inglés como el CSV en árabe
"Both files must be validated" Haga clic en "Validate Files" tras seleccionar ambos archivos

Errores de validación de formato

Error Causa Solución
"File must contain header and at least one data row" Archivo vacío o sin datos Asegúrese de que el archivo tiene cabecera y filas de datos
"Missing required column: [COLUMN_NAME]" No se encuentra una columna obligatoria Añada la columna que falta a la cabecera del CSV
"Row X: Column count mismatch" Número de columnas inconsistente Asegúrese de que todas las filas tienen el mismo número de columnas
"Error reading CSV file" Corrupción del archivo o problema de codificación Vuelva a guardar el archivo como CSV UTF-8 con separador de punto y coma

Errores de validación de datos

Error Causa Solución
"Row X: NODE_ID must be numeric" NODE_ID no numérico Asegúrese de que NODE_ID contiene solo números
"Row X: CUST_ID must be numeric" CUST_ID no numérico Asegúrese de que CUST_ID contiene solo números
"Row X: PARENT_NODE_ID must be numeric or NULL" Referencia de nodo padre inválida Use números o exactamente "NULL"
"Row X: Arabic description is required" Falta el texto en árabe Añada la descripción en árabe para todos los nodos

Errores de procesamiento en el servidor

Error Causa Solución
"No valid English CSV data found" Archivo en inglés vacío o inválido Revise el formato y los datos del archivo en inglés
"No valid Arabic CSV data found" Archivo en árabe vacío o inválido Revise el formato y los datos del archivo en árabe
"English CSV row X: Invalid NODE_ID" Fallo de validación en el servidor Revise el formato y la unicidad del NODE_ID
"Arabic CSV row X: Missing Description (Arabic)" Fallo de validación en el servidor Asegúrese de que todas las descripciones en árabe están presentes
"Maximum 2 files allowed" Se han subido demasiados archivos Suba exactamente 2 archivos (inglés + árabe)

Errores de validación del flujo

Error Causa Solución
"The flow of both files must be validated" No se ha realizado la validación del flujo Haga clic en el botón "Validate Flow"
"The files have flow validation errors that must be corrected" La validación del flujo encontró incidencias Revise el cuadro de diálogo de validación de flujo para ver los errores concretos

Guía de resolución de problemas

Problema: los archivos no se suben

Compruebe:

  • Que ambos archivos estén seleccionados
  • Que ambos archivos se hayan validado correctamente
  • Que la validación de flujo haya finalizado sin errores
  • Que la marca seleccionada sea la correcta

Problema: la validación falla repetidamente

Soluciones:

  1. Descargue los datos actuales para ver el formato esperado
  2. Compruebe la codificación del archivo (debe ser UTF-8)
  3. Verifique que el separador de columnas es el punto y coma (;)
  4. Asegúrese de que no hay caracteres ocultos ni formato adicional

Problema: la validación del flujo muestra errores

Acciones:

  1. Abra el cuadro de diálogo de validación de flujo
  2. Revise los mensajes de error concretos
  3. Compruebe las relaciones padre-hijo en los datos
  4. Verifique la integridad de la jerarquía de nodos
  5. Corrija los datos y vuelva a validar

Problema: la carga falla tras la validación

Investigación:

  1. Compruebe la conexión con el servidor
  2. Verifique los límites de tamaño de archivo
  3. Revise la consola del navegador en busca de errores
  4. Contacte con el administrador del sistema si el problema persiste

Notas técnicas

Comportamiento del sistema

  • Entorno: las cargas de CSV siempre van al entorno de pruebas (test)
  • Sustitución de datos: los datos de reclamaciones existentes se sustituyen por completo al subir un CSV en el entorno de pruebas
  • Seguridad transaccional: las cargas fallidas no corrompen los datos existentes
  • Procesamiento de archivos: los archivos se procesan de forma secuencial durante la validación
  • Límites de memoria: los archivos grandes pueden provocar problemas de rendimiento en el navegador

Buenas prácticas

Preparación del archivo

  1. Use una codificación consistente: guarde los archivos CSV como UTF-8
  2. Compruebe los separadores: use el punto y coma (;) como separador de columnas
  3. Valide los NODE_ID: asegúrese de que los NODE_ID coinciden entre el archivo en inglés y el archivo en árabe
  4. Revise las descripciones: verifique que todas las descripciones sean coherentes y estén completas

Prevención de errores

  1. Uso de plantillas: use una exportación de datos existente como plantilla para nuevas cargas
  2. Validación de datos: revise los datos en una hoja de cálculo antes de exportar
  3. Estrategia de copia de seguridad: conserve los archivos originales como copia de seguridad antes de procesarlos
  4. Pruebe con un conjunto de datos pequeño: valide el proceso con un subconjunto de datos primero

Estrategia de carga

  1. Validación secuencial: complete la validación de archivos antes de la validación de flujo
  2. Revisión antes de subir: compruebe todos los mensajes de validación antes de la carga final
  3. Selección de marca: verifique que la marca correcta está seleccionada antes de subir
  4. Momento de la carga: realice las cargas en horas de bajo tráfico