Skip to content

Relacion Movimiento de Cuenta Corriente - Bridge de Ventas (UUID)

Modulo: Cuenta Corriente (CtaCte) - Integracion con Ventas Tipo: Resource Estado: Planificado Fecha: 2025-12-29


Descripcion

Problema de Negocio Actual

Actualmente, los movimientos de cuenta corriente de clientes se relacionan con los comprobantes de venta mediante una referencia compuesta que utiliza dos campos: el numero de comprobante (nrocomp) y el identificador del tipo de comprobante (id_tipo_comprobante). Esta arquitectura presenta las siguientes limitaciones:

  1. Complejidad en las consultas: Para localizar el comprobante de venta asociado a un movimiento de cuenta corriente, se requiere realizar busquedas utilizando dos campos de forma simultanea, lo que complica las consultas y la logica de negocio.

  2. Inconsistencia con el patron bridge: El sistema ha evolucionado hacia el uso de identificadores globales unicos (UUID) para comprobantes de venta a traves del bridge de ventas (documentado en bridge-ventas-resource.md). Los movimientos de cuenta corriente aun utilizan el metodo antiguo de referencia compuesta, generando inconsistencia en la arquitectura.

  3. Ambiguedad en sistemas multi-sucursal: El numero de comprobante (nrocomp) es secuencial por sucursal, lo que significa que el mismo numero puede existir en diferentes sucursales. Aunque el tipo de comprobante ayuda a distinguir, la referencia compuesta no proporciona la misma unicidad que un UUID global.

  4. Dificultad en integraciones y reportes: Los reportes consolidados y las integraciones entre modulos deben manejar la logica de referencia compuesta, aumentando la complejidad y el riesgo de errores.

  5. Mantenimiento del sistema: Cualquier cambio en la estructura de numeracion de comprobantes o tipos de comprobante requiere revisar y actualizar multiples puntos del sistema que dependen de la referencia compuesta.

Necesidad del Negocio

El sistema requiere que los movimientos de cuenta corriente de clientes utilicen el UUID del bridge de ventas como mecanismo de vinculacion con los comprobantes de venta. Esta evolucion proporcionara:

  1. Referencia unica e inequivoca: Cada movimiento de cuenta corriente estara vinculado a un comprobante de venta mediante un identificador global unico, eliminando la necesidad de referencias compuestas.

  2. Consistencia arquitectonica: Todos los modulos que referencian comprobantes de venta utilizaran el mismo mecanismo (UUID del bridge), creando un patron uniforme en todo el sistema.

  3. Simplificacion de consultas: Las consultas para localizar comprobantes asociados a movimientos se simplificaran al requerir un solo campo de referencia.

  4. Preparacion para el futuro: La adopcion del patron bridge prepara al sistema para futuras integraciones y evoluciones, manteniendo una arquitectura coherente.

Valor de Negocio

La implementacion de esta funcionalidad aportara los siguientes beneficios:

  1. Trazabilidad mejorada: Cada movimiento de cuenta corriente podra rastrearse directamente al comprobante de venta que lo origino mediante un identificador unico y universal.

  2. Integridad de datos garantizada: La relacion mediante UUID permite validaciones de integridad referencial mas robustas y confiables.

  3. Eficiencia operativa: Los usuarios y procesos del sistema podran consultar y relacionar informacion de forma mas rapida y directa.

  4. Reduccion de errores: La eliminacion de referencias compuestas reduce la posibilidad de errores por asociaciones incorrectas entre movimientos y comprobantes.

  5. Auditoria simplificada: Los procesos de auditoria y conciliacion se beneficiaran de una relacion directa y univoca entre movimientos y comprobantes.

  6. Consolidacion confiable: Los reportes consolidados a nivel empresa podran relacionar movimientos de cuenta corriente con comprobantes de venta de cualquier sucursal sin ambiguedades.

Contexto en el Proceso de Negocio

Esta funcionalidad se integra en los siguientes flujos de negocio:

Flujo de registro de comprobantes de venta:

  1. El usuario registra un comprobante de venta (factura, nota de credito, nota de debito)
  2. El sistema genera automaticamente el identificador global unico (UUID) en el bridge de ventas
  3. El sistema genera el movimiento de cuenta corriente correspondiente (debito o credito segun tipo de comprobante)
  4. [Esta funcionalidad] El sistema registra el UUID del bridge de ventas en el movimiento de cuenta corriente
  5. La relacion queda disponible para consultas y trazabilidad inmediata

