Herramientas de usuario

Herramientas del sitio


ada:sicoferp:financiero:contabilidad:maestros:terceros

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
ada:sicoferp:financiero:contabilidad:maestros:terceros [2024/12/13 20:32]
192.168.175.19 [Consideraciones]
ada:sicoferp:financiero:contabilidad:maestros:terceros [2026/05/08 19:55] (actual)
brahian.castaneda
Línea 72: Línea 72:
   - Cuando se cargue el archivo se va a visualizar el siguiente mensaje. Dan clic en aceptar. {{ :​ada:​sicoferp:​financiero:​contabilidad:​maestros:​validacion_carga.png?​600 |}}   - Cuando se cargue el archivo se va a visualizar el siguiente mensaje. Dan clic en aceptar. {{ :​ada:​sicoferp:​financiero:​contabilidad:​maestros:​validacion_carga.png?​600 |}}
   - Por último, se da clic en la opción **Cargar** y el sistema va informar que los terceros fueron creados de manera exitosa. {{ :​ada:​sicoferp:​financiero:​contabilidad:​maestros:​ejecucion_de_carga.png?​600 |}}   - Por último, se da clic en la opción **Cargar** y el sistema va informar que los terceros fueron creados de manera exitosa. {{ :​ada:​sicoferp:​financiero:​contabilidad:​maestros:​ejecucion_de_carga.png?​600 |}}
 +===== Limpieza Automática de Datos en maestro_terceros =====
 +📝 Metadatos del Documento
  
 +Componente: Base de Datos (Oracle 11g)
  
 +Objeto: Trigger trg_clean_maestro_terceros
  
 +Tabla Afectada: maestro_terceros
  
 +Autor/​Responsable:​ Miguel Muñoz
  
 +Fecha de Implementación:​ 08 de Mayo de 2026
 +
 +=== 🎯 1. Objetivo y Contexto del Cambio ===
 +El objetivo de este desarrollo es garantizar la calidad e integridad de los datos almacenados en la tabla maestro_terceros. Frecuentemente,​ la captura de datos (copiar/​pegar desde Excel, correos o entradas directas de usuario) introduce caracteres no visibles como saltos de línea (Enters) o espacios en blanco adicionales.
 +
 +Estos caracteres ocultos generan comportamientos anómalos en el frontend, descuadres en la generación de reportes y problemas en integraciones con otros módulos (como facturación,​ inventario o contabilidad). Este trigger intercepta la transacción de base de datos para sanear la información de forma transparente antes de que se persista.
 +
 +=== ⚙️ 2. Especificaciones Técnicas ===
 +
 +Tipo de Trigger: BEFORE INSERT OR UPDATE
 +
 +Nivel: FOR EACH ROW
 +
 +Estrategia de Rendimiento:​ Se optó por el uso anidado de funciones nativas de cadena (TRIM y REPLACE) en lugar de expresiones regulares (REGEXP_REPLACE) para minimizar el consumo de CPU durante operaciones masivas (DML) típicas en maestros de terceros.
 +
 +Prevención de Errores: Se incluyen validaciones IS NOT NULL previas a la manipulación para evitar procesamiento innecesario.
 +
 +=== 🛠️ 3. Lógica de Limpieza Aplicada ===
 +
 +El script ejecuta las siguientes acciones exclusivamente sobre los campos alfanuméricos (VARCHAR2 y CHAR):
 +
 +REPLACE(campo,​ CHR(10), ''​):​ Elimina los saltos de línea (Line Feed).
 +
 +REPLACE(campo,​ CHR(13), ''​):​ Elimina los retornos de carro (Carriage Return).
 +
 +TRIM(campo):​ Elimina los espacios residuales que puedan quedar al inicio o al final de la cadena de texto, preservando los espacios intermedios (ej. manteniendo intacto "CALLE 10").
 +
 +=== ⚠️ Nota de Diseño (Exclusiones):​ ===
 +
 +Se han excluido de forma deliberada todos los campos con tipos de dato NUMBER, DATE y LONG RAW (como NIT, FECHA_CREACION,​ FIRMA_DIGITAL). Aplicar funciones de texto a estos campos forzaría una conversión implícita por parte de Oracle, arriesgando la generación de excepciones ORA-01722: invalid number o corrupciones en el formato de fecha nativo.
 +
 +=== Desarrollado por: [Miguel Muñoz] Fecha: [08/​05/​2026] Versión de PB: 12.5 ===
  
 [[ada:​sicoferp:​financiero:​contabilidad:​maestros|←Volver atras]] [[ada:​sicoferp:​financiero:​contabilidad:​maestros|←Volver atras]]
ada/sicoferp/financiero/contabilidad/maestros/terceros.1734121941.txt.gz · Última modificación: 2024/12/13 20:32 por 192.168.175.19