Hi Andrew, so far I think that sticking with creating a new set of fields is probably your better solution, but I am still looking at it. As Joe points out, the biggest issue with modifying the functionality of the existing fields is that you MUST do it everywhere, you can’t just do it where you need it. Where as, adding your own fields means you only need to implement it where you need it. Joe, you are implying that it is less work to modify the exiting functionality than to add new fields, and this is interesting. As I have said, the current client has been running the current version with a new field set for about 3 years, and it works fine, but they are getting ready to upgrade to 4.01, and I am contemplating converting it to use existing fields, so that future upgrades will be easier. But I need to know if this really will make the next upgrade easier. PS Daniel, thanks for the input, concidering I have already done it, I can say that your observations were quite correct. Sorry that I didn;t make it clear in the begining that the system was already in place, but your time spent responding was much appreciated. And of course, if anyone has done this (I mena modified existing UOM code to be dynamic), I would really appreciate any feedback.