Flujo de migracion de datos existentes:

  1. El proceso de migracion identifica movimientos de cuenta corriente que utilizan la referencia compuesta
  2. Para cada movimiento, localiza el comprobante de venta asociado mediante nrocomp + id_tipo_comprobante
  3. El sistema obtiene el UUID del bridge de ventas correspondiente al comprobante
  4. El sistema actualiza el movimiento de cuenta corriente con el UUID del bridge
  5. El sistema valida la integridad de los datos migrados

Flujo de consulta de movimientos:

  1. El usuario consulta los movimientos de cuenta corriente de un cliente
  2. El sistema muestra la lista de movimientos
  3. El usuario selecciona un movimiento originado por una venta
  4. [Esta funcionalidad] El sistema utiliza el UUID del bridge para localizar directamente el comprobante asociado
  5. El usuario visualiza la informacion del comprobante de venta

Frontend

NO APLICA

Esta funcionalidad corresponde a un cambio relacional interno en la base de datos que no afecta la interfaz de usuario del frontend de la aplicación web/móvil. La relación entre movimientos de cuenta corriente y comprobantes de venta mediante UUID del bridge es transparente para el usuario final.

Módulo de Reportes PDF

El único componente afectado es el módulo de generación de reportes en formato PDF. Específicamente, los siguientes reportes del módulo de cuenta corriente:

Reportes Afectados

  1. Resumen de Cuenta:

    • Muestra el detalle de movimientos de cuenta corriente de clientes
    • Impacto: Actualmente usa nrocomp + id_tipo para obtener información de comprobantes y sus ítems
    • Cambio requerido: Utilizar UUID del bridge para consultar facturas, notas de crédito y sus detalles
    • Funcionalidad afectada: Opción "Mostrar detalle de ítems" que obtiene los productos/servicios de facturas y notas de crédito asociadas a cada movimiento
  2. Listado de Saldos:

    • Muestra resumen de saldos por cliente con fecha del último movimiento
    • Impacto: Trabaja con movimientos de cuenta corriente pero no consulta detalle de comprobantes
    • Cambio requerido: Mínimo o ninguno (usa solo fechas y saldos)
  3. Comprobante Registrado:

    • Imprime comprobantes de cuenta corriente generados
    • Impacto: A evaluar según uso de referencias a comprobantes de venta

Nota importante: Estos cambios en los reportes PDF son internos a la lógica de consulta de datos. La presentación visual y el contenido del reporte para el usuario final permanecen sin cambios. El UUID del bridge se utiliza para consultas más eficientes y consistentes, pero no se expone al usuario en el documento PDF. Las modificaciones serán transparentes para los usuarios finales.


Backend

Entidades de Negocio

Esta funcionalidad involucra las siguientes entidades de negocio:

Movimiento de Cuenta Corriente

Representa cada registro de debito o credito en la cuenta corriente de un cliente. Los movimientos originados por comprobantes de venta (facturas, notas de credito, notas de debito) deben estar vinculados al comprobante que los genero.

Caracteristicas de negocio relevantes:

  • Cada movimiento tiene un tipo (debito o credito)
  • Los movimientos originados por ventas deben referenciar al comprobante origen
  • El movimiento afecta el saldo del cliente
  • Los movimientos son inmutables una vez registrados

Identificador Global de Comprobante de Venta (Bridge de Ventas)

Representa el mapeo entre el identificador local de un comprobante de venta y su identificador unico a nivel empresa (UUID). Este bridge permite referenciar cualquier comprobante de venta de forma univoca.

Caracteristicas de negocio relevantes:

  • El UUID es unico en toda la empresa
  • El UUID es inmutable una vez asignado
  • El bridge contiene la informacion del tipo de comprobante y sucursal de origen
  • Todos los comprobantes de venta tienen un registro en el bridge

Relacion Movimiento - Bridge de Ventas

Representa el vinculo entre un movimiento de cuenta corriente y el comprobante de venta que lo origino, mediante el UUID del bridge de ventas.

Caracteristicas de negocio:

  • La relacion es de uno a uno: un movimiento de cuenta corriente originado por venta tiene exactamente un UUID de bridge asociado
  • La relacion es obligatoria para movimientos originados por comprobantes de venta
  • La relacion no aplica para movimientos manuales o de otros origenes

Datos Necesarios

Para la relacion con el bridge de ventas

DatoDescripcionObligatoriedad
Identificador del movimientoIdentificador unico del movimiento de cuenta corrienteObligatorio
UUID del bridge de ventasIdentificador global unico del comprobante de venta asociadoObligatorio para movimientos originados por ventas
Referencia compuesta (temporal)Numero de comprobante + tipo de comprobanteObligatorio durante periodo de transicion

Nota sobre compatibilidad temporal: Durante el periodo de transicion, el sistema mantendra ambos metodos de referencia (UUID del bridge y referencia compuesta) para garantizar la continuidad operativa.

Relaciones de Negocio

