Anteil Design Notes
17 Nov 2000 - Cecil Galbraith
A Sale is represented by an entry in the Sale table and an entry in
the Event table. An entry in the Contact table is required, and there may
be an entry in the Org table. If an entry in the Org table is appropriate,
then there must also be an entry into the Member table in order to tie
the contact and his organization together.
A Sale is indicated to the system by having a bit set in the type_id
field in the Event table. There are also bits set in this same field to
indicate that a follow-up is appropriate.
ASale table entry is tied to its corresponding Event table entry thru
the value of the data_id field (identical values) in both tables.
A Note is represented by an entry in the Event table and also by an
entry in the Contact table. There may be entries in the Org and in the
Member tables if appropriate.
A Note is indicated by the value in the type_id field in the Event
table record (zero). There can also be bits set in this same field to indicate
that a follow-up is appropriate.
A Note may not be associated directly with a Sale, but rather with
a Contact and/or Organization.
Either a Note or a Sale can become an action item by virtue of having
the follow-up bits set in the Event table record's type_id field. Action
Items are tied to their respective Sale or Note by having identical values
in the Event table record's data_id field.
Contact and Organizational Ids
Each event will have at a minimum a contact_id to indicate the owner
of the event and its associated parts in other tables. Therefore, an owner
* Only one entry in the Contact table
* One, none, or multiple associations with organizations (Org and Member
tables)* One, none, or multiple associations with Action Items
* No direct association with a Sale, but many indirect Sale associations
through Event table entries