Currently, it is not possible to delete Function Roles (nor any other type of roles for that matter) within SOLABS QM10. This is because there are multiple relations that can exist between roles and other SOLABS objects like Training, Processes, Documents, Tasks, etc. Also, audit trails have direct links towards the roles, so removing them would also bring issues.
Please note that the possibility to "deactivate" Roles is on SOLABS' to-do list, but there is currently no ETA on when this will be made available.
For this reason, roles that are no longer required, can either be re-used for another function (renamed with a new name representing this new function) or simply renamed to identify them as obsolete by adding information such as DO NOT USE, NO LONGER IN USE, REPLACED BY, etc.
For the latter, SOLABS also recommends adding a prefix such as Z_ so they will come at the end of the alphabetical order in any listings (ex.: zzz_Role1_obsolete). This way they will all be displayed at the end in Roles lists, reducing chances where users would continue selecting these roles by mistake.
It is important to update BOTH the Name field and the Job Title field with the prefix and the obsolete identifier in order to impact all listings. For example, when using the Add Activity to Profile option within a Training Activity, the list of Function Roles comes from the Job Title of the Function Role and not the Name field of the Function Role.