Cómo automatizar Procesos con Excel hacia una Base
de Datos y
Sistema Web
Uso de Múltiples Planillas Excel Según la experiencia de DocIRS, podemos afirmar que frecuentemente en las organizaciones se inician procesos de captura de datos utilizando planillas Excel, las cuales se van almacenando según el nombre del archivo. El nombre de estos archivos y eventualmente las carpetas, contienen el tema, la fecha o una cierta correlatividad, de modo que se ha ido configurando un sistema de datos, basado en múltiples planillas, pero que no constituyen una base de datos. Excel una Solución Inicial Inicialmente, los sistemas de planillas resultan en una solución muy conveniente, dado el poderoso tratamiento estadístico, matemático, relacional y de macros que tienen las hojas de cálculo. Sin embargo, al alcanzar la información un volumen de numerosas planillas, este proceso natural, surgido en su momento para dar respuesta a las necesidades de la acción institucional, lo transforma en una desventaja. (Ver Información Integrada para una Gestión Eficiente) Feudos de Información Es así que DocIRS ha encontrado gerencias, y áreas completas operando sobre planillas Excel, que ayudados por algún empleado con destreza y conocimiento sobre el manejo en Excel, han ido creando un sistema de complejo manejo de datos, el cual en un determinado momento comenzó a presentar ciertas desventajas. Efectivamente, en la mayoría de los casos el sistema
En resumen, el tener los datos en hojas de cálculo se transformó en un sistema caro mantener, aunque al principio funcionó muy bien para resolver problemas locales. El precio y la dificultad,- medido en horas hombre-, fueron creciendo conjuntamente con el número de hojas de cálculo. Sin embargo, esto no ocurre de esa forma, si se construye sobre una base de datos, cuyo modelo asegure un tratamiento de datos flexible, individualizado y relacionado. Sólo con Planeación Básica para la Migración La experiencia de DocIRS, señala que con un plan básico orientado a conformar una base de datos, se puede comenzar a automatizar un proceso eficiente con Excel. En efecto, dada la economía a escala que presenta esta herramienta en términos de usabilidad y también como potente interfaz de datos para el usuario. Especialmente cuando son múltiples usuarios, quienes deben enviar datos hacia alguna organización, desde donde se centralizan y procesa estos datos para construir informes gerenciales y operativos. Por ejemplo, cuando las más diversas instituciones deben extraer datos desde sus propias bases, a fin de enviarlos. Digamos por ejemplo, postulaciones, datos financieros, demográficos, económicos, etc.. para alimentar esta institución centralizada, la que administra la cartera . (Estamos asumiendo que estos organismos A,B,C,D,.. no tienen el tiempo ni los recursos para configurar servicios <XML> que pueda ser consumido por un Web Services del administrador, lo que sería lo óptimo).
Protocolo, Plantillas y Administrador WEB En efecto, si inicialmente se establece un protocolo y plantillas con un conjunto de normas para el tratamiento de datos en lo referente al formato, los nombres, longitudes, tipos de campos y validaciones básicas que se irán utilizando, acompañados por documentación de las planillas y los campos que las constituyen, entonces puede desarrollarse sin dificultades una sustentable solución. Con planificación se puede montar un Administrador Web, que cargue estas planillas hacia una base de datos remota. O también podría desarrollarse una aplicación propia en lenguaje Visual Basic del Excel (VBA), que envíe los datos directamente a una base de datos remota en un servidor Internet. Así mismo podrían utilizarse macros para formular consultas y recibir las respuestas en las Hojas de Cálculo. Esta base de datos remota, puede ser diseñada en forma universal y paramétrica. Es decir, si se envía una planilla que contiene un número distinto de columnas, la base de datos remota los ingresa de igual modo. El puente entre el usuario y la base de datos, es un conjunto de rutinas (ASP, PHP, javascripts, etc..) que contiene reglas parametrizadas que validan aquellos campos que previamente se acordaron, como así mismo el tipo de planilla fue registrado en un índice paramétrico. A partir de los datos que van acumulando en la base de datos, se puede configurar un modelo de datos tipo estrella o cubo, que permitirá formar un reportes y un potente Panel de Control. A este efecto vamos a enunciar las funciones declarar(), subir(), validar() y obtener().
La propuesta de DocIRS vs Inmediatismo
Declarar Planilla en Catalogo El proceso de ordenar el proceso Planillas Excel -> Base de Datos -> Servicios WEB, comienza por Declarar el tipo de Planilla. A este efecto, debe existir una nomenclatura bien definida y tablas relacionadas en la base de datos que capturan la declaración.
Una vez declarada la planilla con su nombre, los campos obligatorios que debiera contener, con la correspondiente asignación de la validaciones, tales como:
Y las condiciones, por ejemplo
La nomenclatura y relaciones se expresan mediante una interfaz que permite declarar y determinar una planilla.
Posteriormente el cliente puede subir todas las planillas del tipo P1 declarada en el catalogo, y el sistema se encargará de asignar un nombre a la planillas que la identifique según la fecha y el correlativo. El proceso es el siguiente:
Al momento de ejecutar Subir Planilla se aplican las validaciones correspondientes por fila, y se comienza a ingresar en la tabla correspondiente los datos validados. Así mismo se configura un reporte LOG que podrá ser visualizado en el sitio, el cual señala si la planilla se incorporó exitosamente en la base de datos. Si este proceso no fue correcto, se debe corregir la planilla de acuerdo al reporte para subirla de nuevo. Equivalencias de Términos En todo caso, para aquellos que no se ajustan completamente a los formatos solicitados, siempre es posible definir dentro de la nomenclatura una tabla de equivalencia de nombres de campos en el modelo de datos. Esta relación establece una correspondencia (n-->1) entre el nombre del campo que asignan las instituciones usuarias remotas con el nombre que se utiliza interiormente para ese mismo campo. Por ejemplo, los diferentes usuarios que carga planillas podrían subir el campo de identificación de identidad (Rut) con diferentes nombres:
Este proceso, obliga al usuario a mejorar y aprender en corto tiempo a entregar su producto de acuerdo al protocolo acordado. Nótese que el subprograma que realiza las validaciones debe hacer referencia a los campos por nombre (object byname) y no por posición de las columnas. Trabajar por identificación o nombre de las columnas de la grilla que se validan antes de subirlas a la base de datos es operar con un concepto básico de la Programación Orientada a Objetos, porque se unen datos y procesos. El error de tratar las validaciones por la posición de la columna es una verdadera "camisa de fuerza", puesto que cada vez que si se inserta o se elimina una columna de una planilla declarada en el catalogo forzará una serie de tareas que no sólo conllevan a perder tiempo, sino también a cometer errores Síntesis En síntesis, se puede construir un poderoso sistema de utiliza el Excel para armar las planillas de acuerdo a las plantillas declaradas, se sube a la base de datos remota en el servidor WEB, se le aplica el auditor según las validaciones básicas y cruzadas (pre-definidas por el equipo de proceso) y finalmente se presta servicios de consulta y reportes desde el sitio WEB a los usuarios registrados en el sistema.
Modelo de Datos de Administrador WEB de Cartera de DocIRS (Articulo en construcción...)
Bibliografía:
|