The GanttPV data is defined as tables (such as "Project", "Task", and "Holiday") and columns (such as "Name" and "StartDate"). The current name definitions are given in the table below.
Every table contains an "ID" column. Thus, each table row is uniquely identified by the table name and a row ID. In the documentation given here the table itself will be described in "ID" description.
All dates are given in a year, month, day format (like "2004-06-02"). This is used for three reasons. First, it is the same format that MySQL uses internally. Using this format will simplify the addition of multi-user/database features. Second, comparing and sorting dates can be done with a simple string comparison. Third, by displaying the same format that is used internally, it reduced the workload required to introduce GanttPV.
Dates always refer to the beginning of the day. This differs from some other tools that treat end dates differently.
Most columns that can be added to reports are based on table columns. Report column labels are not necessarily the same as the table column names. GanttPV will display the report column label if one is provide, otherwise it will look for the column type label. If that isn't defined, it will display the table column name (or, more accurately, the column type name which is the same as or includes the table column name).
Any database row may have a "zzStatus" column. A value of "deleted" means that the row should be treated as deleted. The row is retained in the database to support undo/redo functions and multi-user enhancements. "Deleted" rows can be removed by a maintenance script (see Purge Deleted Items).
If you add tables or columns to GanttPV and would like to avoid conflict with future official names, use names beginning with "xx" ("xxEmail", "xxPhone", etc).
Note that columns marked as "required" must be specified for each record in that table.
| Name | Description | Required? |
| ---- Project table ---- |
| ID |
A project is a group of tasks that is treated together for planning purposes. |
Yes |
| Name |
Brief descriptive name of project. |
Yes |
| StartDate |
Project start date. |
No |
| TargetEndDate |
Desired project completion date. |
No |
| ---- Report table ---- |
| ID |
Work on a project is divided into tasks in order to be scheduled and assigned. |
Yes |
| ProjectID |
The ID of the Project that owns this task. This is how GanttPV knows which tasks belong to which projects. |
Yes |
| Name |
Brief descriptive name of task. |
Yes |
| StartDate |
Requested task start date. (Task dependencies take precedence over this date.) |
No |
| Duration |
Estimated duration in hours (default = 1 day). |
No |
| CalculatedStartDate |
Start date calculated based on dependencies and durations. |
No |
| CalculatedEndDate |
End date calculated based on dependencies and durations.
| No |
| ---- Dependency table ---- |
| ID |
Each dependency pairs a task with prerequisite task that must be accomplished before the former can begin. |
Yes |
| TaskID |
The task that has a prerequisite. |
Yes |
| PrerequisiteID |
The prerequisite task. "Prerequisite" is defined in GanttPV as a synonym for "Task" so this is the Task ID of the Prerequisite Task. |
Yes |
| ---- Resource table ---- |
| ID |
People, equipment, etc., that can be assigned to a task.
| Yes |
| ShortName |
Nickname for resource. May be used for condensed description of resource assignments. |
No |
| Name |
Descriptive name of resource. |
Yes |
| ---- Assignment table ---- |
| ID |
Assignments of resources to tasks. |
Yes |
| TaskID |
The task that has been assigned a resources. |
Yes |
| ResourceID |
The resource that has been assigned to the task. |
Yes |
| ---- Holiday table ---- |
| ID |
Days when the normal number of work hours has been overridden. |
Yes |
| Name |
Descriptive name of holiday. |
No |
| Date |
Date of holiday. |
Yes |
| Hours |
Number of work hours on holiday (default = 0). This allows you to define half-day holidays. |
No |
| ---- Report table ---- |
| ID |
A way of organizing data for entry and display. |
Yes |
| ReportTypeID |
ID of Report Type that helps define this report. |
Yes |
| Name |
Descriptive name of report. |
Yes |
| ShowHidden |
Include hidden or deleted data in report display? Default is no. |
No |
| FirstColumn |
ID of first Report Column in this report. (Default is None meaning the report has no columns defined.) |
No |
| FirstRow |
ID of first Report Row in this report. (Default is None meaning the report has no rows.) |
No |
| ---- ReportType table ---- |
| ID |
Identifies kind of columns that can be included in a report. |
Yes |
| Name |
Name of report type. (Don't change this. Updates will rely on it.) |
Yes |
| Label |
Name displayed when adding reports. (Okay to change.) |
No |
| TableA |
Primary source of data for report. |
Yes |
| TableB |
Secondary source of data for report. |
No |
| ---- ReportColumn table ---- |
| ID |
Describes the information in each column of a report. |
Yes |
| ColumnTypeID |
ID of Column Type that helps define this column. |
Yes |
| Label |
Label displayed at the top of this report column. (Defaults to ColumnType Label.) |
No |
| FirstDate |
Time scale columns only. Specifies that data of the first column displayed. |
Only if time scale |
| Width |
Width of report column. (Defaults to Column Type width.) |
No |
| NextColumn |
ID of next Report Column in this report. (Default is None meaning this is the last column.) |
No |
| ---- ColumnType table ---- |
| ID |
Describes the kind of columns that can be inserted into a report. |
Yes |
| ReportTypeID |
Indicates which report type will be able to include this column type. |
Yes |
| Name |
Identifies this column type. (Do not change the column type's name. Upgrades will look for this name.) |
Yes |
| Label |
Label displayed at the top of this report column. Defaults to Name. (Change these labels when you translate ColumnTypes to other languages.) |
No |
| DataType * |
"i" = integer; "f" = float; "t" = text; "d" = date (in "YYYY-MM-DD" format); "u" = time unit (e.g. "2w 3d 1h"); "g" = graphic (gantt chart bars) |
Yes |
| AccessType |
"d" ("Direct") - Data displayed is taken directly from named table; "i" ("Indirect") - Data displayed is taken from named table via a pointer to that record; "s" ("Special") - Other approaches, includes display of gantt bars. |
Yes |
| T * |
"A" - Column type refers the primary table of the report type; "B" - Refers to the secondary table of the report type. |
Yes |
| Edit |
True - allow user to edit data in the column. False - do not allow user to edit data in this column. |
Yes |
| Width |
An integer that specifies the default width (in pixels) of this column. |
No |
| ---- ReportRow table ---- |
| ID |
Saves the sequence and visibility of report rows. Report Row table rows are automatically created by GanttPV when needed. |
Yes |
Hidden |
Hide this row of the report? Default is no. |
No |
| TableName |
The table in the database that is the main source of data for this row. |
Yes |
| TableID |
The row in the database table that is the main source of data for this row. |
Yes |
| NextRow |
ID of next Report Row in this report. (Default is None meaning this is the last row.) |
No |
* Names marked by an asterisk are tentative and may be changed based on later reflection and feedback. We look forward to you comments and suggestions on names in the GanttPV Forum.