Here is what we had in mind with the Projects, Phases and Activity relationships.
Basically the Project is a parent record which can have any number of Activity records as children. Activities can be everything from a simple not or diary entry to something like an appointment or project milestone. (Activity records are the contents of the "Appointments" table in SeedCode Calendar.)
Activity records can be created for a project right on the project's activity tab, or activity records can be created right in the calendar and linked to a project on the "More" tab of the Edit Appointment mini window.
There are 3 classes of activity record and any one item may belong to some or all of these classes: classes are used to filter the calendar and project activity so you're just looking at one class or excluding one class. The classes are:
"Comment" - these are used for things like notes or diary entries and the is the default class for items created on the project's activity tab. If this is the only class assigned to an activity record that record won't show up on the calendar or on the gantt chart. This lets you keep project notes without cluttering your calendar or chart with them.
"Calendar" - This is the class used to make something show up on the calendar and is the default class for items created form within the calendar.
"Gantt" - Only items of this class show up on the gantt chart. This would be the class used for your project's deadlined (which will likely also have the class "calendar") and for project tasks or milestones.
Projects may also be broken into phases, and each phase in our solution is a Project record in its own right. You can create phases for a project on the phases section of the project tab. Since each phase is really its own project record, each can have its own activity.
Here are some additional tips for working with Projects...
When you click "show as gantt" for a project, you'll see the activity items of the class "gantt" for that project record and for any phases for which that project is the parent. Should you click "show as gantt" from a phase, you'll only see that phases' activity.
Note that the gantt chart shows all "gantt" activity which matches its filter criteria: so you can select multiple projects at once in the project filter- or multiple phases of the same project. You can also leave the project filter blank and select items for a specific user or contact to see the matching items across all projects.
Even though Projects and Phases are a self join, we have not structured this so that phases may have sub-phases; it is really just two levels.
The "sort" field on the Project's phases tab can be used to control the order in which phases show up on the gantt chart. In this
screenshot you'll see one project "Test Project" with not activity directly associated with it. It has two phases, "Development" and "Revisions", each with their own activity. The sort field has been used to move Development before Revisions.
Finally, the first bar drawn on the screen shot above is the project's "Overview Record". This is a special activity record created automatically when you enter project start and end dates in the header of the project’s record.
Hope that helps,
John