With the ABMTreeTable component you can build collapsable tree structures. You can even use them to create simple reports (see the ABMPrint module).
The tree is dynamic so you add, change, delete and move (try dragging an 'hour' detail line to another 'hour' block for example).