En este xicotet article explique un truc SQL per llistar els usuaris del gestor d'incidències Mantis Bug Tracker que no tinguen cap projecte assignat creuant dades de dos taues.
A la feina necessitem que els nostres usuaris sempre estiguen en els distints projectes d'assistències que oferim, i de tant en tant trobem usuaris antics que encara no han segut configurats correctament i, per tant, no tenen assisgnats els projectes actuals que gestionem.
Doncs hui hem fet un truc, en SQL, que compara els usuaris de les taules mantis_user_table i de mantis_project_user_list_table del gestor Mantis Bug Tracker de la següent manera:
SELECT id, username FROM mantis_user_table WHERE id NOT IN (SELECT user_id FROM mantis_project_user_list_table);
Jo ho faig a un entorn phpmyadmin que tenim instal·lat, i ràpidament pots obtenir llistats i extraure'ls en format ods, csv, json, xml o com necessitem:
Si vullguèrem no llistar aquells usuaris deshabilitats afgirem enabled="1" en la consulta SQL de la següent manera:
SELECT id, username, enabled FROM mantis_user_table WHERE enabled="1" AND id NOT IN (SELECT user_id FROM mantis_project_user_list_table)
I ara ja és qüestió d'apuntar els nostres usuaris i afegir-los als projectes que necessitem. Hi haurà usuaris administradors que no calen ser afegits a projectes ja que, com que són administradors, poden publicar i gestionar peticions a qualsevol projecte del Mantis Bug Tracker.