Thank you for this solution. I like this approach.
Just a quick one, why is it not recommended to store the quantity in a table?
I was thinking of adding a method whereby quantity items are removed at the Invoicing stage.
This way I can keep track of item's allocated to which job, when...