I keep looking at that relationship diagram and get an uncomfortable feeling - but I can't put my finger on what may be wrong. Maybe it's because I don't know enough about your requirement. Anyway ...
- Your main form will show data about one plant component.
- You need a subform to add/amend/delete test results for that plant component (and by implication that product).
Basically your subform lists the existing results for that plant component and allows for add/amend/delete. Additional, complementary data is retrieved from the typicals and actions tables. (Note: subform should be a continuous form rather than a datasheet.)
Now the complication arises from the fact that there may be multiple actions (tests) for each plant component - typical combination, and presumably repetitions of each of those actions over a period. This suggests to me that the column for action on the subform has to be some kind of select control, most likely a combo box. Anyway worry about that a little later; let's get the SQL up and running for the subform. Here's a sample design grid.
Now you need to design a continuous form bound to this query.
When you install the continuous form as a subform, Access will probably link on ConponentID. I suggest you add a link on TypicalID as well.
Disable (or hide) the columns for ComponentID and TypicalID on the subform.
On the subform change the control for ActionID from a text box to a combo box.
To complete the synchronisation you need to code a one line statement in the main form's Current event.
Code:
Private Sub Form_Current()
Me.frmSub.Form.ActionID.RowSource = "SELECT ActionID FROM tblActions WHERE TypicalID = " & Me.TypicalID
End Sub
Use your own names where necessary.
Once the basic synchronisation mechanism is working we can apply some cosmetics.