Entradas

Mostrando las entradas de agosto, 2024

Reunión

 Se realizó la última reunión para ver el funcionamiento final del proyecto y realizar pruebas con ello. También se revisó el documento de análisis de resultados pere refinar unos detalles de las métricas. La reunión se hizo en discord el día 25/8/2024 Empezó a las 10:00am Terminó a las 11:40 am

Mejorar el diseño del sitio web

Imagen
Se ha logrado mejorar el diseño del sitio web haciendo que se vea mucho más amigable a la vista del usuario. Se agregó varios elementos con interactividad para facilitar mucho su comprensión a la hora de analizar las tablas, y no solo eso, sino también en el momento de insertar el usuario aumentamos la grafiticación de insertar el usuario y corregimos algunos errores a la hora de que el usuario se equivoque es decir, intentar reducir la cantidad de "alert" que recibe cuando tiene más de un error. Un problema que tuvimos ha sido cuando intentamos hacer el formulario "responsive". Esto se logró en las herramientas de desarrollo realizando varios intentos a la hora de encajar los elementos como nosotros quisieramos según el tamaño deseado. Dos webs que han sido muy utiles a la hora de estilzar los componentes ha sido MDN y W3 . En la proxima sesión haremos el documento que presentaremos el lunes. links: MDN y W3 Fecha: 22/08/2024 Hora inicio: 8:00 pm Hora final: 8:45p...

Realizar peticiones del servidor con el sitio web

Imagen
 Se ha enlazado el sitio con exito, dando como hecho la posibilidad de solicitar información hacia el servidor que se comunica con la base de datos. Por lo que el apartado de manipular los datos para crear una tabla ordenada alfabeticamente e insertar el empleado se encuentra concretado. Un apartado problematico que tuvimos tomar en cuenta ha sido sobre los datos que recibe el servidor, por lo que vimos la documentación de nest js para determinar que requería nuestro programa para entender los objetos que le llega desde el cliente, este apartado lo resolvimos. También hemos hecho el "sp" de evitar empleados duplicados de una manera más robusta. Usando trim y lower para que sea lo más preciso posible a la hora de verificar la existencia del empleado Link: Validation  y CORS Un apartado que tomaré en cuenta será sobre mejorar el diseño del sitio web, para que sea mucho más amigable a la vista. Hora inicio: 9:00 pm Hora final: 10:00 pm

POST

Se realizó sesiones de prueba y estudio sobre realizar un POST para ingresar los datos del empleado ingresado por la interfaz. Algunas fuentes consultadas fueron:  Using the Fetch API Guideline 2024: How to Fetch POST JSON Data 2.3 HTTP Post Request with fetch() - Working with Data and APIs in JavaScript Se dedicó 1 hora para consultar fuentes y 2 horas haciendo pruebas de estas. Queda pendiente poner la url del metodo fetch para hacer el post de manera exitosa.

Documentar el back y otros

 He estado generando la docuementación necesaria para el apartado de la conexión con la base de datos. Además de la creación de interfaces para aprovechar esa particularidad de TypeScript de su tipado, otro punto a comentar es que a su sea transcurrido a pruebas para verificar su solidez en cuanto a sus conexiones con la base de datos. Un problema que he tenido a sido no ha sido en cuanto al funcionamiento del programa, sino de que habian apartado que no quedaban claras en su sintaxis, por lo que en ese momento opte por usar interfaces para que de esta manera se logre entender las propiedades de los parametros de las funciones. Un apartardo que abarcaré será sobre arreglar el Readme.md para levantar el proyecto link: Interface   Hora inicial: 8:00 pm Hora final: 8:45 pm

Uso de librería para la conexión

Imagen
 Se ha logrado determinar el uso de la librería mssql  para realizar la conexión de la base de datos desde el backend. El metodo que se usó ha sido el de crear una clase que contenía un constructor para la configuración, luego los metodos de conexión y por ultimo los metodos que vendrían siendo los storeProcedures(listar y crear empleados), hacerlo simplifica a la hora de incorporarlo en los servicios de la aplicación. Unos problemas que tuvimos que enfrentar fue a la hora de querer usar las variables de entorno para que la seguridad fuera más robusta. Por medio de la documentación de nest js detallan los pasos a seguir. Sin esto daba errores de conexión(ya que no tenian los datos de la configuración). Cosas para hacer: Documentar el codigo. Hora inicio: 8:00 pm Hora final: 10:00 pm

Reunión

Los miembros del equipo se reunieron por medio de discord para ver avances en el proyecto y arreglar unos cuantos detalles como identaciones, se comentó exactamente qué era ordenar de forma ascendiente los nombres y códigos que se puede optimizar. En esta sesión damos como tareas pendientes: crear otro método fetch para hacer el post de los datos ingresados. dar el error/alerta de que el empleado ya existe. dar el aviso de que se ingresó correctamente. hacer la documentación del análisis de resultados. Realizar una documentación para el backend. Hacer pruebas del programa. Ejecutar un push del backend en su versión más reciente. Hora de inicio: 7:00 Hora de finalizacicon: 7:50

Tabla ordenada alfabeticamente

Imagen
Se implementó que la tabla que muestra la lista de empleados se encuentra ordenada alfabeticamente.  Esto se logró como resultado de la última sesión en donde se investigó cómo se podría implementar esto. Tiempo dedicado: 40 minutos

Mostrar datos en la interfaz inicial