Movimiento de Cuenta Corriente ---- (1:1) ---- Identificador Global de Venta (Bridge)

Cardinalidades:

  • Un movimiento de cuenta corriente originado por venta tiene exactamente un UUID de bridge asociado
  • Un UUID de bridge (comprobante de venta) puede estar asociado a uno o mas movimientos de cuenta corriente

Ejemplos de relacion:

  • Una factura de venta genera un debito en la cuenta corriente del cliente (un movimiento, un UUID)
  • Una nota de credito de venta genera un credito en la cuenta corriente del cliente (un movimiento, un UUID)
  • Una nota de debito de venta genera un debito adicional en la cuenta corriente del cliente (un movimiento, un UUID)

Validaciones de Negocio

Para el registro de la relacion

  1. Existencia del UUID:

    • El UUID del bridge de ventas referenciado debe existir en el sistema
    • El sistema debe rechazar movimientos con referencias a UUID inexistentes
  2. Validez del UUID:

    • El UUID debe corresponder a un comprobante de venta existente en el bridge
    • El UUID debe corresponder a un comprobante de la misma empresa
  3. Unicidad de la relacion:

    • Un movimiento de cuenta corriente solo puede tener un UUID de bridge asociado
    • El sistema debe rechazar intentos de asignar multiples UUID a un mismo movimiento
  4. Consistencia de cliente:

    • El comprobante de venta referenciado debe corresponder al mismo cliente del movimiento de cuenta corriente
    • El sistema debe validar que el cliente del movimiento coincida con el cliente del comprobante
  5. Obligatoriedad para movimientos de venta:

    • Todo movimiento de cuenta corriente originado por un comprobante de venta debe tener asociado el UUID del bridge
    • Los movimientos manuales o de otros origenes pueden no tener UUID asociado
  6. Inmutabilidad de la relacion:

    • Una vez asignado, el UUID del bridge no puede modificarse
    • La relacion se elimina unicamente cuando el movimiento o el comprobante se eliminan

Reglas de Negocio

RN-001: Asignacion obligatoria del UUID al crear movimiento de venta

Descripcion: Cuando se crea un movimiento de cuenta corriente originado por un comprobante de venta, el sistema debe asignar automaticamente el UUID del bridge de ventas correspondiente.

Condicion: Se registra un nuevo comprobante de venta que genera movimiento en cuenta corriente (factura a credito, nota de credito, nota de debito).

Accion:

  • El sistema obtiene el UUID del bridge de ventas del comprobante registrado
  • El sistema registra el UUID en el movimiento de cuenta corriente generado
  • La asignacion es atomica con la creacion del movimiento

Fundamento: Garantiza que todo nuevo movimiento de cuenta corriente originado por venta tenga la relacion con el bridge desde el momento de su creacion, manteniendo la integridad de datos.


RN-002: Validacion de existencia del UUID

Descripcion: El UUID del bridge de ventas debe existir y ser valido antes de asociarlo a un movimiento de cuenta corriente.

Condicion: Se intenta crear o asociar un UUID de bridge a un movimiento de cuenta corriente.

Accion:

  • El sistema verifica que el UUID exista en el bridge de ventas
  • El sistema verifica que el comprobante asociado sea valido y no haya sido eliminado
  • Si el UUID no existe, el sistema rechaza la operacion con mensaje descriptivo

Fundamento: Asegura la integridad referencial entre movimientos de cuenta corriente y comprobantes de venta.


RN-003: Inmutabilidad de la relacion

Descripcion: Una vez asignado el UUID del bridge a un movimiento de cuenta corriente, este no puede modificarse.

Condicion: Se intenta modificar el UUID del bridge de un movimiento existente.

Accion:

  • El sistema rechaza cualquier intento de modificar el UUID del bridge
  • La unica forma de cambiar la relacion es eliminar el movimiento original y crear uno nuevo

Fundamento: Garantiza la trazabilidad historica y evita inconsistencias en la auditoria del sistema.


RN-004: Compatibilidad temporal durante transicion

Descripcion: Durante el periodo de transicion, el sistema debe soportar ambos metodos de referencia (UUID del bridge y referencia compuesta).

Condicion: Existen movimientos de cuenta corriente creados antes de la implementacion que utilizan referencia compuesta.

Accion:

  • El sistema mantiene la referencia compuesta para movimientos historicos no migrados
  • El sistema puede consultar movimientos utilizando cualquiera de los dos metodos
  • Las nuevas consultas priorizan el UUID del bridge cuando esta disponible
  • Se marca claramente que metodo de referencia utiliza cada movimiento

Fundamento: Permite una transicion gradual sin interrumpir las operaciones del negocio ni perder acceso a datos historicos.


