If you are storing the Misc stock code and description on the ticket, that would possibly be fine. If you have normalised the database then the description may/will change if you re-print a ticket or print an invoice after another Misc sale goes through. There should be a point where a ticket cannot be amended maybe after printing/emailing to prevent fraud. Also, if you allow a delete, then set a delete to only be hidden. Then Admin can see deleted items and who by.
I general I think that the code and description at-the-time-of-sale should be duplicated onto the ticket, together with the price and VAT/Tax rate.
Then any change at a later data in the stock table will not result in different values from the original. After all disk space is cheap. Once the ticket is complete, then amending it should not be allowed. The safest way really is to add a new stock code as new items arise I do not like users to be able to amend descriptions and values. Maybe a discount could be allowed?
The use of a single Misc code used for different items is fraught with problems and I advise against using one. It will probably only take a minute to add a new code. You could identify the Misc items with a prefix maybe so they may be easily analysed and audited in your management reports section.
Your 3x3x1000 piece of wood should be in your system as 3x3 timber and you will sell X of them at YYYY length. Your stock will be charged at a per metre rate and only one code is in your system. You really need a length field in your Ticket and Stock tables, so you can work out how many are sold at the length and they are then charged at the rate per metre. Which is exactly what your wood suppler is doing.
Further to the above, would your system stop a user issuing a range of items to their friends, or for a backhander and then allow them to amend or remove items at a later time? If your system allows a fraudulent transaction then there will be fraud. Exactly who has to check all of those spreadsheets?.....frightening!
When one of my systems was installed at a client's it rapidly picked up an employee who had been using their plant for a side-line of his for years. During the day he hired out his employer's plant, some of it for himself and at night went home and invoiced his customers. Just a few every week that he deleted off the system, out of thousands in a month. My system was virtually free after a very short time. I should have charged more!