Well I haven't figure out the why, but I got it all to work. I'd like to know if anyone has any kind of explanation.
Lazarus/FPC/Adantage DB were complaining when I set up multiple master/slave relationships on the TTables component. The strange part (and this is what threw me), was that while the master table was empty, everything was fine. It was only after I added a master record that the errors started appearing. No matter how I played with the properties on the TTables component, the error was still there. I even dropped the tables in question and rebuilt them from scratch to no avail.
Since it was complaining about the fields being autoinc and I needed a primary key, I reworked my code to generate a GUID string of 38 bytes. Fortunately, this was already part of FPC.
Result := CreateGUID(GUID);
AdsMtgTableEE.FieldByName('kid').AsString := GuidToString(GUID);
The above generates and assigns the key value.
So instead of relying on the DB to generate the unique key for each table, I do it now. I also get the benefit of having globally unique keys which may come in handy when I write interfaces to other software. The only real downside is that my keys went from 4 bytes to 38 bytes.
So there is some sort of interaction going on that I do not understand, but have worked around.
Thanks everyone for your suggestions,
Knipfty