A continuación se presentaran las conclusiones y resultados finales del proyecto "Control_Cine" elaborado en el curso Bases de Datos de la carrera Ingeniería en Computación del Instituto Tecnológico de Costa Rica, a cargo del Profesor Franco Quiros.
La elaboración del proyecto anterior fue muy provechosa a nivel académico, ya que este es el primer curso de Bases de Datos que cursamos algunos de los estudiantes, en este caso estamos incluidos, por lo tanto al inicio del curso no contábamos con casi ningún conocimiento del tema, conocimientos que se fueron adquiriendo con el transcurso del curso, pero con mas intensidad en la elaboración del proyecto ya que teníamos que enfrentarnos a los problemas en un "ambiente real".
A lo largo del proyecto se tuvieron varios inconvenientes por la falta de experiencia y conocimiento, pero fueron solucionados consultando conocimiento experto del profesor, así como de profesionales en el tema. También hubo la necesidad de acudir a fuentes de información en Internet para poder capacitarse en la solución del problema.
Para el desarrollo del proyecto se decidió programar la aplicación web en ASP.NET, por lo que se tuvo que llevar a cabo una capacitación en ASP.NET, la cual resulto un poco complicada al inicio para generar la conexión con la Base de Datos.
El desarrollo de la aplicación de escritorio no causo mayor problema del que se tenia planeado, ya que se contaban con los conocimientos suficientes para su elaboración.
Por ultimo, la generación de la Base de Datos y en especial de los Store Procedures fue la parte que se complico mas, por la falta de conocimientos señalada anteriormente, como también algunos aspectos en los cálculos, que no se tenían claros en la especificación. Uno de los mayores inconvenientes fue el constante cambio de la versión de la Base de Datos no normalizada que había que migrar, ya que esto no deja avanzar correctamente el proyecto y había que estar retrocediendo a generar cambios en el diseño de la Base de Datos y el los script de migración y procedimientos.
Los resultados finales del proyecto fueron positivos, se pudo completar el proyecto al 90%, fue un trabajo muy laborioso por todos los aspectos en los que hubo que capacitarse tanto en el uso de la herramienta de SQL, como en los lenguajes SQL y ASP.NET.
miércoles, 8 de mayo de 2013
martes, 7 de mayo de 2013
Se realiza la migración de datos.
Se decide que para rellenar los campos de nuestra base de datos en los cuales no se brinda la información requerida desde la base de datos no normalizada, como por ejemplo, la descripción de la película, se les asigna un valor por defecto, como lo seria en este caso 'Descripción de película'.
Durante la realización de la migración de película nos encontramos con un error en el Varchar, del cual nos llegamos a dar cuenta que este se debía a que teníamos definido el campo de Nombre de película como un nvarchar(30) y existía una película que de casualidad ocupaba 31 caracteres por lo que no podía ser agregada y la migración fallaba. Por lo tanto se resuelve a cambiar el tamaño del campo correspondiente.
Es importante anotar que también se encontraron conflictos con la agregación de las salas debido a que teníamos definido el campo de Numero de sala como un Int y nos estaban brindando un nvarchar, por lo que se resuelve cambiar el campo a un varchar. Este cambio nos generara problemas a la hora correr la aplicación también debido a que en algún momento en la aplicación en lugar de recibir el INT esperado, se recibirá un String. Se debe considerar este arreglo en la aplicación.
Otro pequeño conflicto que obtuvimos durante la migración fue a la hora de agregar los periodos. En este caso nos dimos a la tarea de aprender a utilizar correctamente el group by (http://msdn.microsoft.com/es-es/library/ms189288(v=sql.90).aspx) el cual nos ayudo mucho en la consulta para la migracion.
Se finaliza la migracion.
domingo, 5 de mayo de 2013
sábado, 4 de mayo de 2013
Como la base de datos de prueba subida no nos funciono se decidió hacer todas las inserciones masivas poco a poco después de tener la base llenada con los datos correctamente se dispone a crear un back-up de la base.
De esta forma si nos funciona el archivo.bak y se procede ha realizar la migración 2 horas
De esta forma si nos funciona el archivo.bak y se procede ha realizar la migración 2 horas
viernes, 3 de mayo de 2013
miércoles, 1 de mayo de 2013
Se completa el procedimiento ComprarTiquete de la BD y procede a finalizar también los otros procedimientos en base al anteriormente mencionado.
Se realizan pruebas sobre los nuevos procedimientos almacenados( canjearCortesia, reservarTiquete,pagarTiquete). Ademas se asignan los estados del asientos :
0- Disponible
1- Ocupado
2- Reservado
Se realizan también procedimientos necesarios como actualizar el cliente, en este caso seria el código de cortesía, ó actualizar los asientos de acuerdo a la necesidad.
martes, 30 de abril de 2013
domingo, 28 de abril de 2013
viernes, 26 de abril de 2013
Se analiza el problema de comprar tiquete ademas.
Este debe verificar los asientos disponibles, obtener un id y llamar a otro Store Procedure para que actualice el estado de ese asiento si se vendió correctamente.
Se visitan distintas fuentes para lograr el procedimientos con la transacción sintácticamente adecuado:
http://stackoverflow.com/questions/6252757/stored-procedure-transaction
Store procedures realizados anteriormente en el curso de bases de datos impartido el II semestre del año 2011.
http://msdn.microsoft.com/es-es/library/kb9s9ks0.aspx - En este link logramos aclarar cualquier cantidad de dudas, entre ellas el uso de funciones agregadas como SUM, COUNT, DATEPART, DATEDIFF entre otros.
jueves, 25 de abril de 2013
![]() |
| La Base de Datos física |
Como lo menciona la especificacion.
Se procede a realizar store procedures básicos para todas las tablas, con basicos nos referimos a los Insert de las diferentes tablas para que de esta forma haya mas facilidad a la hora de crear los Store Procedures mas elaborados como ComprarTiquete, CanjearCortesia, PagarReservar ó ReservarTiquete debido a que estos son transaccionales y ademas implican una serie de condicionales para su correcto funcionamiento.
martes, 23 de abril de 2013
El profesor aclara las dudas elaboradas con el siguiente correo:
Me es dificil leer este modelo fisico, pues es grande. Prefiero conceptual.
1. No necesariamente.
2. El tiquete
3. Simplemente use una tabla de usuarios
4. No elimine, y marque la pelicula como "no activa' o 'eliminada"
5. Manana lo comento en clase.
Sobre el modelo, favor use como base el que hicimos en clase para resolver el mismo problema. No entiendo pq incluye contactacion si el problema no lo pide. El resto, simplemente esta malo. Tenga claridad en el modelo conceptual antes de hacerlo fisico. Yo la puedo guiar con el conceptual, pero no con el fisico, que es lo que Ud. me envia.
Saludos
Ademas de aclarar la forma en la que se debe realizar el llenado masivo, se procede a realizar los cambios necesarios de acuerdo a la consulta,realizada hoy despues de clases, al profesor acerca de como se desea el modelo, entre ellas, no usar la tabla persona, contacto ni ninguna relacionada a las mismas debido a que están de mas.
Me es dificil leer este modelo fisico, pues es grande. Prefiero conceptual.
1. No necesariamente.
2. El tiquete
3. Simplemente use una tabla de usuarios
4. No elimine, y marque la pelicula como "no activa' o 'eliminada"
5. Manana lo comento en clase.
Sobre el modelo, favor use como base el que hicimos en clase para resolver el mismo problema. No entiendo pq incluye contactacion si el problema no lo pide. El resto, simplemente esta malo. Tenga claridad en el modelo conceptual antes de hacerlo fisico. Yo la puedo guiar con el conceptual, pero no con el fisico, que es lo que Ud. me envia.
Saludos
Ademas de aclarar la forma en la que se debe realizar el llenado masivo, se procede a realizar los cambios necesarios de acuerdo a la consulta,realizada hoy despues de clases, al profesor acerca de como se desea el modelo, entre ellas, no usar la tabla persona, contacto ni ninguna relacionada a las mismas debido a que están de mas.
domingo, 21 de abril de 2013
Dudas Iniciales
Surgen dudas correspondientes al modelo y la definicion del proyecto :
1- El funcionario y su acceso a la appweb en el store procedure deberia manejar la contraseña con md5?
2- Deberia existir alguna tabla de comprobante de pago (factura) ? o solo con el tiquete se puede decir que se deduce la factura? En realidad supongo q si deberia existir la factura, pero la pregunta no esta demas.
3-En el punto que dice: un funcionario puede eliminar,agregar o editar tandas y peliculas, en el caso de eliminar por ejemplo si elimina un pelicula se estaria eliminando un monton de tablas en cascada y no se si eso es lo que quiere decir, no me queda muy claro en realidad
4- Los store procedure deben ser transaccionales si lo necesitan? como insertar eliminar y editar?
5- En el punto en el que habla de compra masiva, se refiere a a hacer un script mediante store procedures insertando una gran de tiquetes?
1- El funcionario y su acceso a la appweb en el store procedure deberia manejar la contraseña con md5?
2- Deberia existir alguna tabla de comprobante de pago (factura) ? o solo con el tiquete se puede decir que se deduce la factura? En realidad supongo q si deberia existir la factura, pero la pregunta no esta demas.
3-En el punto que dice: un funcionario puede eliminar,agregar o editar tandas y peliculas, en el caso de eliminar por ejemplo si elimina un pelicula se estaria eliminando un monton de tablas en cascada y no se si eso es lo que quiere decir, no me queda muy claro en realidad
4- Los store procedure deben ser transaccionales si lo necesitan? como insertar eliminar y editar?
5- En el punto en el que habla de compra masiva, se refiere a a hacer un script mediante store procedures insertando una gran de tiquetes?
sábado, 20 de abril de 2013
Modificacion en MBD inicial
Se realizan las siguientes modificaciones al modelo en el Motor de Base de Datos que teniamos inicialmente.
martes, 16 de abril de 2013
Se empieza a utilizar la herramienta seleccionada para la creación de las aplicaciones web Visual Studio 2010 Developer.
Algunos avances del proyecto se crea la interfaz a utilizar mediante un archivo template.css descargado del sitio web: www.freecsstemplates.org/ y se modifica a conveniencia para ser utilizado para realizar la aplicación web.
Algunos avances del proyecto se crea la interfaz a utilizar mediante un archivo template.css descargado del sitio web: www.freecsstemplates.org/ y se modifica a conveniencia para ser utilizado para realizar la aplicación web.
jueves, 11 de abril de 2013
Con este modelo conceptual iniciamos nuestro proyecto.
Este modelo fue diseñado en clases y adaptado para el proyecto presente, por lo que se realizan cambios en el manejo de asientos, función, película, entre otros.
Ademas surgen dudas acerca de como manejar los asientos, si es necesaria la tabla AsientosXSala o si se debería utilizar mas bien AsientosXFuncion.
miércoles, 10 de abril de 2013
El día de hoy se retoma el desarrollo de la base de datos ya con la solución de ciertos aspectos que impedían el correcto desarrollo del mismo. Parte de estos aspectos rondan en la correcta explicación del problema por parte del profesor el día martes durante el transcurso de la clase donde aclaró el tema de las tablas inutilizables(hasta ese momento) que presentaba el modelo conceptual base que se realizó en clases.
Posteriormente, se concretó el modelo que se utilizará para el desarrollo del proyecto y comenzamos a realizar nuestros primer contacto con la herramienta SQL Server Management Studio, esto pues ya se había investigado sobre SQL y sobre su sintaxis, pero la utilización de la herramienta fue muy poca y no pudimos llegar a observar todas las herramienta que el software nos brinda además de algunas suministradas por el profesor en algunas clases anteriores.
Por este motivo, decidimos explorar la herramienta y capacitarnos para poder utilizar y aprovechar los recursos que nos brinda esta herramienta. Mientras tanto, la estructuración del modelo físico era la meta por conseguir basándose en el modelo conceptual anteriormente concretado, pero lo dejamos a un lado para conseguir avanzar con la construcción de Base de Datos.
Una vez concluido esto se pensaba proseguir con el modelo físico y así unir las tablas basándose en la documentación que este produce, desafortunadamente surgieron pensamientos sobre el desarrollo de los Store Procedures (SP) y por lo tanto se comenzó la investigación al respecto, sobre como utilizar el paradigma correcto, como realizar las consultas que necesitas, enumerar las consultas que debemos realizar y las posibles dudas que se pueden presentar. 3 horas
sábado, 6 de abril de 2013
Se implementa la conexion entre la aplicacion y la base de datos y se utilizan las librerias de ado.net.
Nos guiamos mediante el siguiente link:
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executereader(v=vs.71).aspx
Se encuentran conflictos a la hora de utilizar los dropdown list para obtener datos por lo que se decide modificar un poco los SP de getFunciones y getAsientos.
Nos guiamos mediante el siguiente link:
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executereader(v=vs.71).aspx
Se encuentran conflictos a la hora de utilizar los dropdown list para obtener datos por lo que se decide modificar un poco los SP de getFunciones y getAsientos.
viernes, 5 de abril de 2013
Instalación de las herramientas necesarias para el proyecto
Para este proyecto se utilizara la herramienta de motor de bases de datos Microsoft SQL Server 2008 ya que al ser una versión mas antigua tiene menos riesgos de crear problemas y generar bugs, se dispondrá a la instalación de este con todas las herramientas que se son necesarias para la creación de una base de datos con mayor importancia la herramienta SQL Server Management Studio, para la creación de la base de datos física y las consultas necesarias para extraer la información correcta y necesaria para cada consulta y llegar a mostrarla ya sea en una pagina web o en una aplicación de escritorio para la cual usaremos la herramienta de Visual Studio 2010 Developer para la creación de la pagina web especificada y Visual Studio C# para la creación de la aplicación de escritorio debido a que ambas herramientas al igual que SQL Server son de la compañía Microsoft y ambas se adaptan muy bien y ademas es mas fácil realizar las conexiones necesarias desde la aplicación web o de escritorio con la base de datos en cuestión.
Ahora se procederá a la instalación de la herramienta ya mencionada Visual Studio 2010. 2 horas y media
Cambios en el Modelo Conceptual
Al empezar la elaboración de las consultas solicitadas en la especificación se decidió agregar una tabla de asientos agregada a la función ya que cada asiento virtualmente representado esta ocupado o libre solo para cierta función, así con la agregación de esta tabla logramos representar mejor los asientos que contiene cada función, ademas de esto se eliminaron las tablas de día y semana, las cuales se sustituyeron por la tabla de periodo como había recomendado el profesor desde un principio. 2 horaslunes, 1 de abril de 2013
![]() |
| Primer Modelo Conceptual de la Base de Datos Control_Cinema |
Se representa la reserva y la cortesía como una tabla aparte para ser tratadas específicamente en los casos en los cuales se usan estos, las tablas de semana y día pensando en la creación de la consulta a mostrar en la pagina web que solicita la especificación. 1hora y media.
martes, 26 de marzo de 2013
Comienzo
Análisis del problema de bases de datos para el control de las tandas de un cine las ventas de tiquetes, agregar, eliminar y modificar una tanda o película. Surgen dudas de como tratar la parte de reservaciones y de cortesía. Se define las Herramientas a utilizar: Microsoft SQL Server 2008 y para la parte de interfaz se utilizarán las herramientas de Microsoft Visual Web Developer 2010 para la aplicación web solicitada y Microsoft Visual C# 2010 para la aplicación de escritorio de compra de tiquetes. 1 hora
Suscribirse a:
Comentarios (Atom)

.png)


.jpg)

