Avance #25

Avance: Comenzamos con la creación del SP GenerarTransConsumoAgua y GenerarCambiosValor propiedad debido a que son etiquetas que ya vienen específicadas en el documento XML.

Problemas: Necesitábamos una forma en la cual poder enviar las etiquetas que se leían del XML. Ya que se debía procesar una por una. No sabíamos como crear un tipo de datos de SQL y que se necesitaba para utilizar tablas como parámetros.

Solución: Para solucionar el problema que representaba la comunicación entre XML y SP (ya que nos quedaba más sencillo hacerlo interativo y procesar una por una), recurrimos a utilizar una variable tabla que pudiéramos pasarle como párametro a ambos SP's. Esta idea derivó en tener que aprender a declara un  tipo de  dato.Ya que no se pueden enviar variables tablas de tipo genéricos. Procedimos a declara un tipo de dato para cada tipo de etiqueta, luego aprovechamos el recorrido interativo que va realizando la simulación día a día para cargar en una variable tabla (de un determinado tipo) los diferentes valores y atributos de las etiquetas que se parseaban en un día específico. Seguidamente, antes de completar la iteración del WHILE se ejecutan los SP correspondientes y se envían cada uno con su variable tablas del toipo que le corresponde y la fecha actual de procesamiento. Ya la lógica dentro de cada uno de los SP's varía. En el que se encarga de las transacciones de agua se toma en cuenta el tipo (lectura mensual, crédito o débito) para saber si sumar o restar en el ConsumoAcumM3. Asimismo, se deben actualizar los contadores de agua en los atributos de la tabla propiedad designados para dicho propósito. El SP de cambio de valor, solamente realiza un update en la tabla de propiedad, actualizando el valor de la misma. Aquí cabe destacar que este tipo de cambios son solicitados que se registren mediante un TRIGGER por parte del profesor. Por lo que queda pendiente de realizar.  

Consejos: Los lenguajes ofrecen muchas alternativas para realizar la misma tarea. En este caso, pese a que SQL no está pensado para realización de tareas iterativas, el profesor no explicó que en los últimos años viene ganando tendencia hacerlo de esta manera. Entre los beneficios se encuentran: la velocidad y la facilidad de debuggear el código. 

Horas: 3 horas

Comentarios

Entradas más populares de este blog

Avance #28

Avance #39

Avance #32