Volver a proyectos
Automatización de desplieguesIngeniero de Software

AegisSetup — Despliegue y diagnóstico de SIDC

Herramienta de despliegue y reparación para SIDC, una aplicación heredada de Windows con VB6, SQL Server y Crystal Reports. Coordina dependencias de 32 bits y verifica la conexión y la interpretación de fechas que utiliza realmente el ejecutable.

Desafío

Una instalación podía tener SQL Server accesible y aun así fallar al abrir SIDC o generar reportes: la aplicación utiliza COM y ODBC de 32 bits, conserva conexiones dentro de ejecutables y plantillas, y envía fechas como texto. El diagnóstico requiere comprobar la ruta de conexión que usa la aplicación, la compatibilidad de sus dependencias y la configuración regional de esa sesión.

Solución

Construí una herramienta de instalación por etapas, reparación y diagnóstico. Preparé la base y el entorno Windows, adapté conexiones del ejecutable y de Crystal desde los archivos existentes y añadí comprobaciones de sesión de 32 bits, fechas y apertura de reportes con límites de tiempo. El entorno de impresión se diagnostica; el checklist diferencia requisitos de entrada de elementos que crea la instalación y conserva disponible la explicación de los bloqueos.

Arquitectura y decisiones

La CLI con Cobra y la TUI con Bubble Tea consumen módulos de configuración, requisitos, preparación del entorno y diagnóstico. Setup restaura la base, configura el DSN de 32 bits y registra componentes COM; el diagnóstico comprueba SQL, la conexión ADODB extraída del ejecutable, fechas DMY, Crystal y entorno de impresión. La regeneración parte de una copia original, valida el espacio disponible en los bloques binarios y produce un manifiesto de hashes. CLI y TUI comparten la tabla de requisitos y los módulos, con secuencias propias. La autenticación SQL o Windows depende del entorno; un almacén auxiliar utiliza DPAPI. La TUI incorpora autenticación de operador con Supabase y renovación de sesión. AegisSetup administra el despliegue y la compatibilidad de SIDC, cuya lógica de negocio pertenece a la aplicación existente.

Testing y calidad

El repositorio contiene pruebas de runtimes y registro COM, preservación del tamaño de ejecutables y reportes, repetibilidad de parches, configuración regional del DSN y rechazo de conversiones de fecha incorrectas. También cubre reglas del checklist, navegación TUI, elevación, límites de desinstalación y autenticación con servidores HTTP simulados. La integración de fechas con ADODB de 32 bits requiere habilitación explícita; la validación completa en una PC limpia permanece documentada como comprobación pendiente de entorno.

Impacto

Convierte la preparación de una aplicación heredada en un procedimiento diagnosticable y repetible. Permite distinguir problemas de conectividad, compatibilidad de 32 bits, conexiones de reportes y configuración regional, y conservar la procedencia de los artefactos regenerados mediante su manifiesto.

Puntos clave

  • Automaticé la preparación de SQL Server desde un respaldo, leyendo archivos lógicos y comprobando la base restaurada con DBCC CHECKDB
  • Integré el runtime de Crystal y los controles OCX en el binario, con registro COM de 32 bits y detección de archivos iguales o faltantes
  • Configuré el idioma del DSN y añadí comprobaciones de fechas día/mes/año mediante la sesión ADODB/MSDASQL del ejecutable
  • Implementé regeneración desde el ejecutable original, respetando el tamaño de sus bloques y registrando huellas SHA-256 en un manifiesto
  • Organicé un checklist por dependencias que explica qué falta, cómo resolverlo y qué etapa impide comenzar
  • Separé reparación y diagnóstico, elevación para operaciones de escritura y desinstalación con revisión previa del plan