Se realizaron cambios y ajustes en TM Land. ⚙️👨🏻💻📊
Jueves 8 de abril del 2021
1. Se realizaron los siguientes cambios en la aplicación de Protocolos de Alistamiento (TM Land Mobile).
• Desde la aplicación de protocolos de alistamiento, se permite crear preordenes de las tareas que sean calificadas malas.
• Se agrega validación al crear protocolos de alistamiento, en donde no se permita ingresar un protocolo con un kilometraje superior a un protocolo que exista mayor a la fecha de ingreso del nuevo protocolo, en caso de no haber protocolos de alistamiento en fechas superiores se ingresa de la manera como generalmente se hace.
Lunes 12 de abril del 2021
2. Se realizaron los siguientes cambios en el formulario Ordenes de Servicio y Liquidación de Planillas.
• Se mejora proceso para que al seleccionar varias preordenes en una orden de servicio, si estas tienen tareas que vienen del mismo protocolo de alistamiento al ser similares las tareas de todas las preordenes se agrupen.
• Se mejora proceso para que al borrar una orden de servicio con preordenes, cada preorden se valide si está en otras órdenes de servicio, en caso de que si, si están cerradas se le ingresa a la fecha de cierre de las otras y si no, se deja abierta, o en su defecto si es la única orden de servicio que tiene, la libera.
• Al realizar la liquidación de planilla de viaje, si hay un saldo negativo se va a crear una novedad automáticamente con nombre “Saldo negativo en planilla”, esto permite en el próximo mes arrastre el saldo negativo.
• Se cambió el cliente de Memcached de SpyMemcached a XMemcached, como se comenta en el siguiente articulo: https://www.memcachier.com/documentation/java.
• SpyMemcached, tiene algunos problemas al realizar la conexión en el ambiente multihilo de la aplicación de producción, esto no es probado, pero al realizar el cambio se evidencia que los problemas desaparecen.
• Memcached: es empleado para el almacenamiento en caché de datos u objetos en la memoria RAM, reduciendo así las necesidades de acceso a un origen de datos extremos (Una base de datos o una API).
• Multihilo: se refiere a que dos o más tareas se ejecutan “aparentemente” a la vez, dentro de un mismo programa. Se usa aparentemente en ambos casos, porque normalmente las plataformas tienen una sola CPU, con lo cual, los procesos se ejecutan en realidad “concurrente”, si no que comparten la CPU.
Martes 13 de abril del 2021
3. Se realizaron los siguientes cambios en el formulario Ruta.
• Se mejora proceso, para que, al enviar un seguimiento del ticket de servicio al correo electrónico, se puede leer bien los saltos de línea y no quede todo como texto de una sola línea.
• Se realizó modificación en la pestaña resumen del formulario ruta, se estaba demorando en cargar la información, debido a que se estaban realizando consultas extensas para saber si la ruta se elimina o no, esta consulta se situó en el momento de dar clic en borrar y el botón de borrar se va a renderizar siempre, solo se va a saber si se puede eliminar o no al momento de dar clic al botón borrar.
Miércoles 14 de abril del 2021
4. Se realizaron los siguientes cambios en el formulario Guía de Transporte, Reportes Programables y Gastos Operativos.
• Se corrige bug en la importación de guías de transporte, cuando se diligencia el número de la guía en el archivo plano, el flete se duplica. Esta corrección ahora permite diligenciar el número de la guía de transporte, en la plantilla de importación.
• Se corrige bug en el link de reportes, cuando el usuario no está registrado, el reporte no está disponible para la vista.
• Se modifica la funcionalidad de los gastos operativos, se eliminan los gastos operativos del formulario Ruta y se crea un nuevo formulario llamado gastos por rutas.
• Ejemplo: ruta Medellín – Bogotá, se puede configurar gastos diferentes para clases de vehículo Bus y Camión, al momento de realizar el manifiesto de carga, se va a sugerir un anticipo de viaje, correspondiente a la suma de todos los gastos operativos.
• Bug: se refiere a un error o defecto en el software que hace que un programa no funcione correctamente.
Jueves 15 de abril del 2021
5. Se realizaron los siguientes cambios en el formulario Reportes Programables Carga, Remesa y Configuración Empresa.
• Se añade un nuevo reporte que estará disponible en el formulario reportes programables carga, llamado retefuente y reteica por ciudad.
• Se añadió la funcionalidad de descargar varios protocolos de alistamiento o revisiones bimestrales en un archivo .zip. Con este proceso se permite descargar múltiples PDF filtrando entre fechas y/o vehículos. El proceso toma tiempo dependiendo de la cantidad de protocolos de alistamiento a exportar, el archivo final contiene los archivos en PDF.
• Se añade validación para que, al momento de editar una remesa no esté asociado a un manifiesto.
• Se añade parámetro en la configuración de la empresa llamado Validar cumplidos en el apartado de facturación, para hacer la validación de las guías de transporte que son de contrato General, y que no se puedan facturar si no están articuladas en un manifiesto, y este manifiesto no esté cumplido.
• Se agrega parámetro adicional en la configuración de la empresa, llamado validar_cumplido_cuentas_pagar, los valores posibles son true “Verdadero” y false “Falso”, esto permite hacer la validación de las cuentas por pagar que son de manifiestos y que estén cumplidos para poder seleccionar las cuentas.
Jueves 22 de abril del 2021
6. Se realizaron los siguientes cambios en el formulario Consecutivos y Comprobantes, y Remesa.
• Se modificó el código que calcula las secuencias, en determinados casos cuando por alguna razón sale una excepción guardando la información los consecutivos quedaban consumidos, pero la información no quedaba guardada, dando la sensación de que el sistema se salta solo los consecutivos, por lo que se optimizó cada uno de los querys para no depender de la cache interna, sino que se consulte en la base de datos. Cada vez que se va a buscar un consecutivo, el sistema va a buscar los 20 consecutivos anteriores para poder llenar algún hueco generado, las consultas quedaron optimizadas y se crearon índices en cada de las columnas que usan consecutivos para poder optimizar las consultas.
• Se agrega validación que permite controlar las remesas que tienen guías de transporte, para que no se puedan editar si ya tienen un manifiesto.
• Query: es una pregunta o consulta en la base de datos
• Cache: es un componente de hardware y software que guarda datos para que las solicitudes futuras de esos datos se puedan entender con mayor rapidez.
Viernes 23 de abril del 2021
7. Se realizaron los siguientes cambios en el formulario Organizaciones.
• Se agrega validación para que, al intentar borrar una sede de una organización, informe si es posible o no borrar.
Lunes 26 de abril del 2021
8. Se realizaron los siguientes cambios en el formulario Extractos de Contrato.
• Se agrega validación que permite mostrar los extractos de contrato, con valor_contrato mayor a 0, para poder descargar el archivo plano.
• Se agrega documento de referencia de la compra, para que salga con el código de la compra en el reporte de tareas información completa, no va a estar en columna separada.
• En días anteriores se modificó el código que calcula las secuencias, para poder rellenar los huecos que quedan cuando sucede una excepción, con esto se introdujo otro bug aún más preocupante, y es que con alta concurrencia cabe la posibilidad de se dupliquen los consecutivos. Se evidenció con un cliente que, al guardar guías de transporte, exactamente en el mismo instante por dos o más usuarios diferentes, el número de la guía de transporte quedaba duplicada, por lo que modificó la lógica y no permitir códigos duplicados, teniendo en cuenta que no se puede garantizar que no queden huecos en las secuencias (Gapless sequence). Es probable que ante la generación de alguna excepción no se pueda hacer el rollback, sobre la secuencia por lo que puede haber huecos. Si se detecta un hueco y se quiere cubrir, se debe modificar la secuencia desde el formulario Consecutivos y Comprobantes e intentar rellenar el hueco generado.
• Bug: se refiere a un error o defecto en el software que hace que un programa no funcione correctamente.
• Gapless sequence: secuencia sin espacios.
• Rollback: es una operación que devuelve a la base de datos a algún estado previo.
Miércoles 28 de abril del 2021
9. Se realizaron los siguientes cambios en el formulario Medidas Tallas, Factura de Venta y Tareas Programadas.
• Se agrega modificación para ver las tallas de los elementos de protección personal, que se agregan en cada registro de tallas, en el formulario de medidas tallas del módulo gestión humana.
• Se agrega validación para que al intentar de crear un prefactura, no permita guardar si las remesas seleccionadas ya están en una prefactura o factura.
• Las tareas programadas se ejecutan secuencialmente, de a una por cliente, se realizó el cambio para ejecutar estas tareas por varios hilos paralelamente, se hace el cambio a parallel stream para correr las listas. Se corrigió un bug siguiendo las recomendaciones del siguiente enlace: https://stackoverflow.com/questions/49110537/parallel-stream-doesnt-set-thread-contextclassloader-after-tomcat-upgrade.
• Parallel stream: flujo paralelo.
• Bug: se refiere a un error o defecto en el software que hace que un programa no funcione correctamente.
Ver documento anexo.
Sebastian Villada Jaramillo
Auxiliar de Proyectos
Cra. 48 # 100 C – 650
Cel: (+57) 310 606 3630
Telegram: https://t.me/SoporteTMbot
www.tmsolutions.com.co
Medellin / Colombia