RN-005: Migracion de referencias existentes

Descripcion: Los movimientos de cuenta corriente existentes que utilizan referencia compuesta deben migrarse al nuevo esquema con UUID del bridge.

Condicion: Existen movimientos de cuenta corriente con referencia compuesta sin UUID de bridge asignado.

Accion:

  • El proceso de migracion localiza el comprobante de venta mediante la referencia compuesta
  • El sistema obtiene el UUID del bridge del comprobante encontrado
  • El sistema actualiza el movimiento con el UUID correspondiente
  • Se registra la migracion en el log de auditoria
  • Si no se puede determinar el UUID, el movimiento se marca para revision manual

Fundamento: Garantiza que todos los movimientos historicos tengan la nueva relacion para consultas unificadas.


RN-006: Eliminacion de la relacion al eliminar comprobante

Descripcion: Cuando se elimina fisicamente un comprobante de venta, los movimientos de cuenta corriente asociados deben eliminarse de forma consistente.

Condicion: Se elimina un comprobante de venta (eliminación física) que tiene movimientos de cuenta corriente asociados.

Accion:

  • El sistema identifica los movimientos de cuenta corriente asociados al UUID del bridge
  • Los movimientos originales se eliminan fisicamente de forma cascada
  • La eliminación debe ser parte de la misma transacción que elimina el comprobante
  • Se registra la eliminación en el log de auditoría antes de ejecutarla

Fundamento: Mantiene la consistencia referencial entre comprobantes y movimientos. La eliminación física asegura que no queden registros huérfanos en la cuenta corriente que referencien comprobantes inexistentes.


RN-007: Preservacion de trazabilidad historica

Descripcion: El sistema debe preservar la informacion de la referencia compuesta original para fines de auditoria, incluso despues de la migracion.

Condicion: Se migra un movimiento de cuenta corriente de referencia compuesta a UUID.

Accion:

  • El sistema mantiene los campos de la referencia compuesta original
  • Se registra la fecha y hora de migracion
  • Se registra el metodo de localizacion del UUID (automatico o manual)
  • La informacion historica permanece disponible para consultas de auditoria

Fundamento: Permite auditorias completas y verificacion de la integridad de la migracion.


RN-008: Movimientos manuales sin relacion de bridge

Descripcion: Los movimientos de cuenta corriente que no se originan por comprobantes de venta no requieren UUID de bridge.

Condicion: Se registra un movimiento de cuenta corriente manual (ajuste, cargo administrativo, etc.).

Accion:

  • El sistema permite crear movimientos sin UUID de bridge asociado
  • El campo de UUID permanece vacio para estos movimientos
  • El sistema distingue claramente entre movimientos con y sin relacion a comprobantes de venta

Fundamento: No todos los movimientos de cuenta corriente provienen de comprobantes de venta, y el sistema debe soportar todos los tipos de movimiento.


RN-009: Consistencia de cliente entre movimiento y comprobante

Descripcion: El cliente del movimiento de cuenta corriente debe coincidir con el cliente del comprobante de venta referenciado.

Condicion: Se asocia un UUID de bridge a un movimiento de cuenta corriente.

Accion:

  • El sistema verifica que el cliente del movimiento sea el mismo que el cliente del comprobante de venta
  • Si los clientes no coinciden, el sistema rechaza la operacion con mensaje de error
  • La validacion aplica tanto para nuevos movimientos como para migracion de existentes

Fundamento: Garantiza la integridad logica de la relacion, evitando asociaciones incorrectas entre clientes.


Casos de Uso

CU-001: Crear nuevo movimiento de cuenta corriente desde comprobante de venta

Actor: Usuario de Ventas / Sistema (proceso automatico)

Objetivo: Registrar un movimiento de cuenta corriente que quede vinculado al comprobante de venta mediante el UUID del bridge.

Precondiciones:

  • Usuario autenticado con permisos de facturacion
  • Cliente existente con cuenta corriente activa
  • Comprobante de venta registrado con UUID de bridge asignado

Flujo principal:

  1. El usuario completa y confirma un comprobante de venta a credito (factura, nota de credito, nota de debito)
  2. El sistema valida y registra el comprobante de venta
  3. El sistema genera el identificador global (UUID) en el bridge de ventas
  4. El sistema genera automaticamente el movimiento de cuenta corriente correspondiente (debito o credito)
  5. El sistema asigna el UUID del bridge al movimiento de cuenta corriente
  6. El sistema confirma la operacion exitosa al usuario

Postcondiciones:

  • El comprobante de venta queda registrado con su UUID de bridge
  • El movimiento de cuenta corriente queda registrado con el UUID del bridge asociado
  • La relacion esta disponible para consulta inmediata
  • El saldo del cliente se actualiza segun el tipo de movimiento

