Lo que le faltaba a Redmine ha llegado: Campos Calculados

Una de las principales funcionalidades que le faltaba a Redmine, la posibilidad de realizar cálculos tomando como base campos de la base de datos, ha llegado. ¡Celebrémoslo con un post! 🙂

Esta funcionalidad, que es una antigua reivindicación de muchos usuarios y administradores de Redmine para que se añada al “core” de la aplicación, llega gracias a un plugin de la comunidad (usuario “annikoff”), que os podéis descargar aquí: https://github.com/annikoff/redmine_plugin_computed_custom_field.

El plugin añade a la base de datos de Redmine un nuevo tipo de campo personalizado, llamado “Calculado”. Cuando creamos un nuevo campo personalizado y seleccionamos ese tipo, el formulario que aparece es el siguiente:

redmine plugin computed custom field

El campo más importante a rellenar aquí es la fórmula que se aplicará a otro campo o campos personalizados y que permitirá computar ese campo calculado. Para ello, tenemos que utilizar un lenguaje básico de programación, del que el creador del plugin nos pone varios ejemplos.

example_computed_field

El problema fundamental con el que nos encontraremos no será crear la fórmula, sino conocer el código en la base de datos de los campos personalizados que queremos utilizar como base para el cálculo. Facilitaría las cosas que tengamos instalado el panel de administración PHPmyadmin de la base de datos, ya que podremos localizar dicho código fácilmente.

Podemos crear campos que calculen número enteros o decimales.

A continuación os pongo un ejemplo de cómo crear el campo y de qué utilidad se le puede dar en un listado de tareas:

Computed field in Redmine

Este campo calculado multiplica el campo “Importe en dólares” por el contravalor en euros que se fije (en este caso, 0.87) y lo redondea a dos dígitos.

list_computed_fields

Como véis, hemos conseguido, tras modificar las columnas a mostrar, un listado en el que, aunque el usuario sólo ha tenido que introducir el importe en dólares en la tarea, el programa automáticamente le calcula el contravalor en euros.

Otros ejemplos de uso de campos calculados serían:

– indicamos en la tarea cuántos kilos hemos comprado y a cómo nos ha salido el kilo y tendremos automáticamente la cantidad total en euros de todos los kilos comprados.

– indicamos el número de horas a facturar a un cliente por la tarea realizada y le aplicamos el precio hora adecuado. Nos calculará el importe de la factura a pasarle al cliente.

Además:

– se puede utilizar en cualquier entidad de Redmine, no sólo peticiones/tareas, también usuarios, contactos (para los que utilizan el plugin CRM), imputaciones de horas, etc.

– se puede utilizar campos de otros proyectos, de forma que un campo se rellena en un proyecto, otro campo en otro, y el resultado sale en un tercero.

Todavía no he realizado pruebas a fondo, pero estoy seguro de que este nuevo módulo puede aportar muchas soluciones a nivel de reporting en Redmine.

IMPORTANTE: a efectos de instalación, el nombre exacto del plugin es “computed_custom_field”

Seguro que vosotros le encontráis muchas posibilidades más a este plugin. Si se te ocurre alguna, por favor, no dudes en comentarla en este post.

Y, si te ha gustado esta entrada, por favor, ¡compártela! ¡¡Gracias!!

Sobre el autor

8 comentarios en “Lo que le faltaba a Redmine ha llegado: Campos Calculados”

  1. Hola Luís, desde luego es una aportación genial y una solución sencilla a muchos problemas.
    Ahora bien, me gustaría hacer lo siguiente, que es:

    Un campo “COSTE TOTAL” en el proyecto raíz que sume el coste total (de valor float) de subproyectos que cuelgan de éste primero en el caso de que hubiera, y el coste de las actividades y/o peticiones. ¿Podría hacerse?

    Espero su respuesta.

    Gracias de antemano y un cordial saludo.

    1. Hola, Iván.

      Disculpa pero estos días no tengo la disponibilidad habitual. Por lo que he visto, sí se podría hacer lo que necesitas, pero para estos cálculos más complejos, te recomiendo que contactes directamente con el desarrollador del plugin, que suele dar respuesta a las dudas. Puedes crear una “issue” en su página de Github, previo registro: https://github.com/annikoff/redmine_plugin_computed_custom_field/issues

      Gracias y saludos.

  2. Buenas tardes Luis,
    una aportación muy buena y que estamos implantando en nuestro Redmine aunque tengo una duda sobre cómo podría crear un campo personalizado para las peticiones que mostrase una lista con todos los proyectos existentes. ¿Sabes cómo se puede hacer utilizando este plugin o si hay otra forma de obtener un campo personalizado con esos valores?

    Muchas gracias.
    Un saludo.

  3. Gracias por la infromación, alguna recomendación para campos dependientes ? es decir tengo el campo donde selecciono A, B, C y el siguiente campo carga de acuerdo a lo selccionado en el primero, si selecciono A, saldría A1, A2, An, en el segundo, si selecciono B, en el segundo campo saldría B1, B2, Bn.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *