Data Model Diagram: Non-Profit Success Pack with Auctions for Salesforce
- An arrow from object A to object B indicates that there is either a lookup field in A that refers to B, or a master-detail relationship with B as master and
A as detail. For example, the arrow Opportunity Contact Role → Donation (Opportunity) means that there is a lookup field in the Opportunity Contact Role object
which refers to the Donation (Opportunity). Thus Opportunity Contact Role is a child of Donation (Opportunity), and there may be many Opportunity Contact Role
records linked to a given Donation.
- The diagram is drawn in a hierarchy, with arrows pointing upwards whenever possible (except in the case of cyclic dependencies). So the top level
has objects having no parents, and the lower levels contain objects whose parents are in the higher levels. This layout has a few advantages over the more
common unordered layout:
- Object dependencies are easier to follow. For example, we see clearly that Payments depend on Donations, which in turn depend on Organizations and
- When importing data, the hierarchy shows, for example, that you must first import Household records (or otherwise guarantee their existence) before you
can import Contact records, since the Household object is a parent of the Contact object.
- When creating a report involving multiple objects, it is easy to see which relationships cause one-to-many record occurrences in your report. For
example, if you create a Contact report that involves only Organizations and Households, you will get at most one record per Contact, along with the
associated Household fields. But if you create a Contact report that includes Campaign Member or Contact Role records, you will retrieve multiple child
records for each Contact record.