Sorry for the long post. My basic question is at the end, the middle describes the scenario. Started a new position as a general IT person (db experience = low), was handed a old Paradox db and asked to convert it to Access. Imported the tables, and started replicating the screens/forms with moderate success. The two main tables are essentially a "Customers" and "Orders" relationship.
But got to a point on the "Orders" form where I realized the data wasn't following typical normalization guidelines.
Here's the current logic for entering an order:
- A Customers form allows for entering typical customer fields.
- Some order specific fields like SalesAssociate, and OrderDate are also entered in the Customers table via the Customers form. (they have reports showing customers with orders pending from this table).
- When an order is complete the Orders form allows for entering the Customer#, which brings up the typical customer details from the Customers table (name, address...) as well as those order specific details (SalesAssociate) also from the Customers table.
- Additional order specific info is also entered on the Orders form, Order# (primary key/autonumber), CompletedDate, OrderAmount, etc.
Up to this point no order has gone into the Orders table (I checked). With Pardox you have to Post the data.
Here's what happens when you Post from the Orders form:5. Dialog box reminds you to update Customer information.
6. New form comes up to modifiy some Customer information, ("Next renewal date"), changes are optional.
7. Goes back to the Order form and asks you to Post again.
When Posting is complete what has happened is:8. The order specific details (step #2) have been deleted from the Customers table.
9. A new record is added to the Orders table with a unique Order# and the Customer# from the Customers table.
10. The order specific fields deleted in step #9 are now in the new Order record.
11. Additional order specific data from the Orders form (e.g. OrderAmount), are in the new record.
12. Finally, some fields that should be Customer specific (CustomerName, CustomerAddress...) are copied from the Customers table and added to the new record in the Orders table.
The process seems convoluted to me (again, db experience = low) and not normalized as I understand it.
Here is my problem: My direction is to get something that approximates the functionality of the Paradox db in a short period of time, (doesn't have to be perfect) and something that will have a familiar work flow to the end user. A lot of what I described above makes me think the db should be redesigned from scratch, but that would take more time and while quirky the current Pdox db at least provides a template for the design. However, I'm not even sure that the above process can be emulated in Access (2007).
What would be my best approach (aside from getting another job)? - Thanks