Flujos alternativos:

  • Comprobante al contado: Si el comprobante es venta al contado, no se genera movimiento de cuenta corriente ni relacion con bridge
  • Error en generacion de UUID: Si falla la generacion del UUID del bridge, se revierte toda la operacion incluyendo el comprobante
  • Eliminacion del comprobante: Si posteriormente se elimina el comprobante de venta, el movimiento de cuenta corriente se elimina fisicamente en cascada

CU-002: Consultar movimientos de cuenta corriente y visualizar comprobante relacionado

Actor: Usuario de Ventas / Usuario de Cobranzas / Contador

Objetivo: Consultar los movimientos de cuenta corriente de un cliente y acceder al comprobante de venta asociado de forma directa.

Precondiciones:

  • Usuario autenticado con permisos de consulta de cuenta corriente
  • Cliente existente con movimientos registrados
  • Movimientos con UUID de bridge asignado (migrados o nuevos)

Flujo principal:

  1. El usuario accede a la cuenta corriente de un cliente
  2. El sistema muestra la lista de movimientos de cuenta corriente
  3. El usuario identifica un movimiento originado por una venta
  4. El sistema muestra el indicador de comprobante asociado junto con informacion basica del mismo
  5. El usuario selecciona la opcion de ver el comprobante completo
  6. El sistema utiliza el UUID del bridge para localizar el comprobante
  7. El sistema muestra el detalle completo del comprobante de venta

Postcondiciones:

  • El usuario visualiza la informacion del comprobante de venta asociado al movimiento
  • La navegacion es directa sin busquedas intermedias

Flujos alternativos:

  • Movimiento sin UUID (pendiente de migracion): El sistema intenta localizar el comprobante mediante la referencia compuesta y muestra un indicador de que el movimiento utiliza el metodo antiguo
  • Movimiento manual sin comprobante: El sistema muestra un mensaje indicando que el movimiento no esta asociado a un comprobante de venta
  • Comprobante no encontrado: Si el comprobante fue eliminado o hay inconsistencia, el sistema muestra un mensaje de error y registra la incidencia

CU-003: Migrar movimientos existentes de referencia compuesta a UUID

Actor: Administrador del Sistema

Objetivo: Actualizar los movimientos de cuenta corriente existentes para que utilicen el UUID del bridge en lugar de la referencia compuesta.

Precondiciones:

  • Usuario con permisos de administracion de migracion de datos
  • Existen movimientos de cuenta corriente con referencia compuesta sin UUID asignado
  • El bridge de ventas tiene UUIDs asignados para los comprobantes existentes
  • El sistema esta en un estado que permite ejecutar la migracion

Flujo principal:

  1. El administrador inicia el proceso de migracion de movimientos de cuenta corriente
  2. El sistema identifica todos los movimientos con referencia compuesta sin UUID
  3. Por cada movimiento identificado:
    • El sistema localiza el comprobante de venta mediante nrocomp + id_tipo_comprobante
    • El sistema obtiene el UUID del bridge del comprobante encontrado
    • El sistema valida que el cliente del movimiento coincida con el del comprobante
    • El sistema actualiza el movimiento con el UUID del bridge
    • El sistema registra la migracion en el log de auditoria
  4. El sistema genera un reporte de migracion con resumen de movimientos procesados
  5. El sistema confirma la migracion exitosa

Postcondiciones:

  • Los movimientos procesados tienen UUID de bridge asignado
  • Se preserva la referencia compuesta original para auditoria
  • El reporte de migracion esta disponible para revision
  • Los movimientos con problemas quedan marcados para revision manual

Flujos alternativos:

  • Comprobante no encontrado en bridge: Si no se puede localizar el UUID para un comprobante, el movimiento se marca para revision manual y se continua con los demas
  • Inconsistencia de cliente: Si el cliente del movimiento no coincide con el del comprobante, se marca para revision manual
  • Error durante migracion: El sistema puede reiniciar desde el punto de fallo (proceso idempotente)

CU-004: Generar reporte de cuenta corriente con detalle de comprobantes

Actor: Usuario de Cobranzas / Contador / Gerente

Objetivo: Generar un reporte de cuenta corriente que incluya informacion detallada de los comprobantes de venta asociados a cada movimiento.

Precondiciones:

  • Usuario autenticado con permisos de generacion de reportes de cuenta corriente
  • Cliente existente con movimientos registrados
  • Criterios de reporte definidos (rango de fechas, tipos de movimiento, etc.)

