Thank you so much for such a detailed response.
Maybe I should give you some background as to why I developed the Dbase in the first place.
I was given the position of looking after the shipping in the company where I worked. They had no database to track any shiping details at all! Only a Sage Accounting System for Invoicing and tracking all things financial. Naturally I was on the backfoot from the start. So I developed the database using MS Access 2003, (now 2007), to help me generate shipping notes and answer questions that were asked of me by my superiors.
It worked (and still does to a certain degree) fine for generating the necessary reports and keeping check on what shipped to whom, when, and where. It even emails current bookings that have not been collected to specific Hauliers, and prints out shipping notes with all the relevant details on them, including billing/delivery addresses, products shipped, PO numbers against each product, etc,etc.
The thing is, people noticed how simple it was to generate reports, that I have now had to distribute it to 11 other workstations on the network, (BE on a file server, FE on each workstation).
Naturally, now that I am not using it as a stand alone Dbase on my desktop, there are performance issues. So I thought I would revamp the links etc. and ask for advice on better Normalization. (everything I know about MS Access I have learnt on here, and a couple of books)
As far as Invoicing and Pricing details, I have not included a provision for that. It is not required, as they want to link the shipping notes to the Sage system. i.e. whenever a shipping note is generated it sends the details to the Sage 100 Accounts system and they do whatever they want to do from there. This is beyond my capabilities, though they have sourced a firm that would set that up for them.
As far as shipping worldwide, we do. Which is why I have a link to a Country table.
So it's main purpose is to generate Shipping notes with the relevant Purchase Order number against items shipped. New PO's are entered as and when they are received, (a lady in another office does that). Certain other people need to generate shipping and stock reports. I filter-out what people can and cannot do in the Dbase by means of getting the username from the Windows logon. I have a myriad of queries to evaluate current and past stock levels etc.
Thanx again for your time.