Ir al contenido

Eliminar Estado

Quita un estado del workflow.

Antes de eliminar un estado, verifica que no esté en uso:

-- Proyectos usando este estado
SELECT COUNT(*) FROM projects
WHERE status = (SELECT status_key FROM workflow_statuses WHERE id = '<status_id>');
-- Tareas usando este estado
SELECT COUNT(*) FROM tasks
WHERE status = (SELECT status_key FROM workflow_statuses WHERE id = '<status_id>');

Solo procede si las consultas anteriores devuelven 0:

DELETE FROM workflow_statuses
WHERE id = '<status_id>';
Query de eliminación segura
-- Eliminar estado (solo si no está en uso)
DELETE FROM workflow_statuses
WHERE id = '<status_id>'
AND NOT EXISTS (
SELECT 1 FROM projects p
WHERE p.status = (SELECT status_key FROM workflow_statuses WHERE id = '<status_id>')
)
AND NOT EXISTS (
SELECT 1 FROM tasks t
WHERE t.status = (SELECT status_key FROM workflow_statuses WHERE id = '<status_id>')
);