Flujo principal:

  1. El usuario accede a la generacion de reportes de cuenta corriente
  2. El usuario selecciona el cliente y define los criterios del reporte
  3. El usuario solicita la generacion del reporte
  4. El sistema obtiene los movimientos de cuenta corriente segun los criterios
  5. Para cada movimiento originado por venta, el sistema obtiene la informacion del comprobante mediante el UUID del bridge
  6. El sistema genera el reporte incluyendo:
    • Datos del movimiento (fecha, tipo, monto)
    • Datos del comprobante asociado (numero, tipo, fecha de emision)
    • Saldo acumulado
  7. El sistema presenta el reporte al usuario

Postcondiciones:

  • El reporte muestra la informacion completa de movimientos y comprobantes
  • El usuario puede exportar o imprimir el reporte
  • La trazabilidad entre movimientos y comprobantes es evidente

Flujos alternativos:

  • Movimientos con referencia compuesta: Para movimientos no migrados, el sistema utiliza la referencia compuesta y lo indica en el reporte
  • Sin movimientos en el periodo: El sistema informa que no hay movimientos para los criterios seleccionados

CU-005: Conciliar cuenta corriente con comprobantes de venta

Actor: Contador / Auditor

Objetivo: Verificar la correspondencia entre los movimientos de cuenta corriente y los comprobantes de venta registrados en el sistema.

Precondiciones:

  • Usuario autenticado con permisos de consulta de cuenta corriente y ventas
  • Periodo de conciliacion definido
  • Acceso a reportes de conciliacion

Flujo principal:

  1. El usuario accede a la funcion de conciliacion de cuenta corriente
  2. El usuario selecciona el periodo y criterios de conciliacion
  3. El sistema obtiene todos los movimientos de cuenta corriente originados por ventas en el periodo
  4. El sistema obtiene todos los comprobantes de venta emitidos en el periodo
  5. Para cada movimiento con UUID de bridge:
    • El sistema verifica la existencia del comprobante referenciado
    • El sistema verifica la consistencia de datos (monto, cliente, fecha)
  6. El sistema genera un reporte de conciliacion indicando:
    • Movimientos correctamente relacionados
    • Movimientos sin comprobante encontrado
    • Comprobantes sin movimiento asociado
    • Inconsistencias detectadas
  7. El usuario revisa el reporte y toma acciones correctivas si es necesario

Postcondiciones:

  • El reporte de conciliacion identifica cualquier inconsistencia entre modulos
  • Las inconsistencias quedan documentadas para seguimiento
  • El usuario puede iniciar acciones correctivas para los casos detectados

Flujos alternativos:

  • Sin inconsistencias: El sistema confirma que todos los registros estan correctamente relacionados
  • Movimientos pendientes de migracion: El sistema los lista por separado indicando que utilizan el metodo de referencia compuesta

Consideraciones

Seguridad

Proteccion de datos:

  • Los UUIDs del bridge son datos de referencia que no deben poder modificarse por usuarios sin permisos especiales
  • El acceso a la informacion de relacion hereda los permisos del modulo de Cuenta Corriente
  • Los registros de migracion deben estar protegidos contra modificaciones no autorizadas

Control de acceso:

  • La consulta de movimientos y sus comprobantes asociados requiere permisos de cuenta corriente y ventas
  • El proceso de migracion solo puede ejecutarse por usuarios con rol de administrador
  • Las consultas inter-modulo respetan los permisos de cada modulo involucrado

Validacion de integridad:

  • Toda operacion que modifique la relacion debe validar permisos del usuario
  • Los intentos de operaciones no autorizadas deben registrarse en el log de seguridad

Auditoria

Operaciones que se auditan:

OperacionDatos AuditadosMotivo
Asignacion de UUID a nuevo movimientoMovimiento, UUID, comprobanteTrazabilidad de creacion
Migracion de movimiento existenteMovimiento, UUID, referencia compuesta original, fecha migracionControl del proceso de migracion
Consulta de comprobante desde movimientoUsuario, movimiento, comprobanteRegistro de acceso a informacion
Errores de validacionTipo de error, datos involucradosDeteccion de problemas de integridad

Informacion preservada:

  • Referencia compuesta original para movimientos migrados
  • Fecha y hora de cada operacion
  • Usuario que ejecuto la operacion
  • Metodo utilizado (UUID o referencia compuesta)
  • Resultado de la operacion (exito o error)

Retencion de datos de auditoria:

  • Los registros de auditoria de migracion deben preservarse indefinidamente
  • Los registros de operaciones normales siguen la politica de retencion estandar del sistema

Rendimiento

Volumenes esperados:

  • Cantidad de movimientos de cuenta corriente existentes a migrar (depende del historial del sistema)
  • Nuevos movimientos generados diariamente proporcionales a las ventas a credito
  • Consultas frecuentes de estado de cuenta y reportes

