lunes, 23 de junio de 2014

24 de Junio del 2014

Martes 24 de Junio del 2014

Se corrige un pequeño error en el diseño, quedando de la siguiente forma.


Se corrige unos errores en la migración de datos relacionados a conversión de tipos de datos.

Se crea el procedure que crea las Facturas. Para esto cada factura tiene varios Detalles que serán los excesos de minutos de llamada, mensajes enviados, minutos de internet y morosidades por facturas no pagadas.


Se crea la interfaz web, básicamente se escribe un número de teléfono y se mostrará los últimos 6 facturas. De esas últimas 6 es posible ver los detalles de cada una.




De este proyecto se puede concluir que:

  1. Las inserciones masivas tienen una mayor complejidad a la hora de diseñarlas y programarlas pero son más eficientes si se maneja una gran cantidad de datos.
  2. Las sumatorias para poder calcular el monto final de la factura tienen una cierta complejidad puesto que es necesario consultar por fecha en cada registro de Llamada, Mensaje, Internet y Reconexión los movimientos realizados. Además es necesario calcular el tiempo de cada llamada e internet.
  3. Tener un diseño claro, lo más simple posible pero que al mismo tiempo cumpla con lo especificado es clave para realizar un trabajo de calidad. Asimismo preguntar todas las dudas es parte de lo anterior puesto que si la correcta orientación es posible caer en errores sin sentido de diseño.
  4. La carga de un archivo XML  a SQL no añade mayor complejidad que cargar un Excel. Simplemente es necesario crear más tablas para poder separar los datos

Al final del trabajo los tiempos quedaron de la siguiente forma:
Marvin Calvo: 42 horas
Oswaldo Dávila: 40 horas


23 de Junio del 2014

El Lunes 23 de junio el profesor nos respondió lo siguiente con respecto al diseño: "Los FK no son al detalle, sino a la factura (al encabezado)." Por consiguiente el modelo más actualizado es el siguiente



Cabe destacar que se ha trabajado en el anterior modelo, y pasar a este nuevo solamente implica cambian los FK de Detalle.

También se realizó el parseo de los datos y la inserción masiva de: Clientes, Cuentas, Teléfonos, Llamadas, Mensajes, Conexión a Internet y Reconexión de Servicio. Cabe destacar que la insercion de Llamadas, Mensajes y Conexión a Internet requieren pasar un varchar por ejemplo "2013-06-16 11:36"  a datetime. Para ello se requirió el siguiente link: http://msdn.microsoft.com/en-us/library/ms187928.aspx. Ahí se explica como convertir de formato y también se adjunta el código que se utilizó.

El siguiente es un ejemplo de inserción masiva



Se itera por fecha para simular que día a día se carga el archivo. Preferimos utilizar la transacción en un nivel de aislamiento Read Commited.

Comenzamos a trabajar a las 3:00 pm. 
Oswaldo termina de trabajar a las 2:40 am
Marvin termina de trabajar  a las 4:30 am









22 de Junio del 2014

El Domingo 22 de junio obtuvimos respuesta del profesor con respecto al diseño, esto fue lo que nos respondió :  "Para mi Factura y Estado de cuenta son similares. La estructura que recomiendo es : Factura(Id, FK_Cuenta, Fecha, Fecha vencimiento, TotalAPagar, otros campos) DetalleFactura (Id, FK_Factura, FK_TipoDetalle, Monto) TipoDetalle(Id, Nombre), las instancias en TipoDetalle son {(1, Llamadas), (2, Mensajes), (3, Impuesto), (4, Conexion internet), (5, Multa Atraso del Pago) ...}".

Por  consiguiente realizamos las modificaciones propuestas y trabajamos con el siguiente modelo. Asimismo se vuelve a enviar al profesor para su evaluación.



Asimismo el día de hoy se pudo realizar sin problemas la carga del archivo XML a SQL y guardar los datos en sus respectivas tablas para poder realizar las inserciones masivas. Los links consultados fueron los siguientes:




El segundo link lee el XML desde el disco duro y lo carga a SQL. El primer link indexa el XML cargado y obtiene los datos necesarios. El código se puede apreciar en la siguiente imagen.



Solamente falta realizar el parseo de los datos e insertar mediante la transacción.

Comenzamos a trabajar a las 12:00 md y terminamos a las 1:00 am del domingo.

21 de Junio del 2014

El Sábado 21 de Junio realizamos el primer diseño del proyecto siguiendo las especificaciones de la tarea y obtuvimos el siguiente Modelo Conceptual. Lo enviamos al profesor para su evaluación




Asimismo investigamos como cargar archivos XML a SQL y poder accesar a los datos. Desgraciadamente no contábamos que el diseño nos tomaría mucho tiempo y decidimos continuar la investigación el domingo 22 de junio del 2014.

Comenzamos a trabajar a las 12:00md y terminamos a las 11:30 pm