What you need to do is store the price with the order when you enter it but to take this price from a table of current prices.
Basically have a table of current prices which you can update as and when prices change. When you add an order, you can enter the item on the form and default the price to the current price and store it in the order.
This way you have the price at that date and it will not change in old orders when the current price changes.
Gasman, we crossed