UTEQ Nombre del proyecto:
Firmado digitalmente por UTEQ Nombre de reconocimiento (DN): cn=UTEQ, o=UTEQ, ou=UTEQ,
[email protected], c=MX Fecha: 2015.09.22 15:13:22 -05'00'
“SAP EN MRO: PROYECTO DE COMEDOR”
Empresa:
TECHNICAL OPERATIONS
Memoria que como parte de los requisitos para obtener el Título de:
TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA REDES Y TELECOMUNICACIONES Presenta:
CARRILLO CUÉ RICARDO
Asesor de la UTEQ
Asesor de la Organización
Ing. Jorge Ramiro Alvarado
Ing. Cesar Andrés Durán
De la Vega
Mazariegos
Santiago de Querétaro, Qro. Septiembre de 2015 1
Resumen
En este documento se puede revisar el proceso llevado en la estadía del periodo abril-agosto del presente año. Esta fue desarrollada en la empresa AM DL MRO JV SAPI de CV (mejor conocida como TechOps), empresa dedicada a la aviación. Las actividades se dieron directamente en el área de IT, desarrollando
software
orientado
específicamente
a
aplicaciones
Web,
haciendo uso de los lenguajes como HTML5, ASP.Net y C#, también se aplicaron complementos como son Bootstrap y AJAX. Para administrar la información, se utiliza una base de datos en SQL Server 2012 Express. Si bien la empresa, está consolidada y cuenta con las licencias de las herramientas de desarrollo, los sitios generados, fueron creados en base a opciones sin costo de licencia. En este reporte de estadía, están descritas las aplicaciones y su proceso de desarrollo dados en un entorno de programación que facilita el diseño y agiliza la generación de código; Visual Studio 2012, es una herramienta para desarrollo en C#. Afortunadamente este lenguaje, tiene un gran parecido con Java, lo que permite entender su lógica y dominarlo rápidamente. Si bien algunas de las aplicaciones ya existían, el modificarlas y desarrollar las nuevas, permitirá a la empresa trabajar de una forma adecuada y sobretodo, adquirir sus propias aplicaciones, evitando así el gasto en renta y compra de productos que pueden ser desarrollados por la misma empresa.
2
Description
3
Agradecimientos
Agradezco a Dios por darme la vida y la oportunidad de seguir aquí, con esta vida con que tanto aprecio, por darme amistad, por darme amor y por darme ilusión. A una familia que con entusiasmo me ha apoyado en cada paso de mi vida y me ha mostrado lo lejos que se puede llegar gracias a la unión, gracias al trabajo constante y sobre todo gracias a la lealtad entre cada miembro. Agradezco el apoyo, las experiencias, la alegría, la ilusión, las frustraciones y los enojos; pues me han formado en la persona que hoy día soy. Las personas a las que he conocido y no son parte de mi vida ahora pues al interactuar he aprendido cosas nuevas. A mi novia que a cada momento me ha demostrado que es bueno luchar por conseguir lo que se quiere, que me ha levantado y me ha apoyado para seguir adelante. A mis amigos que me han acompañado y me han encaminado a ser quien soy. A mis padres y a mis hermanas y cuñado pues desde que los conozco me han sabido escuchar, y han sabido dar un buen consejo e incluso han ayudado para crear una persona integral en mí. El finalizar este documento, es un logro que después de 2 años de estudios y 4 meses de prácticas me han permitido realizar. Dedico este logro a todos los que han permitido una evolución en mi persona. Muchas gracias.
4
ÍNDICE
Resumen ........................................................................................................................... 2 Description ....................................................................................................................... 3 Agradecimientos .............................................................................................................. 4 ÍNDICE ............................................................................................................................... 5 I.
INTRODUCCIÓN........................................................................................................ 6
II.
ANTECEDENTES ...................................................................................................... 7
III.
JUSTIFICACIÓN .................................................................................................... 9
IV.
OBJETIVOS...........................................................................................................10
I.
Objetivo específico del sistema del comedor ..................................................10
V.
ALCANCE .................................................................................................................11
VI.
ANÁILIS DE RIESGOS .........................................................................................13
VII.
FUNDAMENTACIÓN TEÓRICA ...........................................................................15
VIII.
PLAN DE ACTIVIDADES......................................................................................21
IX.
RECURSOS MATERIALES Y HUMANOS...........................................................23
X. DESARROLLO DEL PROYECTO............................................................................25 XI.
RESULTADOS OBTENIDOS................................................................................53
XII.
CONCLUSIONES Y RECOMENDACIONES .......................................................55
XIII. ANEXOS ...................................................................................................................... I.
Facturación con SAP...............................................................................................
II.
Planeación del proyecto CAEPE ...........................................................................
III. Prueba Online Exman ............................................................................................. XIV. BIBLIOGRAFÍA. .........................................................................................................
5
I.
INTRODUCCIÓN
AM DL MRO JV SAPI de CV, mejor conocida como TechOps, es una empresa dedicada a dar mantenimiento a los aviones. Al ser una empresa de nivel internacional, está sujeta a la Norma Oficial Mexicana, la NOM-145/1SCT3-2001;
de
manera
Administration) con la
internacional
norma
FAA
ante
la
FAA
(Federal
Aviation
8310-3. Ambas normas rigen las
necesidades, procesos y características que un Taller de Mantenimiento, Reparación y Reacondicionamiento de Aviones debe de tener. Al tener diferentes aplicaciones con su respectiva información almacenada en servidores, el departamento de Tecnologías de la Información (TI), es el responsable de asegurar la comunicación entre empleados así como el uso de los datos en las actividades administrativas los 365 días del año. El desarrollo del proyecto va dirigido al personal administrativo que controla las nóminas. Dentro de las prestaciones los empleados tienen un servicio de comedor. Este tiene un costo preferente de $14.05 por comida. El total de las comidas hechas por el empleado, son restadas en el pago de la nómina en la catorcena que aplica. Es decir, el sistema, determina las comidas hechas por el empleado, y el costo de estos; permite la administración de los servicios del mismo y quienes tienen acceso en la empresa.
6
II.
ANTECEDENTES
En el sector aeronáutico existen normas nacionales e internacionales que se deben de acatar para mantener los permisos de operación. Por un lado se debe de trabajar en base a la Norma Oficial Mexicana (en el apartado de la aviación) y por otro, se deben de cumplir los estándares dados por las Normas de Aviación Americana o AAF (al ser aviones estadounidenses los que ingresan a la empresa). El lugar cuenta con una granja de Servidores de la familia Dell (en su mayoría), sin embargo, una gran cantidad de actividades se realizan de manera manual. Existen servicios que son proporcionados por otras empresas, que para su funcionamiento, incluyen almacenamiento de datos fuera de la Granja o la renta de hardware y software para su uso. Actualmente
existe
un sistema
que
les
permite
a los empleados,
específicamente, al área de Recursos Humanos, mantener el control de los cursos de capacitación y actualización de cada trabajador, acorde a las especificaciones de la NOM y la AAF. También se cuenta con un sistema que la concesión del comedor cobra a la empresa para administrar la información referente al servicio del comedor.
7
Por otro lado, se ha notado un área de oportunidad en el flujo del personal con equipos portátiles. Actual mente este sistema se lleva a cabo con etiquetas de colores, lo que afecta en el control y ubicación de los equipos.
8
III.
JUSTIFICACIÓN
Aunque actualmente se cuentan con herramientas de control de datos, es necesario modificar los medios existentes, para así disminuir las inconsistencias en la información, y sobre todo, permitir a quien la revisa, manipula o utiliza, realizar sus funciones de una manera eficiente y ágil. En el sistema existente de capacitación, se requieren realizar diversas modificaciones para hacerlo más intuitivo y amigable con el usuario. Además de agregar funciones que permitan un mejor aprovechamiento de este y manejo de los datos. Se tiene acceso a través de un buscador Web, y se pretende mantenerlo para evitar la instalación de aplicaciones innecesarias en los equipos. Se requiere de realizar un análisis de los requerimientos que se den para el desarrollo del sistema del control de equipos, para permitir al encargado del desarrollo tener los elementos adecuados para sus actividades. Existen servicios que terceros brindan a la empresa, caso específico de la aplicación que administra el comedor. Al retirarse la empresa que se encarga del comedor también se retiraría su aplicación, y se dejaría sin posibilidad de controlar los gastos generados por el nuevo comedor. El desarrollo de la aplicación del comedor, permitirá tener la aplicación y el control de la información, sin importar el flujo de las concesiones.
9
IV.
OBJETIVOS
Diseñar, desarrollar, implementar y probar soluciones de Tecnologías de la Información, para que los trabajadores de la empresa puedan desarrollar sus actividades de una forma más sencilla y rápida; haciendo uso de las herramientas de desarrollo y los ambientes de trabajo que la empresa utiliza.
I.
Objetivo específico del sistema del comedor Diseñar, desarrollar, implementar y probar un portal que permita a los
encargados de llevar las nóminas de los empleados de la empresa, utilizar la información de los usuarios que han hecho uso del servicio del comedor para realizar los cobros adecuados, además de brindar o privar de los servicios del comedor al personal que está adentro de la empresa; haciendo uso de la base de datos existente y las herramientas de desarrollo orientadas a aplicaciones Web de la familia Microsoft. El empleado podrá manejar una herramienta de fácil uso y que no requiera una capacitación amplia al ser intuitiva y con textos guías.
10
V.
ALCANCE
El proyecto del Comedor será utilizado para el área administrativa. Debe de abarcar lo siguiente: -
Diseño y desarrollo que permita, al encargado de nóminas, el manejo ágil de la información que el sitio utiliza.
-
Conexión a la base de datos del comedor que la empresa FestFood (empresa con la conexión actual) regula, y partir de esta para adecuarla a las necesidades del control de la información.
-
Realización de consultas a la base de datos.
-
Se debe administrar la información de los usuarios (empleados) que han utilizado el servicio del comedor: o Dar alta del nuevo empleado en el servicio del comedor. o Cambiar o actualizar la información de los empleados, los departamentos, y los diferentes datos contenidos en la base de datos que no afecten la integridad de la misma. o Quitar permisos de los usuarios por los motivos que la empresa determina, sin eliminarlos (realizar bajas administrativas). o Realizar bajas administrativas de los platillos del menú.
-
Preparar un entorno para contingencias que permita la captura manual de tickets.
11
-
Revisar el acumulado de los empleados por rango de días, para generar consultas y reportes para su posterior uso en la base de datos de FORTIA.
12
VI.
ANÁILIS DE RIESGOS
En cualquier proyecto se genera un riesgo en su desarrollo. Aunque el proyecto principal es el “Comedor”, es importante mencionar que existen diversas tareas que como departamento se requieren y se dividen entre el personal del mismo. Esto puede generar un retraso considerable en la actividad principal, al desarrollar un gasto excesivo e innecesario o a una pérdida de horas hombre. Los riesgos existentes en el proyecto son: -
Perdida de información: queda minimizada al desarrollarse todo en un ambiente de pruebas, separado al productivo.
-
Duplicidad de información o falta de la misma: Para evitarla, se toman las bases de datos existentes, y después de analizarlas, es posible, únicamente agregar o modificarla, en ningún momento es posible eliminar la información de las bases de datos.
-
Problemas de conexión: Al ser sistemas que se manejan a través de un servidor de base de datos y uno Web. Si en el servidor se generan errores, se puede perder la conexión al mismo, esto desencadena que no se puedan realizar las actividades de forma cotidiana y por tanto se pierda estabilidad o tiempo en la realización de las mismas.
13
-
Problemas al momento de utilizar el sistema: Para eso de dará capacitación a los empleados que harán uso de ellos. Aunque no muy amplia, se requiere explicar la lógica del sistema.
-
Seguridad, integridad y privacidad de la información: Principalmente en el ambiente productivo, que al momento de pasar a este, se implementaran los sistemas de la empresa para prevenir y evitar que los usuarios sin permiso a esta herramienta, accedan al sitio.
14
VII.
FUNDAMENTACIÓN TEÓRICA
Para poder desarrollar los elementos que se requieren, se deben de conocer los siguientes elementos que son parte fundamental del desarrollo:
-
Etiquetas HTML:
HTML5 es el nuevo estándar de HTML. Cuando un browser despliega una página web, se construye un “Document Object Model” (DOM), en español un Documento de Modelado de Objetos, el cual consiste en una colección de objetos que representan los elementos HTML de la página. Cada elemento es representado en el DOM por un objeto. En los buscadores Web que soportan HTML5, ciertos objetos tendrán propiedades únicas que pueden servir para saber qué características de HTML5 están soportadas.
-
Lenguaje ASP.Net:
El lenguaje de programación ASP nace aproximadamente en el año 1996. La novedad de este lenguaje, era la capacidad de crear una página web, en la que se pudiera programar; pues solo se podía dibujar una tabla e incluir unos pocos datos.
15
Posteriormente se crea el lenguaje ASP.Net que es un lenguaje mucho más complejo que el original ASP. Este lenguaje nos permite separar en las páginas webs la parte de diseño que contiene la página, no interviniendo para nada el código HTML. Así el trabajo de los diseñadores y programadores es mucho más sencillo. Cada cual se ocupa de su parte del trabajo dentro de la página web sin interferir en la parte de otro. El lenguaje ASP a grandes rasgos funciona así: un computador cliente hace una petición de una página ASP. El computador servidor interpreta esta petición y le envía una página web. El resultado final es una página HTML que se le envía al cliente. El usuario no llega nunca a ver el código ASP, sino que ve el resultado de interpretar dicho código, es decir, una página HTML. Actualmente el ASP.Net se parece mucho al WinForm, podemos arrastrar cualquier control, como botones, sobre la página. Si hacemos doble clic sobre uno de estos botones se produce un evento (acción de presionar) e implicará que en la parte de la programación de posibilidad de ejecutar acciones, consecuencia del botón. El lenguaje de programación ASP, nos ofrece las siguientes ventajas: separar el código HTML del ASP, mayor facilidad para realizar cambios, fácil instalación y funcionamiento, mayor protección del código.
16
-
WinForm
Un formulario es la base de una aplicación. Un Winform es un espacio que le permite al desarrollador, crear, diseñar y estructurar una interfaz gráfica que el usuario podrá utilizar para hacer uso de la información que esta controla. Visual Studio, proporciona un IDE (entorno integrado de desarrollo) con controles y funciones preinstaladas a través de .NET Framework. Al hacer uso de estas funciones existentes, crear las propias y conectarlas, se puede realizar un desarrollo fácil y rápido, para crear las soluciones que se necesitan.
-
Framework
La palabra inglesa "framework" (marco de trabajo) define, en términos generales, un conjunto estandarizado de conceptos, prácticas y criterios para enfocar un tipo de problemática particular que sirve como referencia, para enfrentar y resolver nuevos problemas de índole similar. Típicamente, puede incluir soporte de programas, bibliotecas, y un lenguaje interpretado, entre otras herramientas, para así ayudar a desarrollar y unir los diferentes componentes de un proyecto. Tiene como objetivo principal ofrecer una funcionalidad definida, autocontenida, siendo construidos usando patrones de diseño, y su característica principal es su alta cohesión y bajo acoplamiento.
17
-
Lenguaje C#
Es un lenguaje de programación que se ha diseñado para compilar diversas aplicaciones que se ejecutan en .NET Framework. C# es simple, eficaz, con seguridad de tipos y orientado a objetos. Las numerosas innovaciones de C# permiten desarrollar aplicaciones rápidamente y mantener la expresividad y elegancia de los lenguajes de estilo de C. Visual C# es una implementación del lenguaje C# de Microsoft. Visual Studio ofrece compatibilidad con Visual C# con un completo editor de código, un compilador, plantillas de proyecto, diseñadores, asistentes para código, un depurador eficaz y de fácil uso y otras herramientas. La biblioteca de clases de .NET Framework ofrece acceso a numerosos servicios de sistema operativo y a otras clases útiles y adecuadamente diseñadas que aceleran el ciclo de desarrollo de manera significativa.
-
Librería AJAX Tool Kit
El ASP.NET AJAX Control Toolkit nace como un proyecto conjunto entre la comunidad de programadores y Microsoft. Está desarrollado en base a ASP.NET AJAX y contiene una serie de controles Web y extensiones con los que podremos utilizar las avanzadas características de ASP.NET AJAX sin más que un arrastre de ratón. Del mismo modo, con su descarga disponemos de ejemplos de uso, así como del propio código fuente de los controles. Y lo mejor
18
de todo es que es totalmente gratuito. Los controles Web tienen una entidad por sí
mismos,
mientras
que
las
extensiones,
únicamente
añaden
un
comportamiento a un control Web existente. Se trata de una serie de pequeñas funcionalidades que cualquier Web máster, en su historia de programador, ha utilizado o deseado para sus Webs. La diferencia ahora es que los ejemplos son 100% AJAX y usarlos no exige conocimiento alguno sobre AJAX, JavaScript o XML. Estos controles van desde un simple botón con una alerta asociada, hasta un complejo panel que podemos arrastrar por la pantalla; en ambos casos, mandando y recogiendo información entre el cliente y el servidor sin ningún tipo de recarga de página. Su uso hará que nuestra Web sea mucho más atractiva y simpática al usuario a la par que potente y efectiva.
-
Microsoft SQL Server 2012 Management Studio Express
Es una herramienta gráfica fácil de usar, libre de gestión para administrar SQL Server. La herramienta incluye tanto los editores de scripts y herramientas de gráficos que trabajan con objetivos y características de servidor. Al ser una herramienta libre, tiene limitaciones, no puede administrar SQL Server Analysis Services, Integration Services, Notification Services, Reporting Services o el Agente SQL Server.
19
-
Visual Studio 2012
Existen diferentes versiones en la edición 2012. Cada versión es una familia de
productos,
herramientas
y
tecnologías
(conjunto
de
elementos
y
herramientas), que puede utilizar para crear aplicaciones potentes con un alto rendimiento. Permite utilizar los recursos en estos artículos para aprender a crear a partir de casos prácticos, además de aplicaciones para equipos de escritorio, web, teléfonos y consolas de juegos.
-
Windows Server 2012
Es la última edición lanzada por Microsoft del sistema operativo Windows Server. Es la versión para servidores de Windows 8 y es el sucesor de Windows Server 2008 R2. El software está disponible para los consumidores desde el 4 de septiembre de 2012. A diferencia de su predecesor, Windows Server 2012 no tiene soporte para computadoras con procesadores Intel Itanium y se venden cuatro ediciones. Se han agregado o mejorado algunas características comparado con Windows Server 2008 R2, como una actualización de Hyper-V, un rol de administración de direcciones IP, una nueva versión del Administrador de Tareas de Windows, y se presenta un nuevo sistema de archivos: ReFS.
20
VIII. PLAN DE ACTIVIDADES
El plan de trabajo está divido en 3 actividades o proyectos, el primero es el proyecto de capacitación, el segundo el dedicado a seguridad o proyecto CAEPE y el tercero el proyecto Comedor, también llamado Kiosko. La siguiente imagen muestra el plan en el formato del diagrama de Gantt. Cabe aclarar que aunque existe un proyecto principal, se ha solicitado el apoyo para cubrir con esos proyectos o parte de ellos para la consumación de actividades en la misma empresa (Ver imagen 8_1).
21
8_1
Diagrama de Gantt: Página 1
22
IX.
RECURSOS MATERIALES Y HUMANOS
Es importante contemplar los elementos que son vitales para el correcto desarrollo del proyecto, a continuación se describen, separándolos de acuerdo a sus características. -
Recursos materiales: o Equipo o computadora con al menos 12 GB de RAM. Se utilizará un servidor dedicado a pruebas (Servidor Virtual) con una Memoria de Acceso Aleatorio de 16GB. o Software de diseño y desarrollo en el lenguaje ASP.Net y C#. Se utilizará Visual Studio 2012 o Gestor de base de datos. Se utilizará SQL Server 2012 Express, que permite conexión directa con Visual Studio. o Equipos individuales que permitan el acceso al servidor. El usuario tiene permisos para conectarse únicamente al servidor de pruebas,
y
dentro
del
servidor
mantiene
privilegios
de
Administrador. -
Recursos Humanos: o Líder de TI, el encargado de llevar a cabo la interacción con los otros departamentos y recibir las solicitudes.
23
o Encargado del departamento de Seguridad Corporativa: Que delimita y solicita el proyecto de CAEPE. o Abogado. Quien determina los elementos que son admitidos para ser publicados y vistos por el personal de la empresa. Sin estos elementos la edificación del proyecto sería difícil y posiblemente quedaría muy limitada con riesgo a que el proyecto no se lleve a cabo.
24
X.
DESARROLLO DEL PROYECTO
Como se explica en el alcance, el proyecto consta del desarrollo de un sitio que permita la administración de la base de datos que almacena la información de los tickets generados por los empleados cuando hacen uso del comedor. Para poder acceder al servidor de desarrollo, se abre la ventana de Ejecutar y se ingresa el comando “mstsc /f”. Por sí solo, mstsc, permite abrir el escritorio remoto; mientras que “/f” forza la ejecución. Hecho esto, se abre una pantalla en la que solicita la IP del equipo al que se desea acceder, y por último (como sistema de seguridad de los servidores), se pide la contraseña del usuario que desea acceder. A continuación se muestra este procedimiento.
10_1
Procedimiento de acceso al escritorio remoto TOQRODEV.
25
Dentro del servidor dedicado para desarrollo, se instalaron herramientas que permitieran realizar las actividades de forma adecuada con la idea de optimizar los procesos existentes. Se instalaron diferentes IDE´s para diferentes lenguajes y una aplicación llamada Notepad++, que consume pocos recursos y a la vez reconoce una gran cantidad de lenguajes. La imagen 10_2 muestra que los lenguajes que puede reconocer y que se utilizan en el desarrollo.
10_2
Notepad++ y los lenguajes de programación a utilizar.
Para el manejo de la base de datos se utiliza SQL Server 2012. Este entorno de Microsoft, es completamente compatible con Visual Studio 2012.
10_3
SQL Server Magnament Studio para SQL Server 2012 Express.
26
Por último, la aplicación en la que se diseñó y se desarrolló el entorno gráfico que formaría el Sitio, es Visual Studio 2012. Es un programa robusto que facilita la generación de código. En la imagen “Visual Studio pantalla de inicio” se muestra el entorno de este programa.
10_4
Visual Studio pantalla de inicio.
La base de datos que se utiliza en el proyecto es la misma que será utilizada en el desarrollo de la aplicación. Ésta, cuenta con 10 tablas, que almacenan los datos necesarios para el funcionamiento de la aplicación a crear, los datos que se requieren almacenar para su uso por los encargados de nómina y por los empleados al solicitar sus alimentos.
27
La base de datos utilizada al momento de iniciar el proyecto, se muestra en la siguiente imagen, de ser necesario, ésta puede sufrir cambios para hacer más eficientes sus procesos, recordando que no deben de eliminarse tablas de la base.
10_5
Base de Datos “COMEDOR” sin modificaciones.
Para poder desarrollar la aplicación, se utiliza el entorno de trabajo (IDE), al abrirlo, se selecciona la aplicación file, luego New Website, se asigna el nombre y la ubicación en donde se creará el proyecto y se podrá modificar en este mismo. Una vez que se realice esta acción se puede empezar a trabajar con etiquetas HTML y C#. La página se muestra simple, para ayudar en cuanto a estética; existe una herramienta gratuita llamada Bootstrap. Esta permite modificar los elementos
28
existentes en la página Web con estilos prediseñados, que además de permitir modificar el aspecto, también permite adecuarlos al tamaño de la pantalla que despliegue la información e incluso de modificar su tamaño de manera automática en caso de que el buscador cambie su tamaño. El proceso de instalación consiste en los siguientes pasos: -
Se descarga el archivo de la página, actualiza la información del proyecto y en el Sitemaster se mandan llamar las referencias y los enlaces al proyecto Bootstrap para poder hacer uso de este.
Para poder entender el procedimiento se presentan las imágenes 10_6 y 10_7, que muestran el Script y el proceso de instalación respectivamente.
10_6
Introducir Scripts de conexión para Bootstrap.
Otra herramienta que se requiere instalar es AJAX Toolkit. Esta extensión permite
hacer uso de las etiquetas Ajax, y con estas realizar acciones
avanzadas como las extensiones de calendario y el uso de paneles. Son compatibles con C#, y cuentan con una programación básica que automatiza funciones; por lo que es recomendable tenerlas.
29
10_7
Introducir archivos de Bootstrap.
El proceso de instalación es más largo que Bootstrap en cuanto a pasos y a tiempo. Para revisarlo se puede observar la imagen 10_8. Primero se debe de tener la carpeta de AJAX.
10_8
Introducir Ajax Toolkit.
30
En el IDE, se crea una nueva carpeta con el nombre de AJAXControlToolkit y se le agregan campos. Se debe de buscar el archivo .ddl, archivo de formato que es el que da las funciones y las conexiones. Al instalarlo, el sistema reconoce la biblioteca creada manualmente para mostrar y albergar los elementos llamados desde la extensión de AJAX. SQL Server 2012 y Visual Studio 2012 son compatibles y tienen librerías que facilitan la conexión. Se debe de crear un documento llamado DataSet. Se crea en el menú Website, y se selecciona DataSet para C#. Es importante seleccionar la opción de C#, pues existe también la opción para VB. Al ser un proyecto desarrollado en C# se debe de seguir con este lenguaje. El archivo creado permite albergar las tablas de la base de datos además de crear vistas, consultas y Querys. Se compone de dos archivos. Solo se hace uso del “DataSet.xsd” que es el que maneja el entorno gráfico para su fácil manejo.
10_9
Crear conexión con BD.
31
Los Querys se crean en base a la función general que van a realizar. En el caso de la creación de un INSERT, un UPDATE y un DELETE, se realizan las acciones en orden posterior a las mostradas en la imagen 10_10, y se continúa con las exhibidas en la 10_12 donde se selecciona la opción a realizar. Posterior a ello, se continua con la creación, apoyado de un editor. Como se muestra en la imagen 10_13. De igual manera existe un método específico para realizar consultas, estas están descritas en la siguiente imagen, la imagen 10_11. Para realizar cualquiera de las 4 opciones anteriores, se inicia en el mismo punto. Se abre el archivo del DataSet, se crea un table adapter y se agrega un Query, como se muestra en la imagen 10_10.
10_10
Creación de Querys.
Para la creación y configuración de cualquier Query, es necesario realizar el proceso descrito en la imagen anterior, para poder después realizar el Query específico.
32
10_11
Configuración de un “Select” en DataSet.xsd.
El sistema solo permite seleccionar una opción, y en base a la selección determina la actividad que se va a realizar. Sin embargo, este solo es un soporte pues no es capaza de realizar consultas o elementos evolucionados del código.
10_12
Utilización de DataSet.xsd para realizar ABC de la base de datos.
33
Una vez seleccionada la acción a realizar se debe de generar la consulta y darle nombre. Para los 3 casos se sigue el mismo procedimiento. Con la diferencia de que el código se realizaría como se muestra en la imagen 10_13.
10_13
Ejemplos del ABC Aplicados en el archivo DataSet.xsd.
El proceso para crear el nuevo Query de Altas, Bajas o Cambios, se presenta en la imagen 10_14.
10_14
Configuración Query en el archivo de configuración DataSet.xsd.
34
A medida que los elementos mencionados con anterioridad se han modificado o actualizado, la aplicación Visual ha ido modificando su archivo registro llamado Web.config. En este archivo, por medio de etiquetas, se programan las direcciones y utilidades que hacen del Website una zona con características y funciones útiles. La siguiente figura muestra la conexión a Base de datos en dicho archivo.
10_15
Configuración de Web.config para conexión con base de datos.
Además, este archivo es el encargado de manejar el idioma de la aplicación. Por default, se maneja el idioma inglés, sin embargo puede modificarse para hacer que el idioma sea español, tal como se muestra en la imagen a continuación.
10_16
Configuración de Web.config para uso de idiomas.
Por último, se deben de colocar parámetros de forma manual para permitir reconocer las extensiones agregadas, en la figura 10_17, se muestra este proceso.
35
10_17
Configuración de Web.config uso de AJAX.
Esta es la configuración que debe de llevar el Web.config. A medida que se convierta en un sitio más complejo, mayores índices y datos albergarán este archivo. Realizados estos pasos, se puede iniciar con el desarrollo de la aplicación. Para ello, Visual ofrece la creación de un Sitio Maestro, que es una plantilla basada en un menú principal, con el objetivo de que esta no cambie mientras el usuario no salga del sitio. La creación de un nuevo Site.master (como es su nombre en el proyecto), se hace de la misma manera que el DataSet, y el resto de los formularios y Web que se desarrollen para el proyecto.
36
10_18
Site.master, diseño de interfaz.
Para configurarlo, se trabaja como si fuese una página desarrollada en HTML, a través de etiquetas en el cuerpo del documento. El desarrollo se realiza con complementos y está capacitado para recibir componentes de AJAX y los estilos de Bootstrap. En la imagen 10_18, se muestra el diseño del Site.master, mientras que en la imagen 10_19, se muestra el código del cuerpo del documento, recordando
que
previamente
encabezado.
37
se
había
configurado el
10_19
Site.master, código de desarrollo del encabezado.
38
Existen varias formas en las que se pueden llenar los parámetros para ejecutar los Querys. Una de ellas se hace de la siguiente forma: primero se crea un Object Data Source, que es un Script para ejecutar la función que se necesita. Estos pueden generar los Querys del ABCC (terminología utilizada para referir al uso de las bases de datos y los cueris de Altas, Bajas, Cambios y Consultas). La etiqueta del Object Data Source, que en el ejemplo se llama ds_, se coloca en el mismo archivo donde se va a realizar la conexión con la base de datos. Como se muestra en la figura 10_20, se puede observar que el ds_ está cerca de una tabla, la cual será llenada después de que se ejecute la función de llenado. La etiqueta permite utilizar parámetros para realizar ejecutar los Querys. Estos parámetros pueden ser adquiridos a través de diferentes etiquetas que existen en el archivo, o a través de resultados dados por el mismo proceso de la aplicación.
10_20
Archivo .aspx modo diseño ubicación del Object Data Source.
En la imagen 10_21, se puede observar las propiedades del Object Data Source, y la forma en la que obtiene los parámetros para su ejecución.
39
10_21
Archivo .aspx configuración del Object Data Source.
El manejo de la base de datos se desarrolla tanto en la vista, como en la ejecución de tareas, para poder realizar las altas, bajas y cambios en la base de datos, una vez configurado el Object Data Source (ver imagen 10_22), se debe de realizar el cambio también en C#. En la imagen 10_23, se muestra como se realiza un INSERT, un UPDATE y un DELETE.
10_22
Configuración del Object Data Source y asignación de Query.
40
10_23
Archivo en C#, uso de parámetros para ejecución de Querys.
Para poder mostrar los cambios en una tabla de la base de datos, normalmente se manda llamar la información de la misma, de esta manera se muestran los campos que se requieren. Para lograrlo se hace uso de un SELECT que también se configura en el Object Data Source, principalmente cuando se trata de una consulta multi-tabla. El proceso se muestra en la imagen 10_24. Esta información será adherida a un medio que permite visualizar la información de manera ordenada y estética, en caso de requerir varias columnas como es el caso de una tabla, se utiliza un Gridview, en caso de requerir la información de una sola columna se hace uso de llama Listbox. Para ver la programación de un ListBox, se puede observar la imagen 10_25.
41
10_24
Asignación de Query de Select a un Object Data Source.
10_25
Configuración de ListBox.
42
En caso utilizar un Gridview, se pueden hacer 2 procesos, el primero se muestra en la figura 10_26, y consiste en llamar el Data Source ya configurado. El segundo, se trata de crear un SQL Data Source dentro del Gridview, para ello se muestra en la figura 10_27 el proceso.
10_26
Conexión del Object Data Source configurado con el Gridview.
10_27
Configuración del Gridview creando su SQL Data Source.
43
Al trabajar con bases de datos previamente hechas, se deben de interpretar las funciones para las que se realizó. El manejo de fechas es una de las actividades más largas, pues existen varios formatos que manejan el tiempo en una base de datos. El primero es Time. Este utiliza el formato “hh:mm:ss”, sin embrago dependiendo del lenguaje que lo maneja, puede recibir el formato “hh:mm AM/PM” al hacer el vaciado a la base de datos, o la comprobación, este formato se traslada al primero mencionado tomando un valor de 0 segundos, para la ejecución del Query. El segundo es Date. Este utiliza el formato de fecha “MM-DD-AAAA” al utilizar una aplicación, si está en español, puede introducirse la fecha como “DD/MM/AAAA” al ejecutarse el Query, se hace la conversión por la fecha mencionada. El tercero es un DateTime, que como se escucha, maneja ambos, en un formato “MM-DD-AAAA hh:mm:ss”. Al solicitar un dato en este formato, de forma predefinida se podría tener la fecha en su formato, y el tiempo seria igual a 00:00:00 o las 00:00 AM. Cuando la información va de la base de datos a la aplicación normalemente no existen problema; sin embargo para solicitar un DateTime, se requiere ingresar el parámetro con ese formato. En la figura 10_28, se muestra una propuesta para este caso.
44
10_28
Manejo de DateTime.
El portal cuenta con un total de 13 pantallas (de las cuales 2 son dependientes una de la otra), de estas, 1 es para generar los reportes, 4 están ocultas, al ser de uso poco cotidiano, y el resto permiten la funcionalidad total del mismo. La primera dirección es kisko. El archivo existente en Default, cuya única etiqueta es un label con las indicaciones básicas para hacer uso del sitio, imagen 10_29.
10_29
Kiosko, pantalla de inicio.
45
La segunda pantalla, es la que permite delimitar los platillos servidos, y sus precios, tanto los reales como los dados con el subsidio para ls empleados. Ver imagen 10_30.
10_30
Kiosko, pantalla de artículo.
El sistema permite dar una baja administrativa a los platillos, y da opción de restaurarlos. Cuando el usuario da de baja un platillo del sistema, este puede recuperar y activar nuevamente un platillo, se muestra en la imagen 10_31.
10_31
Kiosko, pantalla de recuperación del artículo.
46
La barra de menús maneja 3 opciones, el primero es el de los platillos, el segundo se refiere a los datos de organización de la empresa, el Centro de Costos y el Departamento. Ambas pantallas son muy parecidas pues buscan desarrollar los mismos elementos. En las imágenes 10_32 y 10_33 se muestran.
10_32
Kiosko, pantalla de Centro de Costos.
10_33
Kiosko, pantalla de Departamento.
47
En el tercer menú se encuentra lo relacionado con los empleados y sus gastos en el comedor. La aplicación permite dar de alta a un nuevo empleado, con el fin de darle los privilegios de una forma inmediata, sin la necesidad de actualizar toda la base de datos. Esta opción se muestra en la imagen 10_34.
10_34
Kiosko, pantalla de alta del personal.
Una vez dado de alta un empleado, si se requiere actualizar su información o darlo de baja en el momento de su separación con la empresa. Para ellos se utiliza la opción de ver empleados, en la que se pueden seleccionar los empleados y filtrar por departamento, centro de costo, nombre, tarjeta y nómina. Agilizando la búsqueda de los mismos. Se puede observar la pantalla en la imagen 10_35.
48
10_35
Kiosko, pantalla de ver empleados.
Al igual que con los platillos, es necesario recuperar empleados a los que se les quitaron los permisos del comedor, para permitirles adquirirlos de nuevo. Para ubicarlos, se pueden realizar una búsqueda filtrada por nómina, nombre o departamento. La imagen 10_36 muestra la página de recuperación de empleados.
10_36
Kiosko, pantalla de recuperación del empleado.
49
Al final se muestra la pantalla que permite revisar el total de tickets generados por los empleados. Esto permite realizar el reporte. Para su posterior utilización en la base de datos de nómina. En la imagen 10_37, se muestra esta página, al seleccionar reportes, se abre una nueva página que permite la creación de los reportes. El reporte a crearse, se muestra en la imagen 10_38.
10_37
Kiosko, pantalla de Ver subsidios.
10_38
Kiosko, generación de reportes.
Se debe de tener una solución en caso de contingencias, es por eso que existe una página oculta al menú principal, en la que se pueden generar tickets de forma manual. El usuario ingresa el número de nómina y la fecha del ticket,
50
la aplicación busca la coincidencia e indica el nombre del empleado, su número de tarjeta y si existe un ticket para esa fecha o no. Al no existir, permite generar un ticket para esa fecha, en caso de existir, solicita buscar un nuevo empleado. Para ver esta página se puede observar la imagen 10_39.
10_39
Kiosko, pantalla de inserción manual de Tickets.
Por último la solución cuenta con una encuesta, sobre el servicio del comedor. Esta al ser utilizada por los empleados, no puede ser abierta de la misma manera que el resto de la aplicación. En la encuesta se pretende adquirir información específica sobre la conformidad por parte de los empleados. Para ver la encuesta, revisar la imagen 10_40.
10_40
Kiosko, pantalla de recuperación del artículo.
51
Dentro de las actividades más desafiantes y complicadas, fue el diseño y adaptación del código que permitiera realizar las descargas de la información en el orden que se solicitaba y en el archivo adecuado. Para ello se hace uso de código en C#. Este consiste en crear un archivo y luego editarlo. Este texto plano (al ser un archivo en .txt) es el utilizado para la base de datos de nóminas. A continuación se muestra en la imagen el código utilizado para generar el archivo.
10_41
Código para crear archivo CAT.txt y guardarlo.
52
XI.
RESULTADOS OBTENIDOS
En el cuadro 9_1, se muestran los logros obtenidos al concluir con el proyecto del sistema del comedor. Se muestran también las actividades realizadas (y sus logros), de los proyectos secundarios que se desarrollaron. Proyecto
Actividad
Logro El diseño del Website, contiene menús
Diseño y desarrollo funcional.
que direccionan a actividades específicas y solo solicitan la información necesaria. La base de datos actualmente sigue
Conexión a la base
Kiosko (proyecto
de datos del
siendo funcional y se encuentra en el
comedor que la
ambiente productivo para su uso.
empresa. Actualmente la aplicación permite: Dar
principal)
alta de los nuevos empleados, actualizar su información, darle y quitarle permisos en el comedor. Permiso para ABCC
Se puede manipular la información de
en base de datos
los platillos, de los departamentos y
del comedor.
del centro de costos.
53
Proyecto
Actividad
Logro Entorno para generar registros en caso de contingencia. Reportes de acumulado de comidas y costos. Notificación por factura especificando los artículos en almacén, en
Facturación
Análisis de facturas
con SAP
y uso de SAP.
cuarentena, existentes, facturados, pendientes, en existencia y no existentes, para su uso por el personal del Departamento de Compras.
Planeación
Acta constitutiva finalizada.
Documentación
del proyecto Modelado
Diagramas para desarrollo de base de
CAEPE
datos finalizados. Formatos de solicitud de acceso y adquisición de equipos.
Prueba
Vista del portal con el diseño de
Diseño y estilos
Online Exam
Bootstrap y TechOps.
54
XII.
CONCLUSIONES Y RECOMENDACIONES
El desarrollo de la aplicación del comedor, permitió a la empresa, diseñar y desarrollar su propio Software, con el que controla y administra la información de
los
empleados. Esta
aplicación en específico, permite
y seguirá
administrando la información relacionada con la prestación que todos los empleados de Techops tienen, que es el servicio del comedor. El sistema cuenta con diferentes validaciones, que permiten actuar ante errores, ya sean del sistema o generados por el mismo usuario. Al intentar desarrollar una segunda versión del sistema, sería bueno considerar las siguientes recomendaciones: 1. Planear la eliminación de columnas inútiles en la base de datos, con el fin de evitar que la información se repita. 2. Plantear en las tablas faltantes, las bajas administrativas para efecto de un mejor manejo de la información. 3. Aumentar la capacidad del Disco Duro. 4. Dar una capacitación, además de hacerlo con la versión actual, en la que se explique el funcionamiento del sistema, para evitar futuros fallos. 5. Al ser un sistema publicado, asignar un sistema de seguridad por usuarios.
55
XIII. ANEXOS
I.
Facturación con SAP Al no existir una capacitación para el personal que maneja las herramientas,
se generan errores para la solución de los mismo, Para dar una rápida solución requirieron el apoyo de los becarios de TIC. El objetivo: corroborar e identificar los artículos de las facturas en relación a los existentes, para realizar los pagos pendientes a los proveedores. SAP es una herramienta que se utiliza actualmente en las empresas con el fin de controlar de una mejor manera los elementos que tiene a su disposición (materia prima, entradas salidas, almacén, existencias, costos, etc.). La herramienta cuenta con control por sesiones. En la siguiente imagen, muestra el entorno y la forma en la que se da acceso al sistema. En las imágenes 13_2, 13_3 y 13_4, se muestran el entorno de trabajo de TRP. En la primera se pueden ver marcados los 2 que se utilizan. De forma real, solo se selecciona 1 que es al que se ingresa. Como se puede observar en la imagen anterior, el sistema tiene un sistema de seguridad propio. “TRP Production” es una de las 4 herramientas de SAP, esta está enfocada al estado real de la empresa y los materiales con los que se cuenta. En TRP, se pueden revisar las existencias.
13_1
SAP. Inicio de sesión.
TRD, permite desarrollar en un entorno de prueba en base a las existencias reales, sin embargo, no genera movimientos reales en cuanto al control de los datos de SAP. TRQ Permite diseñar y ensamblar, de acuerdo a las necesidades, no maneja cifras reales en cuanto a insumos. De esta manera se modela el Ideal para obtener la lista de necesidades. Por último, TRS, permite crear sin reglas de acuerdo a los requerimientos del cliente, para poder dar una primera vista y generar un boceto de las necesidades.
13_2
SAP. TRP Production
Una vez que se selecciona la actividad, en este caso se selecciona “Purchasing” Al existir una orden de compra, se puede buscar por solicitud (dato existente en la factura) y en base al resultado se puede revisar el estado de los materiales que la integran. En la imagen siguiente se muestra en el cuadro verde la PO u orden de pedimento. Mientras que en los cuadros rojos se muestra el primer artículo de la orden, y las existencias. En el caso específico del primer artículo de esta Orden, se encuentra facturada, dato que se representa con el doble cuadro amarillo en el área de las existencias.
13_3
SAP. Purchasing, para Orden de Pedimento.
“Material Magnament”, es la segunda opción, en esta se muestra una pantalla en la que se ingresan datos clave del material a buscar, en la siguiente imagen se muestra este proceso, el cual se utiliza, para ubicar materiales que se adquirieron antes de existir “Órdenes de Compra”. En estos casos, se busca entre los materiales similares el registro solicitado., para poder adquirir una Orden de Pedimento asignada a ese material en específico. Posterior a este, en el proceso, se mostraría la pantalla de Purchasing (imagen 13_3).
13_4
SAP. Material Magnament.
El desarrollo de esta actividad consistió en revisar las facturas y dar solución en base a los artículos existentes declarados en SAP. Al finalizar esta actividad, el personal encargado de compras tiene las herramientas necesarias para realizar los pagos de los materiales pendientes.
II.
Planeación del proyecto CAEPE Seguridad Corporativa es una instancia que le brinda a la empresa mantener
estándares de seguridad dentro de ésta. Como parte del mejoramiento ha
solicitado el diseño de una herramienta que permita controlar el flujo de los equipos
empresariales, específicamente hablando de tabletas, teléfonos
móviles y Laptops. Estos 3 elementos son proporcionados a los empleados pero son propiedad de la empresa. Esta actividad va encaminada a la seguridad de la información, del personal y de la mercadotecnia. Pues de esta manera se evita que cualquier persona pueda ingresar un equipo con captura de imagen o video. Al ser un proyecto que se inicia, se requiere de determinados documentos como lo son: -
Acta de inicio: En este se incluyen costos, alcances, objetivos y cronograma de actividades.
-
Diagramas de modelado para Base de datos: Modelo Entidad Relación y Modelo Relacional.
-
Formato de solicitud de acceso de equipos.
-
Formato de solicitud de asignación de equipos.
Lo anterior está respaldado por el documento original, en el que se obtuvieron los requerimientos del área y de esta manera se desarrolla el acta. Esta se muestra a continuación:
13_5
Acta constitutiva. Portada e índice.
13_6
Acta constitutiva. Hoja 1 y 2.
13_7
Acta constitutiva. Hoja 3 y 4.
13_8
Acta constitutiva. Hoja 5 y 6.
Desde la imagen 13_5 a la 13_8 se muestra el acta de inicio que indica las necesidades del cliente, para poder dar soporte al sistema, se requiere de una base de datos, de igual manera esta será realizada en SQL Server 2012 para que tenga conexión con Visual Studio 2012. En las imágenes 13_9 y 13_10 se muestran los Modelos Entidad Relación y Relacional de la base de datos que alimentará el sistema.
13_9
Modelo Entidad Relación (MER) para proyecto CAEPE.
13_10
Modelo Relacional (MR) para proyecto CAEPE.
La base de datos cubre las necesidades que son solicitadas en el acta de inicio. Para dar de alta nuevos equipos y al personal a su cargo, se plantea una propuesta, en la que solo por los gerentes y directores pueden realizar el pedido para el personal de sus áreas. El formato utilizado se muestra en el cuadro (13_11).
13_11
Formato de solicitud de equipos portátiles para trabajadores.
Al permitir únicamente el acceso de los equipos de la empresa, se plantea una segunda propuesta en la que mediante un formato (ver imagen 13_12), el gerente
del departamento interesado, pueda dar acceso al personal con su equipo de manera temporal, siempre y cuando la solicitud llegue y sea autorizada también por Seguridad Corporativa.
13_11
Formato de solicitud de visitantes e ingreso de equipo temporal.
La participación en esta etapa del proyecto, permite el desarrollo integral y total del diseño, desarrollo y pruebas del sistema final.
III. Prueba Online Exman “Online Exam” es un proyecto existente, su objetivo es permitir obtener los resultados de forma rápida, de un examen de opción múltiple del Idioma Inglés. AL igual que las aplicaciones desarrollas en la empresa, esta también está diseñada en ASP.Net y C#. Por razones de tiempo, la participación en el proyecto se delimitó al rediseño de la vista y la adecuación para su uso en la empresa. En la siguiente imagen, se muestra el resultado de la modificación del aspecto de la aplicación.
13_12
Muestra proyecto Online Exam.
Al ser un proyecto corto, el desarrollo (rediseño) se realizó en poco tiempo.
XIV. BIBLIOGRAFÍA
-
Pérez, R. (2013). HTML 5. Junio del 2015, de Pérez, R. Sitio web:
http://cs.mty.itesm.mx/profesores/raul.perez/DAW/IntroHtml5.pdf
-
La Revista Informática. (2008). Lenguaje de Programación ASP. Junio de 2015, de La Revista Informática. Sitio web:
http://www.larevistainformatica.com/ASP.htm
-
Microsoft MSDN. (2013). Visual C#. Junio de 2015, de Microsoft MSDN. Sitio web:
https://msdn.microsoft.com/es-es/library/kx37x362.aspx
-
ASP.Net. (2014). ¿Qué es el ASP.NET AJAX Control Toolkit? Junio de 2015, de ASP.Net. Sitio web:
http://www.es-asp.net/tutoriales-asp-net/tutorial-5312-5313/que-es-el-aspnet-ajax-control-toolkit.aspx
-
Wikipedia. (2012). Windows Server 2012. Junio de 2015, de Wikipedia. Sitio web:
https://es.wikipedia.org/wiki/Windows_Server_2012
-
FileHipo. (2012). SQL Server 2012 Management Studio Express. Junio 2015, de FileHipo. Sitio web:
http://filehippo.com/es/download_sql_server_studio/
-
Microsoft Visual Studio. (2012). Visual Studio 2012. Junio 2015, de Microsoft Visual Studio 2012. Sitio web:
https://msdn.microsoft.com/es-es/library/vstudio/dd831853(v=vs.110).aspx
-
Wikipedia. (2010). Framework. Junio de 2015, de Wikipedia. Sitio web:
https://es.wikipedia.org/wiki/Framework
-
Microsoft Visual Studio. (2014). Windows Form Applications. Junio 2015, de Microsoft Development Source. Sitio web:
https://msdn.microsoft.com/en-us/library/dd30h2yb(v=vs.110).aspx