Imagen
 Se investigó cómo ingresar los datos de los empleados ya existentes en la tabla que se muestra en la interfaz inicial. Para esto se creó un archivo de json para ir haciendo pruebas con estas. Como guía se utilizó esta página  Read JSON File using JavaScript  usando el método fetch para leer los datos en el archivo json y así ir mostrándolos en la tabla. Haciendo que estos datos carguen de forma inmediata al acceder a la pantalla inicial. Para implementar los datos a la tabla se buscó maneras de optimizar el código, a la hora de crear los td "table data" para agregar la información correspondiente de cada empleado. Esta página web fue de utilidad  How to Append Multiple Elements at Once in JavaScript DOM A su vez, en esta sesión de trabajo se fue investigando cómo mostrar la tabla en orden alfabético ascendente por nombre. Algunos links que se vieron esta sesión fueron jQuery - Ejercicio 144: Ordenar una Tabla (table) a partir de sus Columnas Tabla ordenable How to A...

Botón de regresar

Nos dimos cuenta que el botón de regresar no estaba funcionando, el error se encontraba al no declarar que acción debía que realizar el botón dentro del form. Al no hacerlo tomaba por predeterminado el tipo 'submit' (cuando debía que ser 'button') haciendo que envíe los datos de lo campos y recargara la pagina. Ya se arregló esta funcionalidad en el programa. Tiempo dedicado: 30 minutos

Creacion de la BD

 Se ha creado la base de datos acuerdo a las especificaciones del enunciado, siendo esto la creación de la tabla empleados como también de los store procedure, todo a ido bien a excepción en el momento en que teniamos que validarlo a la hora de que el empleado estuviera repetido por lo que buscamos la documentación necesaria para resolverlo y despejar otras posibles dudas, siendo una de estás la manera de aprovechar el "@outResult" siendo esto un exito de como lo manejaremos, ya que lo usaremos de manera que si la tarea se realizo este obtendrá el valor de "0" si no "1". link:  documentación hora inicio: 8:00 pm hora fin: 8:30 pm

Creación de estructura del html y validación de entradas

Imagen
Se creó la interfaz inicial y la de insertar empleado con los requerimientos del profesor Junto a ello se implementaron la conexión de páginas por medio del botón de Insertar (interfaz inicial) y Regresar (interfaz insertar empleado).  Para el interfaz inicial se buscó cómo se puede implementar una tabla, donde esta página fue de utilizad  https://www.geeksforgeeks.org/how-to-create-table-in-html-with-border-without-css/ En esta sesión de trabajo también se implementó la validación de entradas, de que ambas no fueran vacías, que el nombre solo tenga letras del alfabeto o guión y el salario solo tenga números. Estos fueron implementados por medio de expresiones regulares. Para implementar estas validaciones se utilizó esta página de referencia.  https://www.geeksforgeeks.org/javascript-program-to-check-if-a-string-contains-only-alphabetic-characters/ Además se implementaron alertas para informar al usuario de errores que esté cometiendo a la hora de colocar estas entradas....

Inicio del desarrollo del backend

 En principio me documenté en su sitio oficial y a su vez he visto videos. En la primera etapa construimos la estructura inicial, que consiste en un template que nos proporciona el framework para agilizar el tiempo de desarrollo, sucesivamente hemos creado las rutas donde se harán las solicitudes hacia la base de datos por medio de los sp's. Estamos analizando algunas situaciones para mejorar el programa, pero sería para fines de que a la hora de ver el codigo se tenga una idea clara de lo que queremos hacer. Para la conexión con la base de datos estamos usando Prisma js, aunque es una desicion debatible, ya que el proyecto es muy pequeño. Algunos problemas que hemos tenido a la hora de desarrollar este apartado ha sido generalmente por la forma de programación, que vendría siendo el modular, esto aprovecha el tipo de pensamiento atomico(en pensar en cosas pequeñas e irlas escalando hasta crear el proyecto). Otro problema a mencionar ha sido a la hora de liberar el puerto del sql s...

Decision sobre el Back-End

 Hemos decidido usar un framework orientado en el backend llamado Nest js. Nest js es un framework completo que agiliza los tiempo de desarrollo a la hora de generar una API con la arquitectura REST(de tal manera que será sencillo acceder a los recursos en donde se hará una solicitud a la Base de Datos) de la el usuario hará uso a la hora de realizar solicitudes(como por ejemplo, al entrar en la pagina se ejecutrá una solicitud de la cúal obtendrá los empleados y mostrarlos en la tabla del cliente).  Además cabe mencionar que es un framework que incentiva los principios, por lo que usará su estructura de modulos de tal manera en que beneficia el orden y la elocuencia.  Un punto a favor de este framework es que su desarrollo y aplicaciones se encuentra en el lenguaje TypeScript. que vendría siendo como JavaScript pero tipado facilitando de esta manera la documentación y no solo eso, sino que el linter de TS es muy bueno, al estar tipado puede advertirle al programador con ...

Reunión

 Los integrantes del equipo se reunieron a las 7:30pm por medio de discord, en donde leyeron las especificación de la tarea programada de pruebas de concepto.  Luego de leer la especificación se redactó un listado de pequeñas tareas por hacer, las cuales son: crear la tabla crear la pagina web conectar la página web con la base de datos mostrar la lista de empleados en la interfaz inicial crear la interfaz de insertar empleado validar el nombre del empleado , que sea solo valores alfabeticos o un guión validar que salario que sea entero y que las comas estén bien (ver el video de la clase para confirmar ) validar que cuando se de a insertar los campos no estén vacíos . validar que el nombre completo no existan ya en la bd , indicar error si es el caso y que se quede en la interfaz de insertar Mensaje de inserción exitosa si se logra agregar el empleado y que despues se regrese a la interfaz inicial con la tabla actualizada Hacer la documentación del análisis de resultados Hace...

Creación del Blog como Bitácora

Una vez asignado la tarea de prueba de conceptos del curso de Bases de Datos II 2024, se creó el blog para llevar el seguimiento de la tarea. En donde están agregados ambos integrantes del grupo: Oscar Campos y Dayana Xie