We are working on a system, where network elements are being maintained. The number of the elements will be large: more than a few thousand is expected. Several processes can run on these elements, and each process can have many sub-processes, each with basic and detailed information.
The idea was to is to have a two panel selector, with grouped tables in tree-like arrangement, where the user can open the panel of the sub-processes for its basic information in a table, and by clicking any of the process-elements have the additional info in a second, tabbed panel. The user can also do actions: stop, restart and delete a process (even sub-processes), but only one at a time, so until now there was no need for group selection.
This has already been developed, but hasn’t gone live yet, when new requirements emerged. Because of the large number of the nodes, an opportunity also should be provided, where the user can select more than one element to work on. The catch is, that delete is only valid for the main processes, but one can pause/restart every process element regardless of it being is a main- or a sub-job (of course the task on the parent process will be applied to the child as well). The possibility to do tasks on each element separately still remains.
We thought about using checkboxes, but in this case a lot of questions arose, like how to deal with those situations, where “mixed” elements are selected, when not every job is valid for every element (e.g. delete for sub-jobs, or restart for already ongoing process). To have the buttons inactive until only one type of elements are selected is hard to do for the user because of the large number, but having two columns of checkboxes (one for delete, one for pause/restart) as somebody suggested in the team, is the worst thing I can ever imagine. Not to mention, that clicking on a row now makes the additional information displayed at the second panel, and we want to keep it that way.
So it is a bit complex and but I’ll be grateful for any ideas you have. Maybe to choose the task first, and than the objects according to the first selection? What do you think?
Here is a mockup we’ve made (without the checkboxes), hope it helps to understand the problem: