DonorPoint Data Model
Like other web applications, DonorPoint has an underlying database that contains all your data - your page content, constituent records, transactions, even report definitions. Everything in DonorPoint is the same basic type of Object, and by the principle of DRY - once you learn concepts related to Objects, you will apply them consistently all your actions in DonorPoint.
Objects and Classes
We use the term Object in general for anything in DonorPoint - your account, your pages, constituents, etc. Even application content like reports and permissions. Objects are more complex than single rows you may be famililar with in a spreadsheet or simple database.
A Class is a type of Object, which defines the properties Objects of that class will have. For example the Contact Class defines that Contact Objects will have first name, last name, etc. Some Classes in DonorPoint can be extended with custom fields in your account - for example you can specify that all Contacts in your account should have a favorite color (see Custom Fields for more information).
The left-hand-side menu in the DonorPoint Application has links to lists of different Classes of Objects - Contacts, Pages, Reports, etc.
Properties
Properties are the individual pieces of an object - the name of the Object for example, or individually the first name and last nane of a constituent. When you see an individual data entry field on a form in DonorPoint, you are accessing a Property of an Object. Properties can be more complex - they can be images, other files, large blocks of HTML content and even Objects or lists of Objects themselves. For example the Contact Property on a Transaction Object is a Contact Object. And vice-versa the Transactions Property on a Contact is a list of Transaction Objects.
In general all Objects have a name property, which is how they will be shown on list views. Objects also have an Account property, which defines which Account owns the Object. Objects may also have Group and Owner Properties which enable more detailed access control (see Detailed Access Control)
Some Objects in DonorPoint can have their own specific extensions in the form of Integration Codes. For example a Workplace Campaign can have one or more external database codes added to it, so that when transactions are exported they include that field for easy import into an external applciation database.
Relationships and Reusability
Properties which are objects allow for easy reusability across the DonorPoint platform. For example one Page Template that contains your preferred HTML, CSS and Javascript content for your pages can be set as the Page Template Property for many pages.
Relationships and Reusability can be confusing, as changing a Property which is an Object will change it on other Objects where it is used. Warnings in the DonorPoint Application will remind you when you are changing an Object property that is used across multiple Objects.
No Delete, Archive
In general Objects in DonorPoint are never deleted. Many Objects support the ability to be Archived, which sets a flag on the Object to hide it by default in lists of Objects. Objects you’ve accidentally archived can be recovered by filtering a List View to include archived objects, then editing the object and un-checking the archived flag.
Contacts and Organizations have a separate Status that controls whether they are shown in reports. See Constituents - Contacts and Organzations/CRM for more details.