On Mon, 10 Jan 2005 17:09:03 -0800, Andrew
PMFJI... but thought I'd just add a few thoughts.
You're not knowledgable about the complex and arcane field of
relational design - that's a different statement than "stupid" which
clearly doesn't apply! said:
What I should have done from the start is completely explain everything.
So:
What we currently have is three tables.
tblCorresp
tblInvite
tblMeeting
In each table, every detail about a given piece of mail is entered into the
relevant table. General Correspondance is entered into tblCorresp,
Invitations are entered into tblInvite, and Meeting Requests are entered into
tblMeeting.
Many fields in each table are required. Some examples are: The Sender's
surname, firstname, title, date the letter was recieved, date our responce
was sent, name of the function (in the case of an Invite), place of meeting
(in the case of a Meeting) etc...
Thus, every table has many different fields.
Well... many different REDUNDANT fields, it appears. Unless each
sender appears only once, or very very rarely more than once, you
should consider having a table of Correspondants with fields:
CorrespondantID
LastName
FirstName
Title
What I am trying to establish is whether it is possible to give each piece
of mail can be allocated a unique sequential ID#.
Example: If I enter a piece of General correspondence it is allocated ID#: 041
Then, if I enter an invitation after that, it is allocated ID#: 042
Only by (as suggested) using a single table for all correspondance.
This is an example of a rather advanced technique called
"Subclassing". What you might want to consider is to have a master
table Communications:
CommunicationID
CommunicationType <e.g. General, Invitation, MeetingInvite, Reply,...>
CorrespondantID <link to Correspondants; don't include any fields from
there>
CorrespondanceDate <date recieved, or sent in the case of replies;
this will allow for multiple replies>
InRe <the CommunicationID of related messages in a group, e.g. a Reply
might have the ID of the message being replied to; null for standalone
messages>
This table would be linked one-to-one to tables for Invitations or
Meeting Requests which would also have CommunicationID as the Primary
Key, together with fields pertinant to those special cases of
correspondance.
I have spent some time trying to get an index table working, where
information is duplicated from the three tables into tblIndex, where the
unique ID is generated. But it really doesn't work the way I had hoped.
Don't duplicate ANYTHING except the ID, and fill that in using
Subforms.
Once again, am I being a little too ambitious?
Nope. You're just learning, like the rest of us!
Thanks once again for your time.
(I don't suppose you've got a PayPal account I could donate into? I'm
starting to feel a little guilty)
John W. Vinson[MVP]