Differences

This shows you the differences between two versions of the page.

Link to this comparison view

tracker:admin [2010/08/01 17:13]
tracker:admin [2012/09/23 16:57] (current)
Line 1: Line 1:
 +====== ProjectTRACKER Admin Guideline ======
  
 +===== Introduction =====
 +
 +The ProjectTRACKER is distributed under the GNU General Public License means this program is free software: you can redistribute it and/or modify it under the terms of the [[http://​www.gnu.org/​licenses/​gpl-3.0.html|GNU General Public License]] as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. ​ ProjectTRACKER is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the [[http://​www.gnu.org/​licenses/​|GNU General Public Licenses]] for more details. ​
 +
 +The ProjectTRACKER is developed with the [[http://​www.yessoftware.com|CodeCharge Studio]] web application development framework. The generated code by CodeCharge and add-ons are written in PHP and Javascript. ProjectTRACKER was tested with PHP version 5.2 and 5.3.
 +
 +Currently MS Access and MySQL are the supported databases for ProjectTRACKER. In principle CodeCarge works also with other databases, but this has not been tested. Tested versions are:
 +
 +^ Database / Driver ^ Version ^
 +| MS Access | 2003 SP3 |
 +| MS Access ODBD Driver | 4.00.6305.00 |
 +| MySQL | 5.1.30, 5.1.47, 5.5.25 |
 +| MySQL ODBC Driver((Only needed for CodeCharge development)) | 3.52 |
 +
 +The ProjectTRACKER installation package is delivered with the MySQL database connection only.
 +
 +===== Installation =====
 +
 +==== Installation Files ====
 +
 +You need a server with MySQL and a web server (e.g. [[http://​httpd.apache.org/​|Apache]]) running. You will get this from your internet provider or e.g. can use the [[http://​www.apachefriends.org/​de/​xampp.html|XAMPP]] package to install this on your computer for test purposes.
 +
 +The ProjectTRACKER package is delivered in a ZIP-file, which contains:
 +
 +  * Directory **trackergpl**
 +    * Tracker PHP, HTML, Javascript files
 +    * Directory **FCKeditor** - Copy of [[http://​ckeditor.com|FCK Editor]] Java Script files
 +    * Directory **doc** - ProjectTRACKER import format examples
 +    * Directory **images** - Images for ProjectTRACKER
 +    * Directory **MySQL** - MySQL scripts and installation files of the ProjectTRACKER
 +    * Directory **phplot** - Copy of [[http://​www.phplot.com|PHPLOT]] PHP files
 +    * Directory **Styles** - Styles for ProjectTRACKER
 +    * Directory **temp** and **temp2** - Place for storing ProjectTRACKER temporary files 
 +    * Directory **tracker-data** - Place for import / export files and configuration data of ProjectTRACKER
 +
 +Extract all files with exception of **MySQL** and **doc** to your web server. Make these files visible to your web server by either copy the files to the **htdocs** directory, or linking to another directory via:
 +
 +  Alias /tracker "​D:/​dir/​tracker/"​
 +  <​Directory "​D:/​dir/​tracker">​
 +     ​AllowOverride AuthConfig
 +     Order allow,deny
 +     Allow from all
 +  </​Directory>​
 +
 +Protect the directories **temp** and **tracker-data** from web access e.g. via a **.htaccess** file moved to these directories with the content:
 +
 +  order allow, deny
 +  deny from all
 +
 +Take care that the directories **temp**, **temp2** and **tracker-data** can we written by your web server and follow the instructions in chapter [[tracker:​admin#​projecttracker_configuration|ProjectTRACKER Configuration]].
 +
 +==== CodeCharge Installation / Configuration ====
 +
 +The ProjectTRACKER is generated with the [[http://​www.yessoftware.com|CodeCharge Studio]] development framework. You do not need this framework to run the ProjectTRACKER,​ the framework is only needed to further develop the ProjectTRACKER. For more details see [[tracker:​ccadmin|CodeCharge Installation / Configuration]].
 +
 +==== PHP / Apache Configuration ====
 +
 +If your are allowed, change the following parameters in the php.ini file (e.g. in //​D:​\xampp\apache\bin\php.ini//​) for the used Apache / PHP server:
 +
 +^ Variable ^ Value ^ description ^
 +| **max_execution_time** |  600 | PHP script can run up to 600 sec - this is needed for bigger export / import operations - otherwise the script might be canceled before completion! |
 +| **odbc.defaultlrl** |  65536 | This is needed only for the proper operation of the ODBC / Access interface of CodeCharge |
 +| **memory_limit** |  64M | PHP can use up to 64M Bytes - this is needed for bigger export / import operations - otherwise the script might be canceled before completion! |
 +
 +==== Installation Database ====
 +
 +Generate a new MySQL database. Either use the **MyISAM** or **InnoDB** database engine (**MyISAM** has better performance). Use "​latin1_general_ci"​ as standard collation for this database.
 +
 +Run the SQL script (e.g. via the MySQL admin tool [[http://​www.phpmyadmin.net|phpMyAdmin]]) from the ProjectTRACKER ZIP-file directory MySQL to setup the ProjectTRACKER database tables:
 +
 +  * **tracker-mysql-create.sql** (for mySQL InnoDB)
 +  * **tracker-mysql-create-no-inno.sql** (for mySQL MyISAM)
 +
 +==== ProjectTRACKER Configuration ====
 +
 +To adapt the ProjectTRACKER to your server environment and usage needs you should check / configure a few PHP constants / variables.
 +
 +=== mySQL Configuration Settings ===
 +
 +The mySQL setup is defined in the file //​Common.php//​ in the PHP array //​$CCConnectionSettings//​ at the beginning of the file:
 +
 +  $CCConnectionSettings = array (
 +    "​Connection1"​ => array(
 +        "​Type"​ => "​MySQL",​
 +        "​DBLib"​ => "​MySQL",​
 +        "​Database"​ => "​tracker",​
 +        "​Host"​ => "​localhost",​
 +        "​Port"​ => "​3306",​
 +        "​User"​ => "​tracker",​
 +        "​Password"​ => "​tracker",​
 +        "​Persistent"​ => true,
 +        "​DateFormat"​ => array("​yyyy",​ "​mm",​ "​dd"​),​
 +        "​BooleanFormat"​ => array(1, 0, ""​),​
 +        "​Uppercase"​ => false
 +    )
 +  );
 +
 +Please change only the **Database**,​ **Host**, **Port**, **User**, **Password**. //​**Note:​**//​ For security reasons you should choose at least another, secure password for your database!
 +
 +=== ProjectTRACKER Configuration Settings ===
 +
 +The ProjectTRACKER can be configured in the file //​Incl_Const.php//​ via the following PHP constants at the beginning of the file:
 +
 +^ Constant ^ Value ^Description ^ 
 +| TR_FIREDBG | 0 //or// 1((Only activate one or no debug tool)) | Activate the ProjectTRACKER debugging mode. Debug output generated (if enabled) via the [[http://​www.firephp.org|FirePHP]] tool. The FirePHP tool is not included in the ProjectTRACKER ZIP-file deliverables. |
 +| TR_LENSDBG | 0 //or// 1((Only activate one or no debug tool)) | Activate the ProjectTRACKER debugging mode. Debug output generated (if enabled) via the [[http://​phplens.com/​lens/​free_code/​lensdebug.php|Lensdebug]] tool. |
 +| TR_DATE_FORMAT | //'​d.m.y'//​ | Date format used for all date outputs, can be used to localize the ProjectTRACKER e.g. to US date format //'​m-d-y'//​. |
 +| TR_DATE_EXCEL | //'​d.m.y'//​ | Date format used for CSV imports. |
 +| TR_WEEK_STR | //'​CW'//​ | Prefix used for all week number outputs / choices, e.g. week 12 would be shown as //CW12//. |
 +| TR_MAPTASK_GROUP | //'​M'//​ | Tasks starting with this group name are mapping tasks. |
 +| TR_TEMPLATE_GROUP | //'​T'//​ | Tasks starting with this group name are template tasks. |
 +| TR_TEMPLATE_INDEX_LEN | //3// | Template group name index lenght, e.g. //3// would allow 100 templates from //T00// to //T99//. |
 +| TR_SCRUM_GROUP | //'​S'//​ | Tasks starting with this group name are scrum tasks. |
 +| TR_SCRUM_CHOICE_STR | //'​S'//​ | Prefix used for all scrum cycle outputs / choices, e.g. cycle 12 would be shown as //S12//. |
 +| TR_STATUS1_CAPTION | //'​Grooming Status'//​ | Grooming Status label. |
 +| TR_STATUS1_CHOICES | //'​1;​L;​2;​H'//​ | Grooming status values in CC notation. |
 +| TR_STATUS2_CAPTION | //'​Task Status'//​ | Task status label |
 +| TR_STATUS2_CHOICES | //'​1;​Open;​2;​Ready;​3;​WIP;​4;​Completed'//​ | Task status values in CC notation - must be sorted in ascending order. |
 +| TR_STATUS2_FIRST | //1// | Task Status 2 index first choice. |
 +| TR_STATUS2_LAST | //4// | Task Status 2 index last choice. |
 +| TR_STATUS2_EFFORTNZERO | //3// | Status 2 will be set to this index when first efforts are recorded - set to %%''​%% to disable. |
 +| TR_STATUS2_REMNZERO | //3// | Status 2 will be reset to this index when rem. efforts are set to non-zero - set to %%''​%% to disable. |
 +| TR_STATUS2_REMZERO | //4// | Status 2 will be set to this index when rem. efforts are set to zero - set to %%''​%% to disable. |
 +| TR_STATUS2_SPDONE | //4// | SP done checkbox is visible when Status 2 is greater / equal this value. |
 +| TR_REMEFF_MANDATORY | TRUE //or// FALSE | When TRUE **Rem.** = **Plan** effort as long as no remaining effort value is defined, otherwise **Rem.** = **Plan** - **Done** effort. |
 +| TR_REMZERO_STATUS2 | //4// | **Rem.** effort is always set to 0 when Status 2 is greater / equal this value - set to %%''​%% to disable. |
 +| TR_STATUS2_SPDONE | //4// | SP done checkbox is visible when Status 2 is greater / equal this value. |
 +| TR_TASK_PLAN_VALIDITY | //2// | 0: **Plan** effort always valid, 1: **Plan** effort valid from task start date on, 2: **Plan** effort valid from task creation date on. |
 +| TR_TASK_TRENDING | TRUE //or// FALSE | When set to TRUE [[tracker:​pm#​task_history_trending|Task Trending]] is activated. |
 +| TR_SITE_SECURITY | TRUE //or// FALSE | Site security level - when set to TRUE, users can see only programs / tasks of their own location per default. |
 +| TR_TASK_ACTIVITY | TRUE //or// FALSE | When set to TRUE the ProjectTRACKER allows to further refine [[tracker:​tasks|Tasks]] with [[programs#​program_activities|Activities]]. |
 +
 +and the deployment related constants at the end of the file:
 +
 +^ Constant ^ Value ^Description ^ 
 +| TR_LOGO | //'​images/​time.png'//​ | Relative path and name of the image shown as ProjectTRACKER logo on the top left corner. You can add your company logo here. The file should be in a format recognizable by web browsers, e.g. PNG. The size of the image should be 112 x 64 (width x hight). |
 +| TR_FILE_DIR | //'/​tracker-data/'//​ | Relative path to Tracker configuration files location. The location must be read protected from outside web access, but your web server should have write access to this location. |
 +| TR_TEMP_DIR | //'/​temp/'//​ | Relative path to the ProjectTRACKER temporary file location. The location must be read protected from outside web access, but your web server should have write access to this location. |
 +| TR_TEMP2_DIR | //'/​temp2/'//​ | Relative path to ProjectTRACKER temporary file location. Your web server should have write access to this location. (e.g. the Gantt images are stored here). |
 +| TR_WIKI_LINK | //'​../​wiki/​doku.php'//​((Only activate Wiki or Help file or none)) | Relative or absolute HTML link and name for the ProjectTRACKER [[http://​www.dokuwiki.org|DokuWiki]] entry page. Use %%''​%% in case no Wiki is installed. DokuWiki is not included in the ProjectTRACKER ZIP-file deliverables. |
 +| TR_HELP_LINK | //'​ProjectTrackerManual.pdf'//​((Only activate Wiki or Help file or none)) | Relative path and name of the ProjectTRACKER help file. Use %%''​%% in case no help file is available. |
 +| TR_WIKI_PORTAL_DIR |//'​D:/​dir/​data/​pages'//​ | Absolute location of DokuWiki data directory. |
 +| TR_WIKI_PORTAL_AUTH | //'​D:/​dir/​conf/​users.auth.php'//​ | Absolute location of DokuWiki user authentification file. |
 +| TR_DBFKFLAG | TRUE //or// FALSE | Flag if database can handle foreign keys / referential integrity properly (e.g. MySQL InnoDB). In case the database can handle foreign keys set the constant to TRUE. |
 +| TR_DBLOCKFLAG | TRUE //or// FALSE | Flag if MySQL database allows table locks (MSAccess will be excluded automatically). |
 +
 +Values in //italic font// are examples.
 +
 +//​**Note:​**//​ Do not change any other PHP constants or code parts of the ProjectTRACKER if your are not a ProjectTRACKER "​expert"​ - otherwise this might lead to erroneous behavior of the ProjectTRACKER and in the worst case you might loose important data.
 +
 +==== ProjectTRACKER Quick Demo Setup ====
 +
 +//​**Note:​**//​ To install ProjectTRACKER for your needs follow the instructions in the next chapter!
 +
 +After executing the steps described in the above chapters start the ProjectTRACKER via the the web link, e.g. [[http://​localhost/​tracker/​Menu.php]],​ defined by your web server configuration. Execute the following steps to setup the ProjectTRACKER demo:
 +
 +  - You should see the login page.
 +  - Login with **User** //admin// and **Password** //admin//.
 +  - You should see the [[tracker:​|Main Menu]].
 +  - Select the [[tracker:​maint|Maint]] page.
 +  - Select one demo import-file from the ProjectTRACKER ZIP-file directory MySQL:
 +    * **tracker-demo-2009-english.xml** (for English demo - version 1.X)
 +    * **tracker-demo-2009-german.xml** (for German demo - version 1.X)
 +    * **tracker-demo-2012-english.xml** (for English demo - version 2.X)
 +  - Click the **Import** button.
 +  - You should see something like:
 +    * //Import table "​Location"//​
 +    * //Import table "​Engineer"//​
 +    * //...//
 +    * //Updated Engineer summary flags//
 +    * //Updated Task summary flags//
 +    * //Updated Progam summaries//
 +    * //Updated Year related tables//
 +
 +**Done! :-)** - You can play now with the ProjectTRACKER demo - don't forget to read the manual and have fun!
 +
 +//​**Note:​**//​ Be aware that you have set the **Default Year** to 2009 (old demos) or 2012 (Scrum demo) to see the demo project data!
 +
 +==== ProjectTRACKER Initial Setup for Production Use ====
 +
 +After executing the steps described in the above chapters you can start the ProjectTRACKER via the the web link, e.g. [[http://​my-intranet-webserver/​Menu.php]],​ defined by your web server configuration. Execute the following steps to setup the ProjectTRACKER to your needs:
 +
 +  - You should see the login page.
 +  - Login with **User** //admin// and **Password** //admin//.
 +  - You should see the [[tracker:​|Main Menu]].
 +  - Select the [[tracker:​maint|Maint]] page.
 +  - Click the **Import** button without selecting anything.
 +  - You should see:
 +    * //Updated Engineer summary flags//
 +    * //Updated Task summary flags//
 +    * //Updated Program summaries//
 +    * //Updated Year related tables//
 +  - Select the [[tracker:​profiles|Profiles]] page.
 +  - Add / change **Countries**,​ **Locations / Teams** and **Cost Groups** as needed.
 +  - Select the [[tracker:​setup|Setup]] page.
 +  - Add / delete **Tracking Years** and change **Task Effort Groups** / **Task Planning Groups** top level group letters as needed.
 +  - Select the [[tracker:​users|Users]] page.
 +  - Change the admin password. //** Use a secure password, only you as the ProjectTRACKER admin know!**//
 +  - Add new users as needed, set also the correct access rights and **Location**,​ **Cost Groups**. Assign also the correct **Team Visibility** to the users.
 +  - //​**Don'​t forget to activate the newly defined users!**//
 +  - Select the [[tracker:​programs|Programs]] page.
 +  - Add new programs as needed, set also the correct **Program Visibility**. //**Do not delete the Operations program!**//​
 +  - //​**Dont'​t forget to make your programs active and visible to you.**//
 +  - Select the [[tracker:​tasks|Tasks]] page.
 +  - You should see three predefined tasks: **Absence**,​ **Operations** and **Training**. You can rename the tasks accordingly //**but should not delete the operations tasks!**//
 +  - Add new tasks as needed.
 +  - //​**Dont'​t forget to make your tasks active.**//
 +  - Add [[tracker:​scrum|Scrum]] user stories or tasks as described for Tasks above.
 +
 +**Done! :-)** - You have configured the ProjectTRACKER for your needs - carefully read the manual, start to use the ProjectTRACKER and have fun!
 +
 +===== Upgrades =====
 +
 +Please follow the instructions in the Readme file provided with the ProjectTracker upgrade.
 +
 +===== ProjectTRACKER 3rd Party Components / Tools =====
 +
 +The following components and tools licensed from third parties have been included or are used with ProjectTRACKER:​
 +
 +^ Components / Tools ^ Description ^ Author / Company ^ License ^ Link ^
 +| CodeCharge Studio | 3rd generation development framework for web applications((Only the runtime and generated PHP / Java Script / HTML code of CodeCharge are part of the ProjectTRACKER delivery package. These, according to YesSoftware licensing, can be freely distributed.)) | YesSoftware |  YesSoftware ​ | [[http://​www.yessoftware.com]] |
 +| FCK Editor | Java Script based WYSIWYG HTML text editor((FCK cersion 2.6.4.1 Build 23187 is included in the ProjectTRACKER package))((The FCK source code can be obtained from [[http://​ckeditor.com]])) | Frederico Caldeira Knabben |  GPL, LGPL, MPL  | [[http://​ckeditor.com]] |
 +| gantt.class.php | PHP class for generating Gantt pictures | Alexandre Miguel de Andrade Souza |  LGPL  | http://​www.phpclasses.org/​package/​2737-PHP-Generate-project-progress-Gantt-charts.html |
 +| lensdebug.inc.php | PHP class for debug output in separate window | Alter Gr, John Lim |  Free  | [[http://​phplens.com/​lens/​free_code/​lensdebug.php]] |
 +| PHPlot | PHPlot is a graph library for dynamic scientific, business, and stock-market charts | see [[http://​sourceforge.net/​projects/​phplot]] |  LGPL  | [[http://​www.phplot.com]] |
 +| Tigra Slider Control | Java Script helper functions for sliders | Softcomplex |  Free  | [[http://​www.softcomplex.com/​products/​tigra_slider_control]] |
 +| wz_tooltip.js | Java Script helper functions for tool tips | Walter Zorn |  LGPL  | [[http://​www.walterzorn.com]] |
 +
 +//​**Note:​**//​ Customer'​s use of the Third Party Software is subject to the terms and conditions imposed by the licensors of such Third Party Software, which may differ from the GPL Software License.