lunes, 14 de octubre de 2019

Cálculo de horas

Anthony: 12 horas
Carlos: 14,4 horas
Total: 26,4 horas

Todas las funciones solicitadas trabajan de manera adecuada

Debugueo de la capa logica 2

Tiempo: 3 horas de 3 pm a 6 pm (13/10/2019)
-Debugueo de las ventanas faltantes (consulta por patrón, consulta de los movimientos por estado de cuenta y el CRUD de las cuentas objetivo).
-Hubo un error con el Script de simulación.
-Creación de algunos SP de consulta.
-Otro detalle es que tuve que realizar todo lo descrito en la anterior entrada porque le hice un restore a la base y perdí los cambios que había hecho en los SP´s.

domingo, 13 de octubre de 2019

Capa lógica debug

Tiempo: 4 horas de 12:30 pm a 4:30 am
-Debugueo de las ventanas del CRUD de los beneficiarios y la consulta de estados de cuenta
-El debugueo consistió en implementar los cambios que sufrió la base de datos en las conexiones con la base y el proceso se dio sin mucho problema.
-Creación del SP para consultar personas.
-Creación del SP para crear personas.
-Ajustes a los SP de agregar y actualizar beneficiarios

sábado, 12 de octubre de 2019

Últimos detalles del script de simulación

Tiempo: 17:40 - 20:30 y 22:40 - 23:36

Seguí trabajando en el script de la simulación, específicamente en la parte de cerrar los estados de cuenta, que es lo único que faltaba. Tuve varios problemas: el calculo de los intereses lo estaba realizando mal entonces con cada estado de cuenta los saldos quedaban más negativos, además había un error en el trigger para cargar los movimientos a las cuentas, ya que olvidé poner un where id = idCliente, entonces lo estaba cargando en todas las cuentas. Otro problema que tuve es que en la simulación estaba corriendo en base a los días del xml, pero más tarde me dí cuenta que los días no iban secuencialmente, entonces habían estados de cuenta que quedaban sin cerrarse. Después de consultar en el grupo, corregí el problema haciendo que corriera desde la primer fecha de operación hasta la última, pero sumando un día en cada ciclo, en vez de tomar la siguiente fecha de operación. Cuando ya casi estaba listo, me fijé que los estados de cuenta del 29 al 31 de enero no se estaban cerrando, porque no tomé en cuenta que esos días no existen en febrero, entonces tuve que realizar una excepción para esos días.

Ultima ventana y conexión en capa lógica

Tiempo: 1 hora (10/10/2019)

-Diseño y conexión de la ventana para editar cuentas objetivo
-Creación del SP para editar cuentas objetivo

Script de simulación

Tiempo: 14:40 - 21:00 y 23:30 - 1:00

Cree los SP que faltaban para que el cliente puede editar la información de las subcuentas desde la web. Solo era un simple update.

Seguí trabajando en el script para ejecutar la simulación. Este script fue el causante de que hoy haya durado tanto y parece que no he hecho mucho. Tuve varios problemas durante el día, entre ellos, a la hora de tener que sacar solo las operaciones de una fecha específica, fecha por fecha, no lograba obtener los datos en filas dentro de una tabla temporal, si no que lo metía todo en una sola fila. Logré solucionar este problema gracias a los siguientes foros: https://www.sqlservercentral.com/forums/topic/the-argument-1-of-xml-datatype-method-nodes-must-be-string-literal-plz-help y
https://stackoverflow.com/questions/13964682/where-clause-on-a-sql-server-xml-column-filtering-on-attribute-and-value
Al final logré lo que necesitaba y a partir de ahí fue simplemente implementar el mismo método de carga de datos de la etapa pasada, pero haciéndolo fecha por fecha. (Usando el formato que mandó el profe, ya mencionado en otras entradas del blog)

Durante este proceso me dí cuenta que el trigger que había hecho para la creación del primer estado de cuenta no estaba sirviendo, ya que solo lo hacia para el último insertado, pero como se iban insertando de 3 en 3, dos se quedaban sin estado de cuenta. Lo solucioné implementando un cursos para iterar sobre la lista inserted, que leí que contenía los ultimo items insertados (https://social.msdn.microsoft.com/Forums/sqlserver/en-US/40f5635c-9034-4e9b-8fd5-c02cec44ce86/how-to-let-trigger-act-for-each-row?forum=sqlgetstarted)

Despues de esto me tomé un descanso, y seguí trabajando en la simulación. Cuando llegué a la parte de movimientos, tuve varios errores muy tontos de overflow porque me equivoqué en unos tipos, pero duré mucho encontrándolo. Mientras hacía esto, me di cuenta que podía hacer un trigger para hacer los cobros al saldo de las cuentas al insertar un movimiento, así que hice el mismo proceso que con el trigger de los estados de cuenta.

martes, 8 de octubre de 2019

Capa lógica

Tiempo: 2 horas de 8:00 pm a 10:00 pm (7/10/2019)
- Corrección de la conexión de la ventana "ver movimientos" con la base de datos, ya que esta ventana se hizo antes de realizar los cambios en la base de datos.
- Creación y conexión de la ventana para buscar movimientos por patrón.
- Creación y parte de la conexión de la ventana eliminar cuentas objetivo.
- Creación y conexión de la ventana para agregar una una cuenta objetivo.