3.6 KiB
3.6 KiB
Guía del Comando eliminar_pedimentos_duplicados
📝 Descripción
El comando eliminar_pedimentos_duplicados es una herramienta de mantenimiento que identifica y elimina pedimentos duplicados dentro de una organización, conservando automáticamente el pedimento que tenga más documentos y relaciones asociadas.
⚙️ Funcionalidad
Criterios de Duplicación
- Pedimentos con el mismo número dentro de una organización
- Solo se consideran duplicados dentro de la misma organización
- Se mantiene el pedimento con más:
- Documentos (Documents)
- COVEs
- E-documents
- Partidas
💻 Uso
Comando Básico
python manage.py eliminar_pedimentos_duplicados
Con Argumentos Opcionales
# Procesar organización específica
python manage.py eliminar_pedimentos_duplicados --organizacion="uuid-organizacion"
# Ajustar tamaño del lote
python manage.py eliminar_pedimentos_duplicados --batch-size=50
# Combinar opciones
python manage.py eliminar_pedimentos_duplicados --organizacion="uuid" --batch-size=50
🔧 Argumentos Disponibles
| Argumento | Descripción | Tipo | Default |
|---|---|---|---|
| --organizacion | UUID de la organización a procesar | string | None |
| --batch-size | Número de pedimentos por lote | integer | 100 |
📊 Proceso de Ejecución
-
Inicio
- Validación de argumentos
- Conexión a base de datos
- Cálculo de duplicados totales
-
Procesamiento por Lotes
- Identificación de duplicados
- Análisis de documentos asociados
- Selección de pedimento a mantener
-
Eliminación
- Eliminación de COVEs asociados
- Eliminación de E-documents
- Eliminación de Partidas
- Eliminación de Documents
- Eliminación del pedimento duplicado
-
Reporte
- Total de grupos procesados
- Tiempo de ejecución
- Detalles de errores (si existen)
⚠️ Precauciones
Antes de Ejecutar
- Realizar respaldo de la base de datos
- Verificar espacio en disco
- Revisar carga del servidor
- Confirmar permisos de usuario
Durante la Ejecución
- No interrumpir el proceso
- Monitorear uso de recursos
- Revisar logs en tiempo real
Después de la Ejecución
- Verificar integridad de datos
- Revisar logs de errores
- Documentar cambios realizados
🔍 Monitoreo
Logs y Salidas
- Progreso por lote
- Errores encontrados
- Resumen de operaciones
- Tiempo total de ejecución
Mensajes de Estado
- ✓ Operación exitosa
- ✗ Error en la operación
- ℹ️ Información de progreso
🚨 Solución de Problemas
Errores Comunes
-
Timeout de Base de Datos
- Reducir tamaño del lote
- Verificar conexión a BD
- Revisar índices de la tabla
-
Memoria Insuficiente
- Ajustar batch-size
- Verificar recursos del servidor
- Liberar memoria cache
-
Errores de Permisos
- Verificar permisos de usuario
- Confirmar acceso a tablas
- Revisar configuración de BD
📌 Notas Importantes
- La eliminación es permanente
- El proceso es transaccional por lote
- Se puede reanudar si se interrumpe
- Los cambios afectan a relaciones en cascada
🔄 Mantenimiento
Recomendaciones
- Ejecutar periódicamente
- Mantener respaldos actualizados
- Revisar logs regularmente
- Ajustar parámetros según necesidad
Mejor Momento para Ejecutar
- Durante horas de bajo tráfico
- Después de respaldos programados
- Cuando el sistema está menos cargado
📚 Referencias
- Documentación de Django Management Commands
- Logs del sistema
- Documentación de la base de datos