First post, so I hope I'm doing this right.
I'm creating a solution to handle my business forms. The solution is based on the starter solution Invoices. The solution handles quotes, invoices, price estimates, stuff like that. The way I've set things up is this:
A customer might ask for a price on an item or several and the system will create a transaction document, with a specific ID-number, this number will then be the same throughout the whole process.
The basics of a single transaction might look like this:
Price estimate -> Quote -> Order -> Invoice
Depending on the state the transaction different things can obviously be changed, but if the transaction is changed from an estimate to a quote, I should not be able to change it back to an estimate, and if I've made an invoice out of it, I shouldn't be able to revert it into a quote. You get the point.
I'm using a single layout for the whole process of the transaction and the transaction state is changed with a drop-down field. So ideally the user would get a warning when changing the state of the transaction - "Do you wish to perform this action?" - and once changed the previous state would be removed from the list of choices.
Is there a neat way of doing this?