I've been tinkering with FM7 for a few weeks and it seems that the answer to your question lies in using users with different layouts. For example, the end user would only be able to see the forms they need. In that layout you could lock all the fields you don't want them to mess with. The admin of the db, OTOH, would get access to other layouts that allow input. It's pretty easy to do.
As far as what version of FM you'd need, it depends on what you want. If you want multiple users to access the db from various locations, you'll need FM7 Server and FM7 clients for each computer. If there's just ONE computer with the db, all you need is one copy of FM7 - the ordinary one. BTW, how are you getting the barcode info into the db? I've been interested in learning about that.