Expectativas de tiempo de respuesta:

  • La asignacion del UUID no debe agregar latencia perceptible al registro de comprobantes
  • La consulta de comprobante desde movimiento debe ser rapida (menos de 100 milisegundos)
  • Los reportes con detalle de comprobantes deben generarse en tiempos aceptables

Migracion de datos:

  • El proceso de migracion debe poder ejecutarse en horario de baja actividad
  • La migracion debe ser incremental y reiniciable
  • Se debe estimar el tiempo de migracion segun el volumen de datos

Migracion

Estrategia de migracion:

  1. Fase 1 - Preparacion: Validar que todos los comprobantes de venta historicos tengan UUID en el bridge
  2. Fase 2 - Migracion incremental: Procesar movimientos en lotes para minimizar impacto en el sistema
  3. Fase 3 - Validacion: Verificar integridad de datos migrados mediante reportes de conciliacion
  4. Fase 4 - Monitoreo: Mantener alertas para detectar movimientos sin UUID

Periodo de compatibilidad:

  • Durante la transicion (estimado: 3-6 meses), el sistema soportara ambos metodos de referencia
  • Las consultas priorizaran el UUID cuando este disponible
  • Los reportes indicaran claramente que metodo se utiliza para cada movimiento

Tratamiento de casos especiales:

  • Movimientos muy antiguos sin comprobante localizable: Marcar para revision manual
  • Comprobantes eliminados: Los movimientos asociados deben eliminarse en cascada (eliminación física)
  • Movimientos manuales: No requieren UUID, permanecen sin cambios

Rollback:

  • El proceso de migracion es reversible: los campos de referencia compuesta se mantienen
  • En caso de problemas, se puede volver a utilizar la referencia compuesta temporalmente

Dependencias

Funcionalidades Relacionadas

  • Identificadores Globales para Comprobantes de Venta (Bridge de Ventas) (Ver documento): Proporciona el UUID global que se utilizara para vincular movimientos de cuenta corriente. Esta funcionalidad es prerequisito para la implementacion.

  • Registro de Comprobantes de Ventas: El proceso de registro de facturas, notas de credito y notas de debito debe extenderse para asignar el UUID del bridge al movimiento de cuenta corriente generado.

  • Baja de Comprobantes de Venta (Ver documento): El proceso de baja debe considerar la relacion con movimientos de cuenta corriente para mantener la consistencia.

  • Relacion Comprobante de Compra - Movimiento de Cuenta Corriente (Ver documento): Funcionalidad analoga para el modulo de compras que sirve como referencia de patron.

Modulos de Negocio Involucrados

ModuloRol en esta Funcionalidad
Cuenta CorrienteModulo principal afectado. Los movimientos de cuenta corriente recibiran el nuevo campo de UUID del bridge
VentasProporciona los comprobantes de venta y el bridge con UUIDs globales
ConfiguracionAlmacena parametros de transicion y configuracion de migracion
AuditoriaRegistra todas las operaciones de migracion y cambios en relaciones

Impacto en Otros Procesos

ProcesoImpacto
Registro de factura de venta a creditoGenera movimiento de cuenta corriente con UUID del bridge
Registro de nota de credito de ventaGenera movimiento de cuenta corriente con UUID del bridge
Registro de nota de debito de ventaGenera movimiento de cuenta corriente con UUID del bridge
Eliminacion de comprobante de ventaElimina fisicamente los movimientos de cuenta corriente asociados en cascada
Reportes de cuenta corrienteUtilizan UUID para obtener informacion de comprobantes
ConciliacionesValidan correspondencia mediante UUID
Exportacion de datosIncluyen el UUID como identificador del comprobante relacionado

Criterios de Aceptacion

La funcionalidad se considera completa cuando se cumplan los siguientes criterios:

Criterios para registro de nuevos movimientos

  • [ ] AC-001: Al registrar un nuevo comprobante de venta que genera movimiento en cuenta corriente, el sistema asigna automaticamente el UUID del bridge de ventas al movimiento creado.

  • [ ] AC-002: El UUID asignado al movimiento de cuenta corriente corresponde exactamente al UUID del comprobante de venta que lo origino.

  • [ ] AC-003: El sistema valida que el UUID exista en el bridge de ventas antes de asignarlo al movimiento de cuenta corriente.

Criterios para consulta de movimientos

  • [ ] AC-004: Los usuarios pueden consultar el comprobante de venta asociado a un movimiento de cuenta corriente utilizando el UUID del bridge de forma directa.

  • [ ] AC-005: La informacion basica del comprobante (numero, tipo, fecha) se muestra junto al movimiento de cuenta corriente sin necesidad de navegacion adicional.

  • [ ] AC-006: La navegacion desde un movimiento de cuenta corriente al detalle del comprobante de venta es directa y no requiere busquedas intermedias.

