Programacin de Consultas SQL Aplicacin ASP.Net ADO.Net EF Parte 1
LDP3501-2011 / DUOC-AV
En esta gua: Desarrollo de Aplicaciones en Capas con ASP.Net y ADO.Net EF ..................................... 1 El Requerimiento ....................................................................................................... 1 Roadmap de la aplicacin ........................................................................................... 4 Sitio Web de Empresas ................................................................................................................ 4 Capa de Negocio .......................................................................................................................... 4 Capa de Datos ............................................................................................................................. 5 Elementos de Solucin ................................................................................................................ 5
Escuela de Informtica y Telecomunicaciones
Pgina 1 Desarrollo de Aplicaciones en Capas con ASP.Net y ADO.Net EF
Hasta el momento hemos revisado una serie de tecnologas para el acceso, visualizacin y mantencin de datos. Ahora es el momento unificar todas estas tcnicas y herramientas para dar vida a una aplicacin divida en capas de nivel empresarial. El desarrollo de esta aplicacin repasar todos los conceptos acumulados hasta el momento, para generar una Solucin Empresarial que nos permita realizar el mantenimiento del modelo de datos de Empresas con el que hemos ejercitado clase a clase.
El Requerimiento Todo desarrollo informtico inicia por un requerimiento de solucin tecnolgica, el cual puede ser externo o interno. Bsicamente nuestra solucin de empresas deber dar respuesta a los siguientes requerimientos simplificados:
1) Pgina Principal y Pgina de Inicio. a) La Principal debe contener un men en base a la siguiente navegacin: Inicio Empresas Maestro Estadsticas Empleados Maestro Estadsticas b) La de Inicio slo se basa en la Principal para acceder al men.
2) Pgina Maestro de Empresas (basada en la Pgina Principal) a) Se debe presentar un GridView con la informacin de todas las empresas de la base de datos que estn en la tabla Empresa. b) Los registros se deben presentar en pginas de 10 elementos. c) Se debe generar una columna con un botn que permita Eliminar la empresa. Esta accin se debe realizar con confirmacin y validar la integridad de la informacin verificando que esta empresa no tenga empleados asociados antes de la eliminacin, se debe notificar si esta ltima situacin ocurre. d) Se debe generar una columna con un botn que permita Editar la informacin de la empresa. La edicin se realiza en la pgina del Mantenedor de Empresas, con los datos del registro cargados. e) Se debe generar una columna que permita ver los Empleados en el Maestro de Empleados, filtrando estos ltimos para la empresa del registro asociado. f) Se debe presentar un botn adicional para Agregar nuevas empresas, el cual debe llevar al usuario al Mantenedor de Empresas.
3) Pgina Mantenedor de Empresas (NO se basa en la pgina Principal) a) Se debe presentar un formulario que permita realizar las acciones de Agregacin o Edicin de los datos de una empresa. b) Se deben presentar dos botones de accin que permitan: Grabar, para insertar el nuevo registro o guardar los cambios de la edicin; y Cancelar, para abandonar la accin y retornar al Maestro de Empresas. Escuela de Informtica y Telecomunicaciones
Pgina 2 c) Se deben aplicar las siguientes validaciones: i) Rut: Numrico entero obligatorio, debe ser menor o igual a 99.999.999. En el caso de nuevos registros este no debe existir en otra empresa. ii) Dv: Obligatorio y slo permite 1 dgito de 0 a 9 ms el literal K (slo mayscula). iii) Razn Social: Obligatorio de mximo 50 caractres. d) Debe presentar un botn para volver al Maestro de Empresas.
4) Pgina Estadsticas de Empresas (basada en la pgina Principal) a) Debe contener botones para las siguientes consultas: i) Obtener el Nmero de Empresas con un nmero de empleados entregados en un rango. ii) Obtener los datos de la Empresa con ms empleados. iii) Obtener los datos de la Empresa con menos empleados. iv) Obtener el promedio de Empleados por Empresa.
5) Pgina Maestro de Empleados (basada en la Pgina Principal) a) Se debe presentar un GridView con la informacin de todos los empleados de la base de datos que estn en la tabla Empleado. b) Si el Maestro es solicitado desde el Maestro de Empresas, se deben filtrar los registros para solo presentar los empleados de la empresa origen. c) Los registros se deben presentar en pginas de 15 elementos. d) Se debe generar una columna con un botn que permita Eliminar al empleado. Esta accin se debe realizar con confirmacin. e) Se debe generar una columna con un botn que permita Editar la informacin del empleado. La edicin se realiza en la pgina del Mantenedor de Empleados, con los datos del registro cargados. f) La columna de la Empresa debe mostrar el nombre de la Empresa y no su Rut. g) Se debe generar una columna que permita ver los datos de la Empresa, los que se presentarn en un DetailsView de solo lectura en la misma pgina a continuacin del GridView. h) Se debe presentar un botn adicional para Agregar nuevos empleados, el cual debe llevar al usuario al Mantenedor de Empleados.
6) Pgina Mantenedor de Empleados (NO se basa en la pgina Principal) a) Se debe presentar un formulario que permita realizar las acciones de Agregacin o Edicin de los datos de una empresa. b) El campo Empresa debe ser presentado con un DropDownList, el cual permite la seleccin de la Empresa del Empleado. En el caso de una edicin, la lista debe comenzar con el valor original seleccionado. c) Se deben presentar dos botones de accin que permitan: Grabar, para insertar el nuevo registro o guardar los cambios de la edicin; y Cancelar, para abandonar la accin y retornar al Maestro de Empleados. d) Se deben aplicar las siguientes validaciones: i) Rut: Numrico entero obligatorio, y debe ser menor o igual a 99.999.999. En el caso de nuevos registros este no debe existir en otro empleado. ii) Dv: Obligatorio y slo permite 1 dgito de 0 a 9 ms el literal K (slo mayscula). iii) Nombres: Obligatorio de mximo 20 caractres. iv) Apellidos: Obligatorio de mximo 20 caractres. Escuela de Informtica y Telecomunicaciones
Pgina 3 v) Empresa: Obligatoria. e) Debe presentar un botn para volver al Maestro de Empleados.
7) Pgina Estadsticas de Empleados (basada en la pgina Principal) a) Debe contener botones para las siguientes consultas: i) Obtener el o los Nombres ms comunes. ii) Obtener el Nmero de Empleados cuyo Nmero de Rut se encuentra en un Rango. iii) Obtener el Nmero de Empleados cuyo Dgito Verificador se encuentra en un Rango. EL Rango debe ser numrico y se debe presentar un CheckBox, para incluir los empleados con Dgito K.
Escuela de Informtica y Telecomunicaciones
Pgina 4
Roadmap de la aplicacin
Teniendo la definicin del requerimiento, es decir, lo que debemos construir, estamos en condiciones de hacer una macro planificacin de los componentes a construir y su relacin. No debemos perder de vista que estamos trabajando en una Arquitectura en Capas, por lo tanto en los desarrollos sobre .Net hay elementos a considerar que ya hemos visto con antelacin.
El siguiente diagrama es un esbozo de la arquitectura que poseer nuestra aplicacin:
Sitio Web de Empresas
Se deber construir una aplicacin Web ASP.Net, que contenga los formularios de Maestros y Mantenedores, la pgina Principal, la pgina de Inicio y la de Error.
Esta aplicacin se responsabiliza de presentar la informacin entregada por la Capa de Negocio y capturar los datos de registros nuevos o modificados desde la interfaz de usuarios, para ser enviados hacia la Capa de Negocio para su procesamiento.
Capa de Negocio
Se deber construir una componente .Net en C#, que provea de la informacin requerida en la Capa de Presentacin y recibir de esta las solicitudes de acciones de mantencin sobre los registros (agregar, modificar, eliminar), adems de proveer los mtodos requeridos para el soporte operacional como son Consultas y Validaciones.
Escuela de Informtica y Telecomunicaciones
Pgina 5 Adicionalmente esta componente debe interactuar con la Capa de Datos, para acceder a los registros del modelo representado por la Base de Datos de Empresas. Esta comunicacin se realizar por medio de las entidades que contienen la Capa de Datos y el EDM asociado.
Se usar un espacio de nombre que nos permita agrupar e identificar las componentes de negocio creadas, cuyo nombre ser Empresas.Negocio.
Capa de Datos
Se deber construir una componente .Net en C#, que provea el acceso al Servidor SQL Server en el cual reside el modelo de datos de empresas, representado por la base de datos Empresas que hemos trabajado en las guas anteriores.
El mapeo hacia los objetos de la base de datos (tablas y procedimientos) se realizar mediante un Modelo de Entidades de Datos (EDM) que se generar con ADO.Net Entity Framework.
Se usar un espacio de nombre que nos permita agrupar e identificar las componentes de datos generadas en el EDM, cuyo nombre ser Empresas.DALC.
Elementos de Solucin
Para poder llevar un orden en la aplicacin y componentes que se construirn, la solucin se organizar en carpetas que contendrn los elementos asociados a cada una de las capas que se desarrollarn. El siguiente diagrama ejemplifica esta estructura: