🖥️📊 "Cuando pensabas que un ERP era solo un programa… llega la realidad: facturas que no cuadran, clientes que se duplican y módulos que parecen tener vida propia 🤯. Bienvenido a la jungla de los Sistemas de Gestión Empresarial, donde todo está conectado… ¡hasta tus dolores de cabeza! 😅"
PARTE TEÓRICA
PARTE PRÁCTICA
El alumnado deberá trabajar con un entorno real de Odoo conectado a PostgreSQL, utilizando PgAdmin para consultar y modificar datos directamente en la base de datos.
La tarea consiste en crear productos en Odoo, analizarlos desde la base de datos, realizar consultas SQL avanzadas y aplicar modificaciones controladas, comprobando siempre que los cambios se reflejan correctamente en la aplicación.
El alumno deberá crear al menos 5 productos nuevos, cumpliendo obligatoriamente:
Nombres claramente identificables.
Precios distintos entre sí.
Al menos dos tipos de producto diferentes.
Productos fácilmente distinguibles de los existentes en el sistema.
Solo podrán utilizarse para la tarea los productos creados por el propio alumno.
Desde PgAdmin, el alumno deberá:
Identificar la base de datos utilizada por Odoo.
Localizar la tabla principal donde se almacenan los productos.
Identificar los campos necesarios para relacionar cada producto con Odoo.
Relacionar cada producto creado con su identificador interno.
El alumno deberá realizar al menos 5 consultas SQL distintas, que permitan:
Listar los productos creados mostrando únicamente los campos relevantes.
Filtrar productos según un criterio lógico.
Ordenar productos según un campo significativo.
Limitar resultados.
Localizar un producto concreto mediante su identificador.
Las consultas deberán estar adaptadas a los datos reales creados por el alumno.
El alumno deberá realizar al menos 5 modificaciones distintas, cumpliendo:
Modificaciones realizadas exclusivamente desde PgAdmin.
Solo sobre productos creados por el alumno.
Modificación de campos distintos (precio, nombre, tipo, etc.).
Justificación breve de cada modificación realizada.
No se permite eliminar registros ni modificar productos del sistema.
Tras cada modificación, el alumno deberá:
Acceder al producto correspondiente en Odoo.
Comprobar visualmente que el cambio se refleja correctamente.
Demostrar la coherencia entre PgAdmin y Odoo.
El alumno deberá entregar un documento que incluya:
Capturas de los productos creados en Odoo.
Capturas de las consultas realizadas en PgAdmin.
Capturas de las modificaciones aplicadas.
Capturas de la comprobación en Odoo.
Breve explicación de cada consulta y modificación.
Tarea obligatoria · Gestión avanzada de productos en Odoo con PostgreSQL
Criterio
Máx.
Excelente
Adecuado
Básico
Insuficiente
1. Creación de productos en Odoo
2,0
Crea 5 o más productos cumpliendo todos los requisitos: nombres claros, precios distintos y tipos variados.
Crea los productos requeridos con alguna carencia menor.
Número insuficiente de productos o poca diferenciación entre ellos.
No cumple los requisitos mínimos o no crea los productos.
2. Análisis de la base de datos
2,0
Identifica correctamente la base de datos, la tabla principal y los campos relevantes, relacionándolos con Odoo.
Identificación correcta pero incompleta o poco justificada.
Análisis superficial o confuso de la estructura.
No demuestra comprensión de la base de datos.
3. Consultas SQL realizadas
2,0
Realiza 5 consultas distintas, bien planteadas y adaptadas a los datos creados por el alumno.
Consultas correctas pero poco variadas o escasamente justificadas.
Consultas incompletas, poco claras o repetitivas.
Consultas incorrectas, copiadas o no relacionadas con los datos creados.
4. Modificaciones en PostgreSQL
2,0
Realiza 5 modificaciones distintas, bien justificadas y correctamente aplicadas.
Modificaciones correctas pero poco variadas o con justificación limitada.
Modificaciones incompletas o con errores.
Modificaciones indebidas o no realizadas.
5. Comprobación en Odoo
1,5
Todos los cambios se reflejan correctamente en Odoo y se comprueban de forma clara.
Alguna comprobación incompleta o poco clara.
Comprobación superficial.
No se comprueba la coherencia entre PgAdmin y Odoo.
6. Explicación y presentación técnica
0,5
Explicaciones claras, ordenadas y bien justificadas.
Explicación básica pero comprensible.
Explicación confusa o poco trabajada.
No hay explicación o es incorrecta.
Como administradores de sistemas ERP, se nos ha entregado un archivo externo en formato CSV (centros_educativos.csv) listado.csv
con un listado de colegios. El objetivo es desarrollar un script en Python que actúe como proceso ETL (Extracción, Transformación y Carga) para volcar estos datos en nuestro servidor PostgreSQL de Odoo corriendo en Docker.
Lenguaje: Python 3.10+
Librerías obligatorias: pandas, psycopg2-binary.
Infraestructura: Docker Desktop con los contenedores de Odoo y DB activos.
Control de Versiones: Repositorio en GitHub/GitLab.
El script debe cumplir con lo siguiente:
Conexión robusta: Utilizar un diccionario para las credenciales de la DB (odoo/odoo, puerto 5432).
Lectura correcta: Manejar la codificación latin1 para soportar tildes y caracteres especiales.
Gestión de Tablas: Crear la tabla import_centros automáticamente si no existe, usando tipos de datos TEXT para mayor flexibilidad.
Carga mediante Bucle: Recorrer el DataFrame de Pandas e insertar los datos mediante posiciones (iloc).
Persistencia: Asegurar que el commit() se realiza solo si no hay errores en el bloque.
Debéis subir a vuestro perfil de Git un repositorio con:
El archivo .py con el código comentado.
El archivo .csv utilizado.
Un archivo README.md profesional.
El README debe incluir obligatoriamente:
Procedimiento: Pasos seguidos para la configuración del entorno y ejecución.
Captura de Pantalla: Una imagen donde se vea claramente:
La terminal de VS Code con el mensaje de éxito del script.
La ventana de pgAdmin mostrando el resultado del SELECT con los datos cargados.
Importante: En la captura debe verse la barra de tareas o el reloj del sistema para verificar que se ha realizado desde el equipo del alumno.
Ítem
Puntuación
Conectividad: Conexión exitosa Python-Docker.
2.5 pts
Código: Uso correcto de Pandas, bucles e indentación.
2.5 pts
Git: Uso correcto de repositorio y commits.
2.0 pts
Documentación: README claro y captura de pantalla válida.
3.0 pts
La empresa "Soluciones S.A." necesita un sistema de fichaje, pero requiere que la aplicación esté personalizada con la identidad corporativa de cada departamento. Se os entrega un módulo base funcional de Odoo 17. Vuestro objetivo es localizar los archivos fuente y realizar las modificaciones necesarias para adaptar el sistema según los requisitos solicitados.
https://github.com/mcsanchez94/fichaje.git
Deberéis identificar en qué archivos y líneas de código realizar los siguientes cambios:
Identidad Visual: Cambiar el nombre que aparece en el tablero principal de Odoo (cuadraditos) de "Fichaje" a "Presencia - [VuestroNombre]".
Modelo de Datos: Localizar la definición de las acciones ('Entrada' / 'Salida') y añadir una tercera opción llamada "Descanso".
Interfaz de Usuario: Asegurarse de que el nuevo campo/opción sea visible en la vista de lista y en el formulario sin romper la estructura XML de Odoo 17.
Para que los cambios tengan efecto, el alumno deberá demostrar el dominio del flujo de trabajo con contenedores:
Sincronización: Transferir los archivos modificados al volumen correspondiente del contenedor Odoo.
Reinicio: Reiniciar el servicio de Odoo mediante terminal.
Actualización: Forzar la actualización del módulo desde la interfaz técnica para que Odoo lea los cambios en la base de datos.
Para dar por apta la tarea, el alumno deberá mostrar al docente:
Captura de Odoo: Donde se vea el nuevo nombre del módulo y la opción "Descanso" operativa.
Validación SQL (pgAdmin): El alumno abrirá pgAdmin y realizará una consulta para mostrar un registro donde el tipo_accion sea efectivamente 'descanso'.