Criterios para migracion de datos

  • [ ] AC-007: El proceso de migracion asigna correctamente el UUID del bridge a los movimientos de cuenta corriente existentes que utilizaban referencia compuesta.

  • [ ] AC-008: Los movimientos que no pueden migrarse automaticamente quedan marcados para revision manual con informacion del problema detectado.

  • [ ] AC-009: La migracion preserva la referencia compuesta original para fines de auditoria.

  • [ ] AC-010: El proceso de migracion genera un reporte detallado con estadisticas de movimientos procesados, exitosos y con errores.

Criterios de compatibilidad temporal

  • [ ] AC-011: Durante el periodo de transicion, el sistema soporta consultas tanto por UUID del bridge como por referencia compuesta.

  • [ ] AC-012: Los movimientos con referencia compuesta (no migrados) pueden consultarse y muestran la informacion del comprobante asociado.

  • [ ] AC-013: El sistema indica claramente que metodo de referencia utiliza cada movimiento (UUID o referencia compuesta).

Criterios para reportes

  • [ ] AC-014: Los reportes de cuenta corriente muestran la informacion completa del comprobante de venta utilizando el UUID del bridge.

  • [ ] AC-015: Los reportes de conciliacion identifican movimientos sin UUID asignado y los listan por separado.

Criterios de integridad

  • [ ] AC-016: El sistema rechaza la creacion de movimientos de cuenta corriente con UUID de bridge inexistente.

  • [ ] AC-017: El UUID del bridge no puede modificarse una vez asignado a un movimiento de cuenta corriente.

  • [ ] AC-018: El sistema valida que el cliente del movimiento coincida con el cliente del comprobante de venta referenciado.

Criterios de auditoria

  • [ ] AC-019: Todas las operaciones de asignacion de UUID a movimientos quedan registradas en el log de auditoria.

  • [ ] AC-020: Las operaciones de migracion registran la referencia compuesta original, el UUID asignado y la fecha de migracion.

  • [ ] AC-021: Los errores de validacion durante asignacion o migracion quedan registrados con detalle suficiente para diagnostico.


Notas Adicionales

Diferencia entre metodos de referencia

AspectoReferencia Compuesta (Actual)UUID del Bridge (Nuevo)
Campos utilizadosnrocomp + id_tipo_comprobanteUUID unico
UnicidadUnica por sucursal y tipoUnica en toda la empresa
Complejidad de consultaRequiere dos camposRequiere un solo campo
Consistencia arquitectonicaPatron antiguoAlineado con bridge de ventas
Ambiguedad multi-sucursalPosibleEliminada

Tipos de movimientos de cuenta corriente afectados

Tipo de MovimientoOrigenRequiere UUID de Bridge
Debito por facturaFactura de venta a creditoSi
Credito por nota de creditoNota de credito de ventaSi
Debito por nota de debitoNota de debito de ventaSi
Credito por pagoRecibo de cobranzaNo (tiene su propia logica)
Ajuste manualOperacion administrativaNo
Cargo administrativoOperacion internaNo

Consideraciones para integraciones externas

Si en el futuro se exponen movimientos de cuenta corriente a sistemas externos:

  1. Utilizar el UUID del bridge como identificador del comprobante asociado
  2. No exponer la referencia compuesta para evitar complejidad y ambiguedades
  3. El UUID es autosuficiente para localizar cualquier comprobante de venta

Preguntas frecuentes

  1. Se eliminara la referencia compuesta?

    • No inmediatamente. La referencia compuesta se mantendra para compatibilidad y auditoria. En el futuro, podria depreciarse una vez que todos los movimientos esten migrados.
  2. Que pasa con los movimientos muy antiguos?

    • Se intentara migrarlos automaticamente. Los que no puedan migrarse quedaran marcados para revision manual y seguiran funcionando con la referencia compuesta.
  3. Como afecta esto al rendimiento?

    • Las consultas por UUID son mas eficientes que las consultas por referencia compuesta. El rendimiento general deberia mejorar.
  4. Se requiere tiempo de inactividad para la migracion?

    • No. La migracion es incremental y puede ejecutarse mientras el sistema esta en operacion.
  5. Que pasa si se elimina un comprobante de venta?

    • Cuando se elimina físicamente un comprobante de venta, los movimientos de cuenta corriente asociados se eliminan en cascada como parte de la misma transacción. La eliminación se registra en el log de auditoría antes de ejecutarse.

Historial de Cambios

FechaVersionAutorDescripcion
2025-12-291.0SistemaCreacion del documento de requerimientos de negocio para la relacion de movimientos de cuenta corriente con el bridge de ventas mediante UUID