diff options
| author | Ujjvala Collins (OpenERP) <uco@tinyerp.com> | 2011-01-12 11:36:05 +0530 |
|---|---|---|
| committer | Ujjvala Collins (OpenERP) <uco@tinyerp.com> | 2011-01-12 11:36:05 +0530 |
| commit | f0699dff4365f0d2d791f88fee52927f33b477da (patch) | |
| tree | 24271e5be14a94f03553b31103116af3bd572347 /addons/project_long_term | |
| parent | c017828b3faa734fbb2e3d5c3caa6b11e8b32e0a (diff) | |
| parent | 9f4844bd3b5a4982d138ed603adf82dea47c46f0 (diff) | |
[MERGE]
bzr revid: uco@tinyerp.com-20110112060605-kmw70a3eceluegiy
Diffstat (limited to 'addons/project_long_term')
| -rw-r--r-- | addons/project_long_term/__openerp__.py | 12 | ||||
| -rw-r--r-- | addons/project_long_term/i18n/de.po | 45 | ||||
| -rw-r--r-- | addons/project_long_term/i18n/es.po | 13 | ||||
| -rw-r--r-- | addons/project_long_term/i18n/fr.po | 33 | ||||
| -rw-r--r-- | addons/project_long_term/i18n/hu.po | 628 | ||||
| -rw-r--r-- | addons/project_long_term/i18n/it.po | 7 | ||||
| -rw-r--r-- | addons/project_long_term/i18n/lv.po | 13 | ||||
| -rw-r--r-- | addons/project_long_term/i18n/pl.po | 15 | ||||
| -rw-r--r-- | addons/project_long_term/i18n/project_long_term.pot | 54 | ||||
| -rw-r--r-- | addons/project_long_term/i18n/pt.po | 23 | ||||
| -rw-r--r-- | addons/project_long_term/project_long_term.py | 27 | ||||
| -rw-r--r-- | addons/project_long_term/test/project_schedule_consecutive_day.yml | 62 | ||||
| -rw-r--r-- | addons/project_long_term/test/project_schedule_without_wroking_hour.yml | 30 | ||||
| -rw-r--r-- | addons/project_long_term/test/schedule_phase_tasks.yml | 23 | ||||
| -rw-r--r-- | addons/project_long_term/test/test_schedule_phases_case1.yml | 35 | ||||
| -rw-r--r-- | addons/project_long_term/test/test_schedule_tasks_case1.yml | 2 |
16 files changed, 802 insertions, 220 deletions
diff --git a/addons/project_long_term/__openerp__.py b/addons/project_long_term/__openerp__.py index 25d06e3efe1..eaaf365599c 100644 --- a/addons/project_long_term/__openerp__.py +++ b/addons/project_long_term/__openerp__.py @@ -40,15 +40,15 @@ Features. "init_xml": [], "demo_xml": ["project_long_term_demo.xml"], "test": [ - 'test/project_schedule_consecutive_day.yml', - 'test/project_schedule_without_wroking_hour.yml', - 'test/schedule_project_phases.yml', - 'test/phase_constraint.yml', - 'test/test_schedule_phases_case2.yml', 'test/test_schedule_phases_case1.yml', + 'test/schedule_project_phases.yml', 'test/schedule_project_tasks.yml', + 'test/test_schedule_phases_case2.yml', + 'test/project_schedule_consecutive_day.yml', + 'test/project_schedule_without_wroking_hour.yml', 'test/schedule_phase_tasks.yml', - 'test/test_schedule_tasks_case1.yml' + 'test/phase_constraint.yml', + 'test/test_schedule_tasks_case1.yml', ], "update_xml": [ "security/ir.model.access.csv", diff --git a/addons/project_long_term/i18n/de.po b/addons/project_long_term/i18n/de.po index 0d489ba8fbd..2863f5d6d00 100644 --- a/addons/project_long_term/i18n/de.po +++ b/addons/project_long_term/i18n/de.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-03 16:58+0000\n" -"PO-Revision-Date: 2010-12-31 14:22+0000\n" +"PO-Revision-Date: 2011-01-10 16:42+0000\n" "Last-Translator: Thorsten Vocks (OpenBig.org) <thorsten.vocks@big-" "consulting.net>\n" "Language-Team: German <de@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-01-06 05:36+0000\n" +"X-Launchpad-Export-Date: 2011-01-11 05:02+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: project_long_term @@ -62,7 +62,7 @@ msgstr "Ressourcenaufteilung" #. module: project_long_term #: view:project.phase:0 msgid "Displaying settings" -msgstr "" +msgstr "Anzeigekonfiguration" #. module: project_long_term #: field:project.compute.phases,target_project:0 @@ -163,12 +163,16 @@ msgid "" "Resources should be allocated to your phases and Members should be assigned " "to your Project!" msgstr "" +"Ressourcen sollten auf Ihre Projektphasen verteilt werden, " +"Projektmitarbeiter sollten auf Ihre Projekte verteilt werden." #. module: project_long_term #: help:project.phase,date_end:0 msgid "" " It's computed by the scheduler according to the start date and the duration." msgstr "" +" Wird berechnet durch einen Planungsassistenten in Abhängigkeit von Beginn " +"und Dauer." #. module: project_long_term #: model:ir.model,name:project_long_term.model_project_project @@ -348,7 +352,7 @@ msgstr "OK" #. module: project_long_term #: view:project.phase:0 msgid "Schedule and Display info" -msgstr "" +msgstr "Info Planungsassistent und Anzeige" #. module: project_long_term #: view:project.phase:0 @@ -363,7 +367,7 @@ msgstr "Start Datum der Phase muss vor dem Ende Datum sein." #. module: project_long_term #: model:ir.model,name:project_long_term.model_project_schedule_tasks msgid "project.schedule.tasks" -msgstr "" +msgstr "project.schedule.tasks" #. module: project_long_term #: model:ir.actions.act_window,help:project_long_term.act_project_phase @@ -375,6 +379,14 @@ msgid "" "human resources, convert your phases into a series of tasks when you start " "working on the project." msgstr "" +"Ein Projekt kann in verschiedene Phasen aufgeteilt werden. Für jede Phase " +"können Sie zur automatischen Terminierung die Ressourcenaufteilung " +"definieren, Aufgaben beschreiben und die Phase sowohl mit vorhergehenden als " +"auch nachfolgenden Phasen verknüpfen oder Bedingungen für feste Termine " +"hinterlegen. Benutzen Sie das Modul Planung für Langzeitprojekte zur " +"langfristigen Planung und Aufteilung verfügbarer Personalressourcen. " +"Konvertieren Sie die Phasen in konkrete Aufgabenlisten, wenn Sie die " +"Bearbeitung der Phasen eröffnen." #. module: project_long_term #: field:project.phase,date_start:0 @@ -417,10 +429,11 @@ msgstr "Benutzer" #. module: project_long_term #: help:project.phase,date_start:0 msgid "" -"It's computed according to the phases order : the start date of the 1st " -"phase is set by you while the other start dates depend on the end date of " -"their previous phases" -msgstr "Beginn der Phase" +"It's computed by the scheduler according the project date or the end date of " +"the previous phase." +msgstr "" +"Wird berechnet durch einen Planungsassistenten in Abhängigkeit vom " +"Projektdatum oder dem Ende Datum der vorherigen Projektphase." #. module: project_long_term #: view:project.phase:0 @@ -547,12 +560,6 @@ msgid "Phase" msgstr "Phase" #. module: project_long_term -#: help:project.phase,date_start:0 -msgid "" -"It's computed by the scheduler according the project date or the end date of the previous phase." -msgstr "Beginn der Phase" - -#. module: project_long_term #: help:project.phase,state:0 msgid "" "If the phase is created the state 'Draft'.\n" @@ -587,7 +594,7 @@ msgstr "Bezeichnung" #. module: project_long_term #: view:project.phase:0 msgid "Tasks Details" -msgstr "" +msgstr "Aufgabendetails" #. module: project_long_term #: model:ir.ui.menu,name:project_long_term.menu_view_resource_calendar @@ -754,3 +761,9 @@ msgstr "Dauer" #~ msgid "" #~ "It's computed by the scheduler according to the start date and the duration." #~ msgstr "Ende Datum d. Phase" + +#~ msgid "" +#~ "It's computed according to the phases order : the start date of the 1st " +#~ "phase is set by you while the other start dates depend on the end date of " +#~ "their previous phases" +#~ msgstr "Beginn der Phase" diff --git a/addons/project_long_term/i18n/es.po b/addons/project_long_term/i18n/es.po index f28ffa8a67e..02864f319b0 100644 --- a/addons/project_long_term/i18n/es.po +++ b/addons/project_long_term/i18n/es.po @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-01-06 05:36+0000\n" +"X-Launchpad-Export-Date: 2011-01-11 05:02+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: project_long_term @@ -394,9 +394,8 @@ msgstr "Usuario" #. module: project_long_term #: help:project.phase,date_start:0 msgid "" -"It's computed according to the phases order : the start date of the 1st " -"phase is set by you while the other start dates depend on the end date of " -"their previous phases" +"It's computed by the scheduler according the project date or the end date of " +"the previous phase." msgstr "" #. module: project_long_term @@ -523,12 +522,6 @@ msgid "Phase" msgstr "Fase" #. module: project_long_term -#: help:project.phase,date_start:0 -msgid "" -"It's computed by the scheduler according the project date or the end date of the previous phase." -msgstr "" - -#. module: project_long_term #: help:project.phase,state:0 msgid "" "If the phase is created the state 'Draft'.\n" diff --git a/addons/project_long_term/i18n/fr.po b/addons/project_long_term/i18n/fr.po index 57fcd6d1e47..1df309a8c2a 100644 --- a/addons/project_long_term/i18n/fr.po +++ b/addons/project_long_term/i18n/fr.po @@ -7,13 +7,13 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-03 16:58+0000\n" -"PO-Revision-Date: 2011-01-09 14:14+0000\n" -"Last-Translator: lolivier <olivier.lenoir@free.fr>\n" +"PO-Revision-Date: 2011-01-10 11:00+0000\n" +"Last-Translator: Quentin THEURET <quentin@theuret.net>\n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-01-10 05:19+0000\n" +"X-Launchpad-Export-Date: 2011-01-11 05:02+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: project_long_term @@ -354,7 +354,7 @@ msgstr "_Ok" #. module: project_long_term #: view:project.phase:0 msgid "Schedule and Display info" -msgstr "" +msgstr "Ordonnancer et afficher les informations" #. module: project_long_term #: view:project.phase:0 @@ -383,6 +383,12 @@ msgid "" "human resources, convert your phases into a series of tasks when you start " "working on the project." msgstr "" +"Un projet peut être divisé en différentes phases. Pour chaque phase, on peut " +"allouer de ressources, décrire différentes tâches et chaîner la phase aux " +"précédentes et suivantes, ajouter des contraintes de date pour " +"l'ordonnancement automatique. Utiliser la planification à long terme pour " +"planifier la disponibilité des ressources humaines, convertir les phases en " +"une série de tâches quand on commence à travailler sur le projet." #. module: project_long_term #: field:project.phase,date_start:0 @@ -425,10 +431,9 @@ msgstr "Utilisateur" #. module: project_long_term #: help:project.phase,date_start:0 msgid "" -"It's computed according to the phases order : the start date of the 1st " -"phase is set by you while the other start dates depend on the end date of " -"their previous phases" -msgstr "Date de début de la phase" +"It's computed by the scheduler according the project date or the end date of " +"the previous phase." +msgstr "" #. module: project_long_term #: view:project.phase:0 @@ -556,12 +561,6 @@ msgid "Phase" msgstr "Phase" #. module: project_long_term -#: help:project.phase,date_start:0 -msgid "" -"It's computed by the scheduler according the project date or the end date of the previous phase." -msgstr "Date de début de la phase" - -#. module: project_long_term #: help:project.phase,state:0 msgid "" "If the phase is created the state 'Draft'.\n" @@ -695,3 +694,9 @@ msgstr "Durée" #~ msgid "" #~ "It's computed by the scheduler according to the start date and the duration." #~ msgstr "Date de fin de la phase" + +#~ msgid "" +#~ "It's computed according to the phases order : the start date of the 1st " +#~ "phase is set by you while the other start dates depend on the end date of " +#~ "their previous phases" +#~ msgstr "Date de début de la phase" diff --git a/addons/project_long_term/i18n/hu.po b/addons/project_long_term/i18n/hu.po new file mode 100644 index 00000000000..1c95b32c219 --- /dev/null +++ b/addons/project_long_term/i18n/hu.po @@ -0,0 +1,628 @@ +# Hungarian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-03 16:58+0000\n" +"PO-Revision-Date: 2011-01-10 11:05+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Hungarian <hu@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-01-11 05:02+0000\n" +"X-Generator: Launchpad (build Unknown)\n" + +#. module: project_long_term +#: model:ir.module.module,shortdesc:project_long_term.module_meta_information +msgid "Long Term Project Management" +msgstr "" + +#. module: project_long_term +#: view:project.compute.phases:0 +msgid "Compute Scheduling of Phases" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +#: field:project.phase,next_phase_ids:0 +msgid "Next Phases" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Project's Tasks" +msgstr "" + +#. module: project_long_term +#: model:ir.actions.act_window,name:project_long_term.act_project_phases +msgid "Phases" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +#: view:project.resource.allocation:0 +msgid "Group By..." +msgstr "" + +#. module: project_long_term +#: constraint:project.project:0 +msgid "Error! project start-date must be lower then project end-date." +msgstr "" + +#. module: project_long_term +#: view:project.resource.allocation:0 +msgid "Resources Allocation" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Displaying settings" +msgstr "" + +#. module: project_long_term +#: field:project.compute.phases,target_project:0 +msgid "Schedule" +msgstr "" + +#. module: project_long_term +#: model:ir.module.module,description:project_long_term.module_meta_information +msgid "" +"\n" +"\n" +" Long Term Project management module that tracks planning, " +"scheduling, resources allocation.\n" +" Mainly used with Big project management.\n" +" - Project Phases will be maintained by Manager of the project\n" +" - Compute Phase Scheduling: Compute start date and end date of " +"the phases which are in draft,open and pending state of the project given.\n" +" If no project given then all the " +"draft,open and pending state phases will be taken\n" +" - Compute Task Scheduling: This works same as the scheduler " +"button on project.phase. It takes the project as argument and computes all " +"the open,draft and pending tasks\n" +" - Schedule Tasks: All the tasks which are in draft,pending and " +"open state are scheduled with taking the phase's start date\n" +"\n" +" " +msgstr "" + +#. module: project_long_term +#: constraint:project.task:0 +msgid "Error ! You cannot create recursive tasks." +msgstr "" + +#. module: project_long_term +#: model:ir.actions.act_window,name:project_long_term.act_resouce_allocation +#: model:ir.ui.menu,name:project_long_term.menu_resouce_allocation +msgid "Resource Allocations" +msgstr "" + +#. module: project_long_term +#: constraint:project.project:0 +msgid "Error! You cannot assign escalation to the same project!" +msgstr "" + +#. module: project_long_term +#: code:addons/project_long_term/project_long_term.py:130 +#, python-format +msgid "Day" +msgstr "" + +#. module: project_long_term +#: model:ir.model,name:project_long_term.model_project_task +msgid "Task" +msgstr "" + +#. module: project_long_term +#: selection:project.compute.phases,target_project:0 +msgid "Compute a Single Project" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +#: field:project.phase,previous_phase_ids:0 +msgid "Previous Phases" +msgstr "" + +#. module: project_long_term +#: help:project.phase,product_uom:0 +msgid "UoM (Unit of Measure) is the unit of measurement for Duration" +msgstr "" + +#. module: project_long_term +#: code:addons/project_long_term/project_long_term.py:489 +#, python-format +msgid "" +"Resources should be allocated to your phases and Members should be assigned " +"to your Project!" +msgstr "" + +#. module: project_long_term +#: help:project.phase,date_end:0 +msgid "" +" It's computed by the scheduler according to the start date and the duration." +msgstr "" + +#. module: project_long_term +#: model:ir.model,name:project_long_term.model_project_project +#: field:project.compute.phases,project_id:0 +#: field:project.compute.tasks,project_id:0 +#: view:project.phase:0 +#: field:project.phase,project_id:0 +#: view:project.resource.allocation:0 +#: field:project.resource.allocation,project_id:0 +#: view:project.task:0 +msgid "Project" +msgstr "" + +#. module: project_long_term +#: code:addons/project_long_term/wizard/project_compute_phases.py:50 +#, python-format +msgid "Error!" +msgstr "" + +#. module: project_long_term +#: selection:project.phase,state:0 +msgid "Cancelled" +msgstr "" + +#. module: project_long_term +#: code:addons/project_long_term/project_long_term.py:426 +#, python-format +msgid "No tasks to compute for Project '%s'." +msgstr "" + +#. module: project_long_term +#: help:project.resource.allocation,date_end:0 +msgid "Ending Date" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Planning" +msgstr "" + +#. module: project_long_term +#: field:project.phase,constraint_date_end:0 +msgid "Deadline" +msgstr "" + +#. module: project_long_term +#: view:project.compute.phases:0 +#: view:project.compute.tasks:0 +msgid "_Cancel" +msgstr "" + +#. module: project_long_term +#: model:ir.actions.act_window,name:project_long_term.action_project_compute_phases +#: model:ir.ui.menu,name:project_long_term.menu_compute_phase +msgid "Compute Phase Scheduling" +msgstr "" + +#. module: project_long_term +#: code:addons/project_long_term/project_long_term.py:192 +#, python-format +msgid " (copy)" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +#: view:project.resource.allocation:0 +#: field:project.resource.allocation,useability:0 +msgid "Availability" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +#: field:project.phase,state:0 +msgid "State" +msgstr "" + +#. module: project_long_term +#: view:project.compute.phases:0 +#: view:project.compute.tasks:0 +msgid "C_ompute" +msgstr "" + +#. module: project_long_term +#: view:project.compute.phases:0 +msgid "Compute Scheduling of phases for all or specified project" +msgstr "" + +#. module: project_long_term +#: field:project.phase,product_uom:0 +msgid "Duration UoM" +msgstr "" + +#. module: project_long_term +#: model:ir.actions.act_window,name:project_long_term.action_project_compute_tasks +#: model:ir.ui.menu,name:project_long_term.menu_compute_tasks +msgid "Compute Task Scheduling" +msgstr "" + +#. module: project_long_term +#: field:project.phase,constraint_date_start:0 +msgid "Minimum Start Date" +msgstr "" + +#. module: project_long_term +#: model:ir.model,name:project_long_term.model_project_resource_allocation +#: view:project.phase:0 +#: view:project.resource.allocation:0 +msgid "Project Resource Allocation" +msgstr "" + +#. module: project_long_term +#: view:project.compute.tasks:0 +msgid "Compute Scheduling of Task" +msgstr "" + +#. module: project_long_term +#: model:ir.actions.act_window,name:project_long_term.act_project_resource +#: model:ir.ui.menu,name:project_long_term.menu_pm_resources_project1 +#: model:ir.ui.menu,name:project_long_term.menu_view_resource +#: view:project.resource.allocation:0 +msgid "Resources" +msgstr "" + +#. module: project_long_term +#: model:ir.actions.act_window,help:project_long_term.action_project_compute_phases +msgid "" +"To schedule phases of all or a specified project. It then open a gantt " +"view.\n" +"\t " +msgstr "" + +#. module: project_long_term +#: help:project.resource.allocation,date_start:0 +msgid "Starting Date" +msgstr "" + +#. module: project_long_term +#: model:ir.actions.act_window,name:project_long_term.project_phase_task_list +msgid "Related Tasks" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Dates" +msgstr "" + +#. module: project_long_term +#: help:project.resource.allocation,useability:0 +msgid "" +"Availability of this resource for this project phase in percentage (=50%)" +msgstr "" + +#. module: project_long_term +#: help:project.phase,constraint_date_start:0 +msgid "force the phase to start after this date" +msgstr "" + +#. module: project_long_term +#: field:project.phase,task_ids:0 +msgid "Project Tasks" +msgstr "" + +#. module: project_long_term +#: field:project.phase,resource_ids:0 +msgid "Project Resources" +msgstr "" + +#. module: project_long_term +#: view:project.schedule.tasks:0 +msgid "_Ok" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Schedule and Display info" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Month" +msgstr "" + +#. module: project_long_term +#: constraint:project.phase:0 +msgid "Phase start-date must be lower than phase end-date." +msgstr "" + +#. module: project_long_term +#: model:ir.model,name:project_long_term.model_project_schedule_tasks +msgid "project.schedule.tasks" +msgstr "" + +#. module: project_long_term +#: model:ir.actions.act_window,help:project_long_term.act_project_phase +msgid "" +"A project can be split into the different phases. For each phase, you can " +"define your resources allocation, describe different tasks and link your " +"phase to previous and next phases, add date constraints for the automated " +"scheduling. Use the long term planning in order to planify your available " +"human resources, convert your phases into a series of tasks when you start " +"working on the project." +msgstr "" + +#. module: project_long_term +#: field:project.phase,date_start:0 +#: field:project.resource.allocation,date_start:0 +msgid "Start Date" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Resource Allocation" +msgstr "" + +#. module: project_long_term +#: help:project.phase,constraint_date_end:0 +msgid "force the phase to finish before this date" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +#: selection:project.phase,state:0 +msgid "Draft" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +#: selection:project.phase,state:0 +msgid "Pending" +msgstr "" + +#. module: project_long_term +#: field:project.resource.allocation,name:0 +msgid "unknown" +msgstr "" + +#. module: project_long_term +#: field:project.resource.allocation,user_id:0 +msgid "User" +msgstr "" + +#. module: project_long_term +#: help:project.phase,date_start:0 +msgid "" +"It's computed by the scheduler according the project date or the end date of " +"the previous phase." +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Task Detail" +msgstr "" + +#. module: project_long_term +#: help:project.project,resource_calendar_id:0 +msgid "Timetable working hours to adjust the gantt diagram report" +msgstr "" + +#. module: project_long_term +#: model:ir.model,name:project_long_term.model_project_compute_tasks +msgid "Project Compute Tasks" +msgstr "" + +#. module: project_long_term +#: code:addons/project_long_term/project_long_term.py:244 +#, python-format +msgid "No responsible person assigned !" +msgstr "" + +#. module: project_long_term +#: code:addons/project_long_term/project_long_term.py:489 +#, python-format +msgid "Error" +msgstr "" + +#. module: project_long_term +#: code:addons/project_long_term/project_long_term.py:244 +#, python-format +msgid "You must assign a responsible person for phase '%s' !" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Constraints" +msgstr "" + +#. module: project_long_term +#: help:project.phase,sequence:0 +msgid "Gives the sequence order when displaying a list of phases." +msgstr "" + +#. module: project_long_term +#: model:ir.actions.act_window,name:project_long_term.act_project_phase +#: model:ir.actions.act_window,name:project_long_term.act_project_phase_list +#: model:ir.ui.menu,name:project_long_term.menu_project_phase +#: model:ir.ui.menu,name:project_long_term.menu_project_phase_list +#: view:project.phase:0 +#: field:project.project,phase_ids:0 +msgid "Project Phases" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +#: selection:project.phase,state:0 +msgid "Done" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Cancel" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +#: selection:project.phase,state:0 +msgid "In Progress" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Remaining Hours" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +#: field:project.phase,responsible_id:0 +msgid "Responsible" +msgstr "" + +#. module: project_long_term +#: field:project.project,resource_calendar_id:0 +msgid "Working Time" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Current" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Start Phase" +msgstr "" + +#. module: project_long_term +#: code:addons/project_long_term/wizard/project_compute_phases.py:50 +#, python-format +msgid "Please Specify Project to be schedule" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +#: field:project.phase,total_hours:0 +msgid "Total Hours" +msgstr "" + +#. module: project_long_term +#: view:project.schedule.tasks:0 +msgid "Task Scheduling completed successfully." +msgstr "" + +#. module: project_long_term +#: view:project.compute.tasks:0 +msgid "Compute Scheduling of Task for specified project." +msgstr "" + +#. module: project_long_term +#: view:project.resource.allocation:0 +msgid "Phase" +msgstr "" + +#. module: project_long_term +#: help:project.phase,state:0 +msgid "" +"If the phase is created the state 'Draft'.\n" +" If the phase is started, the state becomes 'In Progress'.\n" +" If review is needed the phase is in 'Pending' state. " +" \n" +" If the phase is over, the states is set to 'Done'." +msgstr "" + +#. module: project_long_term +#: field:project.phase,date_end:0 +#: field:project.resource.allocation,date_end:0 +msgid "End Date" +msgstr "" + +#. module: project_long_term +#: view:project.resource.allocation:0 +#: field:project.resource.allocation,resource_id:0 +msgid "Resource" +msgstr "" + +#. module: project_long_term +#: field:project.phase,name:0 +msgid "Name" +msgstr "" + +#. module: project_long_term +#: view:project.phase:0 +msgid "Tasks Details" +msgstr "" + +#. module: project_long_term +#: model:ir.ui.menu,name:project_long_term.menu_view_resource_calendar +msgid "Working Period" +msgstr "" + +#. module: project_long_term +#: model:ir.model,name:project_long_term.model_resource_resource +msgid "Resource Detail" +msgstr "" + +#. module: project_long_term +#: model:ir.ui.menu,name:project_long_term.menu_phase_schedule +msgid "Scheduling" +msgstr "" + +#. module: project_long_term +#: code:addons/project_long_term/project_long_term.py:329 +#, python-format +msgid "No tasks to compute for Phase '%s'." +msgstr "" + +#. module: project_long_term +#: model:ir.model,name:project_long_term.model_project_phase +#: view:project.phase:0 +#: field:project.resource.allocation,phase_id:0 +#: view:project.task:0 +#: field:project.task,phase_id:0 +msgid "Project Phase" +msgstr "" + +#. module: project_long_term +#: model:ir.model,name:project_long_term.model_project_compute_phases +msgid "Project Compute Phases" +msgstr "" + +#. module: project_long_term +#: field:project.schedule.tasks,msg:0 +msgid "Message" +msgstr "" + +#. module: project_long_term +#: constraint:project.phase:0 +msgid "Loops in phases not allowed" +msgstr "" + +#. module: project_long_term +#: field:project.phase,sequence:0 +msgid "Sequence" +msgstr "" + +#. module: project_long_term +#: selection:project.compute.phases,target_project:0 +msgid "Compute All Projects" +msgstr "" + +#. module: project_long_term +#: model:ir.ui.menu,name:project_long_term.menu_view_resource_calendar_leaves +msgid "Resource Leaves" +msgstr "" + +#. module: project_long_term +#: model:ir.actions.act_window,name:project_long_term.action_project_schedule_tasks +#: view:project.phase:0 +#: view:project.schedule.tasks:0 +msgid "Schedule Tasks" +msgstr "" + +#. module: project_long_term +#: help:project.phase,duration:0 +msgid "By default in days" +msgstr "" + +#. module: project_long_term +#: field:project.phase,duration:0 +msgid "Duration" +msgstr "" diff --git a/addons/project_long_term/i18n/it.po b/addons/project_long_term/i18n/it.po index cf58264039b..95ac59d3674 100644 --- a/addons/project_long_term/i18n/it.po +++ b/addons/project_long_term/i18n/it.po @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-01-10 05:19+0000\n" +"X-Launchpad-Export-Date: 2011-01-11 05:02+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: project_long_term @@ -394,9 +394,8 @@ msgstr "Utente" #. module: project_long_term #: help:project.phase,date_start:0 msgid "" -"It's computed according to the phases order : the start date of the 1st " -"phase is set by you while the other start dates depend on the end date of " -"their previous phases" +"It's computed by the scheduler according the project date or the end date of " +"the previous phase." msgstr "" #. module: project_long_term diff --git a/addons/project_long_term/i18n/lv.po b/addons/project_long_term/i18n/lv.po index e01d607b031..a1610ef975f 100644 --- a/addons/project_long_term/i18n/lv.po +++ b/addons/project_long_term/i18n/lv.po @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-01-06 05:36+0000\n" +"X-Launchpad-Export-Date: 2011-01-11 05:02+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: project_long_term @@ -391,9 +391,8 @@ msgstr "Lietotājs" #. module: project_long_term #: help:project.phase,date_start:0 msgid "" -"It's computed according to the phases order : the start date of the 1st " -"phase is set by you while the other start dates depend on the end date of " -"their previous phases" +"It's computed by the scheduler according the project date or the end date of " +"the previous phase." msgstr "" #. module: project_long_term @@ -520,12 +519,6 @@ msgid "Phase" msgstr "Fāze" #. module: project_long_term -#: help:project.phase,date_start:0 -msgid "" -"It's computed by the scheduler according the project date or the end date of the previous phase." -msgstr "" - -#. module: project_long_term #: help:project.phase,state:0 msgid "" "If the phase is created the state 'Draft'.\n" diff --git a/addons/project_long_term/i18n/pl.po b/addons/project_long_term/i18n/pl.po index d2c668a3472..54668cb3efa 100644 --- a/addons/project_long_term/i18n/pl.po +++ b/addons/project_long_term/i18n/pl.po @@ -9,12 +9,12 @@ msgstr "" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-03 16:58+0000\n" "PO-Revision-Date: 2010-12-31 11:08+0000\n" -"Last-Translator: Sbh (Open ERP) <sbh@tinyerp.com>\n" +"Last-Translator: Sbh (OpenERP) <sbh@tinyerp.com>\n" "Language-Team: Polish <pl@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-01-06 05:36+0000\n" +"X-Launchpad-Export-Date: 2011-01-11 05:02+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: project_long_term @@ -391,9 +391,8 @@ msgstr "Użytkownik" #. module: project_long_term #: help:project.phase,date_start:0 msgid "" -"It's computed according to the phases order : the start date of the 1st " -"phase is set by you while the other start dates depend on the end date of " -"their previous phases" +"It's computed by the scheduler according the project date or the end date of " +"the previous phase." msgstr "" #. module: project_long_term @@ -521,12 +520,6 @@ msgid "Phase" msgstr "Faza" #. module: project_long_term -#: help:project.phase,date_start:0 -msgid "" -"It's computed by the scheduler according the project date or the end date of the previous phase." -msgstr "" - -#. module: project_long_term #: help:project.phase,state:0 msgid "" "If the phase is created the state 'Draft'.\n" diff --git a/addons/project_long_term/i18n/project_long_term.pot b/addons/project_long_term/i18n/project_long_term.pot index ec82f557b91..82442f17b6c 100644 --- a/addons/project_long_term/i18n/project_long_term.pot +++ b/addons/project_long_term/i18n/project_long_term.pot @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: OpenERP Server 6.0.0-rc2\n" "Report-Msgid-Bugs-To: support@openerp.com\n" -"POT-Creation-Date: 2011-01-03 16:58:18+0000\n" -"PO-Revision-Date: 2011-01-03 16:58:18+0000\n" +"POT-Creation-Date: 2011-01-11 11:15:54+0000\n" +"PO-Revision-Date: 2011-01-11 11:15:54+0000\n" "Last-Translator: <>\n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -99,7 +99,7 @@ msgid "Error! You cannot assign escalation to the same project!" msgstr "" #. module: project_long_term -#: code:addons/project_long_term/project_long_term.py:130 +#: code:addons/project_long_term/project_long_term.py:133 #, python-format msgid "Day" msgstr "" @@ -126,12 +126,6 @@ msgid "UoM (Unit of Measure) is the unit of measurement for Duration" msgstr "" #. module: project_long_term -#: code:addons/project_long_term/project_long_term.py:489 -#, python-format -msgid "Resources should be allocated to your phases and Members should be assigned to your Project!" -msgstr "" - -#. module: project_long_term #: help:project.phase,date_end:0 msgid " It's computed by the scheduler according to the start date and the duration." msgstr "" @@ -160,12 +154,6 @@ msgid "Cancelled" msgstr "" #. module: project_long_term -#: code:addons/project_long_term/project_long_term.py:426 -#, python-format -msgid "No tasks to compute for Project '%s'." -msgstr "" - -#. module: project_long_term #: help:project.resource.allocation,date_end:0 msgid "Ending Date" msgstr "" @@ -193,7 +181,7 @@ msgid "Compute Phase Scheduling" msgstr "" #. module: project_long_term -#: code:addons/project_long_term/project_long_term.py:192 +#: code:addons/project_long_term/project_long_term.py:195 #, python-format msgid " (copy)" msgstr "" @@ -310,6 +298,11 @@ msgid "Schedule and Display info" msgstr "" #. module: project_long_term +#: help:project.phase,date_start:0 +msgid "It's computed by the scheduler according the project date or the end date of the previous phase." +msgstr "" + +#. module: project_long_term #: view:project.phase:0 msgid "Month" msgstr "" @@ -368,11 +361,6 @@ msgid "User" msgstr "" #. module: project_long_term -#: help:project.phase,date_start:0 -msgid "It's computed by the scheduler according the project date or the end date of the previous phase." -msgstr "" - -#. module: project_long_term #: view:project.phase:0 msgid "Task Detail" msgstr "" @@ -388,24 +376,6 @@ msgid "Project Compute Tasks" msgstr "" #. module: project_long_term -#: code:addons/project_long_term/project_long_term.py:244 -#, python-format -msgid "No responsible person assigned !" -msgstr "" - -#. module: project_long_term -#: code:addons/project_long_term/project_long_term.py:489 -#, python-format -msgid "Error" -msgstr "" - -#. module: project_long_term -#: code:addons/project_long_term/project_long_term.py:244 -#, python-format -msgid "You must assign a responsible person for phase '%s' !" -msgstr "" - -#. module: project_long_term #: view:project.phase:0 msgid "Constraints" msgstr "" @@ -541,12 +511,6 @@ msgid "Scheduling" msgstr "" #. module: project_long_term -#: code:addons/project_long_term/project_long_term.py:329 -#, python-format -msgid "No tasks to compute for Phase '%s'." -msgstr "" - -#. module: project_long_term #: model:ir.model,name:project_long_term.model_project_phase #: view:project.phase:0 #: field:project.resource.allocation,phase_id:0 diff --git a/addons/project_long_term/i18n/pt.po b/addons/project_long_term/i18n/pt.po index 9c09ac02943..def25a6b05c 100644 --- a/addons/project_long_term/i18n/pt.po +++ b/addons/project_long_term/i18n/pt.po @@ -9,12 +9,12 @@ msgstr "" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-03 16:58+0000\n" "PO-Revision-Date: 2010-12-31 11:07+0000\n" -"Last-Translator: Sbh (Open ERP) <sbh@tinyerp.com>\n" +"Last-Translator: Sbh (OpenERP) <sbh@tinyerp.com>\n" "Language-Team: Portuguese <pt@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-01-06 05:36+0000\n" +"X-Launchpad-Export-Date: 2011-01-11 05:02+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: project_long_term @@ -391,10 +391,9 @@ msgstr "Utilizador" #. module: project_long_term #: help:project.phase,date_start:0 msgid "" -"It's computed according to the phases order : the start date of the 1st " -"phase is set by you while the other start dates depend on the end date of " -"their previous phases" -msgstr "Data de início da fase" +"It's computed by the scheduler according the project date or the end date of " +"the previous phase." +msgstr "" #. module: project_long_term #: view:project.phase:0 @@ -520,12 +519,6 @@ msgid "Phase" msgstr "Fase" #. module: project_long_term -#: help:project.phase,date_start:0 -msgid "" -"It's computed by the scheduler according the project date or the end date of the previous phase." -msgstr "Data de início da fase" - -#. module: project_long_term #: help:project.phase,state:0 msgid "" "If the phase is created the state 'Draft'.\n" @@ -640,3 +633,9 @@ msgstr "Duração" #~ msgid "" #~ "It's computed by the scheduler according to the start date and the duration." #~ msgstr "Data de fim da fase" + +#~ msgid "" +#~ "It's computed according to the phases order : the start date of the 1st " +#~ "phase is set by you while the other start dates depend on the end date of " +#~ "their previous phases" +#~ msgstr "Data de início da fase" diff --git a/addons/project_long_term/project_long_term.py b/addons/project_long_term/project_long_term.py index fc4151d855f..a795dd76dee 100644 --- a/addons/project_long_term/project_long_term.py +++ b/addons/project_long_term/project_long_term.py @@ -19,15 +19,10 @@ # ############################################################################## -from datetime import datetime, timedelta -from dateutil.relativedelta import relativedelta +from datetime import datetime from tools.translate import _ from osv import fields, osv from resource.faces import task as Task -import operator -from new import classobj -import types -import new class project_phase(osv.osv): _name = "project.phase" @@ -219,9 +214,7 @@ class project_phase(osv.osv): if context is None: context = {} phase_ids = [] - resource_pool = self.pool.get('resource.resource') data_pool = self.pool.get('ir.model.data') - resource_allocation_pool = self.pool.get('project.resource.allocation') uom_pool = self.pool.get('product.uom') task_pool = self.pool.get('project.task') data_model, day_uom_id = data_pool.get_object_reference(cr, uid, 'product', 'uom_day') @@ -304,9 +297,6 @@ class project_phase(osv.osv): ids = [ids] task_pool = self.pool.get('project.task') resource_pool = self.pool.get('resource.resource') - data_pool = self.pool.get('ir.model.data') - resource_allocation_pool = self.pool.get('project.resource.allocation') - for phase in self.browse(cr, uid, ids, context=context): project = phase.project_id calendar_id = project.resource_calendar_id and project.resource_calendar_id.id or False @@ -448,7 +438,6 @@ class project(osv.osv): resource_pool = self.pool.get('resource.resource') data_pool = self.pool.get('ir.model.data') resource_allocation_pool = self.pool.get('project.resource.allocation') - uom_pool = self.pool.get('product.uom') data_model, day_uom_id = data_pool.get_object_reference(cr, uid, 'product', 'uom_day') for project in self.browse(cr, uid, ids, context=context): @@ -517,8 +506,11 @@ def Project_%d(): # Allocating Memory for the required Project and Pahses and Resources exec(func_str) Project = eval('Project_%d' % project.id) - project = Task.BalancedProject(Project) - + project = None + try: + project = Task.BalancedProject(Project) + except : + raise osv.except_osv(_('Error !'),_('Invalid resource allocation, Phase Scheduling is not possible.\nPlease check project member resource.')) for phase_id in phase_ids: act_phase = phase_pool.browse(cr, uid, phase_id, context=context) resources = act_phase.resource_ids @@ -558,7 +550,7 @@ def Project_%d(): #TODO: DO Resource allocation and compute availability def compute_allocation(self, rc, uid, ids, start_date, end_date, context=None): if context == None: - contex = {} + context = {} allocation = {} return allocation @@ -573,8 +565,6 @@ def Project_%d(): task_pool = self.pool.get('project.task') resource_pool = self.pool.get('resource.resource') data_pool = self.pool.get('ir.model.data') - resource_allocation_pool = self.pool.get('project.resource.allocation') - uom_pool = self.pool.get('product.uom') data_model, day_uom_id = data_pool.get_object_reference(cr, uid, 'product', 'uom_day') for project in self.browse(cr, uid, ids, context=context): @@ -684,9 +674,6 @@ class project_task(osv.osv): def generate_task(self, cr, uid, task_id, parent=False, flag=False, context=None): if context is None: context = {} - phase_pool = self.pool.get('project.phase') - resource_pool = self.pool.get('resource.resource') - resource_allocation_pool = self.pool.get('project.resource.allocation') task = self.browse(cr, uid, task_id, context=context) duration = str(task.planned_hours )+ 'H' str_resource = False diff --git a/addons/project_long_term/test/project_schedule_consecutive_day.yml b/addons/project_long_term/test/project_schedule_consecutive_day.yml index 9f4e1231d11..10cfc7b6b9c 100644 --- a/addons/project_long_term/test/project_schedule_consecutive_day.yml +++ b/addons/project_long_term/test/project_schedule_consecutive_day.yml @@ -1,124 +1,124 @@ - Create a project 'Develop yaml Project Module'. - - !record {model: project.project, id: project_project_developyamlproject123}: + !record {model: project.project, id: project_project_developyamlproject_2}: name: "Develop Yaml Project Module" date_start: !eval time.strftime('%Y-%m-%d') - I have set Working Time from Monday to Friday from 9am to 17pm. - - !record {model: resource.calendar, id: resource_calendar_hoursweekstest2}: + !record {model: resource.calendar, id: resource_calendar_hoursweekstest_P2}: name: "from Monday to Friday, from 9am to 17pm" - I have set Day1 Working Time for Monday to Friday from 9am to 17pm working hour - - !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday1}: + !record {model: resource.calendar.attendance, id: resource_calendar_hoursweekstest_P2day1}: name: "Day1" hour_from : 09.00 hour_to : 17.00 dayofweek : "0" - calendar_id : resource_calendar_hoursweekstest2 + calendar_id : resource_calendar_hoursweekstest_P2 - I have set Day2 Working Time for Monday to Friday from 9am to 17pm working hour - - !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday2}: + !record {model: resource.calendar.attendance, id: rresource_calendar_hoursweekstest_P2day2}: name: "Day2" hour_from : 09.00 hour_to : 17.00 dayofweek : "1" - calendar_id : resource_calendar_hoursweekstest2 + calendar_id : resource_calendar_hoursweekstest_P2 - I have set Day3 Working Time for Monday to Friday from 9am to 17pm working hour - - !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday3}: + !record {model: resource.calendar.attendance, id: resource_calendar_hoursweekstest_P2day3}: name: "Day3" hour_from : 09.00 hour_to : 17.00 dayofweek : "2" - calendar_id : resource_calendar_hoursweekstest2 + calendar_id : resource_calendar_hoursweekstest_P2 - I have set Day4 Working Time for Monday to Friday from 9am to 17pm working hour - - !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday4}: + !record {model: resource.calendar.attendance, id: resource_calendar_hoursweekstest_P2day4}: name: "Day4" - hour_from : 09.00 - hour_to : 17.00 - dayofweek : "3" - calendar_id : resource_calendar_hoursweekstest2 + hour_from: 09.00 + hour_to: 17.00 + dayofweek: "3" + calendar_id: resource_calendar_hoursweekstest_P2 - I have set Day5 Working Time for Monday to Friday from 9am to 17pm working hour -- - !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday5}: +- + !record {model: resource.calendar.attendance, id: resource_calendar_hoursweekstest_P2day5}: name: "Day5" - hour_from : 09.00 - hour_to : 17.00 - dayofweek : "4" - calendar_id : resource_calendar_hoursweekstest2 + hour_from: 09.00 + hour_to: 17.00 + dayofweek: "4" + calendar_id: resource_calendar_hoursweekstest_P2 - Now Set working period to Project 'Develop yaml Project Module' - !python {model: project.project}: | - self.write(cr, uid, [ref("project_project_developyamlproject123")], {'resource_calendar_id': ref("resource_calendar_hoursweekstest2")}) + self.write(cr, uid, [ref("project_project_developyamlproject_2")], {'resource_calendar_id': ref("resource_calendar_hoursweekstest_P2")}) - Create 3 a project phase. First 'Analysis Flow for Yaml'Project Phase - - !record {model: project.phase, id: project_phase_analysisflowforyaml0}: + !record {model: project.phase, id: project_project_developyamlproject_2_Phase1}: date_start: !eval time.strftime('%Y-%m-%d') duration: 5.0 name: "Analysis Flow for Yaml" product_uom: product.uom_day - project_id: project_project_developyamlproject123 + project_id: project_project_developyamlproject_2 state: draft - Create project phase 'Develop yaml' - - !record {model: project.phase, id: project_phase_establishingprojectfeasibility0}: + !record {model: project.phase, id: project_project_developyamlproject_2_Phase2}: duration: 5.0 name: Develop Yaml product_uom: product.uom_day - project_id: project_project_developyamlproject123 + project_id: project_project_developyamlproject_2 previous_phase_ids: - - project_phase_analysisflowforyaml0 + - project_project_developyamlproject_2_Phase1 - Create project phase 'Test Yaml' - - !record {model: project.phase, id: project_phase_preparationofengineeringdesigns0}: + !record {model: project.phase, id: project_project_developyamlproject_2_Phase3}: duration: 5.0 name: Testing Yaml product_uom: product.uom_day - project_id: project_project_developyamlproject123 + project_id: project_project_developyamlproject_2 previous_phase_ids: - - project_phase_establishingprojectfeasibility0 + - project_project_developyamlproject_2_Phase2 - Compute Schedule of phases For One project - !record {model: project.compute.phases, id: project_compute_phases_0}: - project_id: project_project_developyamlproject123 + project_id: project_project_developyamlproject_2 target_project: one - Schedule project phases using Compute Phase Scheduling - !python {model: project.project}: | - self.schedule_phases(cr, uid, [ref("project_project_developyamlproject123")]) + self.schedule_phases(cr, uid, [ref("project_project_developyamlproject_2")]) - After scheduling, Check that phases scheduled, check that either of phase's start_date, end_date not null. - !python {model: project.project}: | - proj=self.browse(cr, uid, [ref("project_project_developyamlproject123")])[0] + proj=self.browse(cr, uid, [ref("project_project_developyamlproject_2")])[0] for phase in proj.phase_ids: if (not phase.responsible_id) or (not phase.date_start) or (not phase.date_end): raise AssertionError("Phases not scheduled") diff --git a/addons/project_long_term/test/project_schedule_without_wroking_hour.yml b/addons/project_long_term/test/project_schedule_without_wroking_hour.yml index 0c810227717..61a8539585a 100644 --- a/addons/project_long_term/test/project_schedule_without_wroking_hour.yml +++ b/addons/project_long_term/test/project_schedule_without_wroking_hour.yml @@ -1,7 +1,7 @@ - Create a project 'Develop yaml Implementation Module'. - - !record {model: project.project, id: project_project_developyamlproject0}: + !record {model: project.project, id: project_project_developyamlproject_2}: name: "Develop Yaml Project Module" date_start: !eval time.strftime('%Y-%m-%d') @@ -9,67 +9,67 @@ Create 4 Project phase. First Project Phase 'Analysis Flow for Yaml' - - !record {model: project.phase, id: project_phase_analysisflowforyaml0}: + !record {model: project.phase, id: project_project_developyamlproject_2_phase_1}: date_start: !eval time.strftime('%Y-%m-%d') duration: 6.0 product_uom: product.uom_day name: "Analysis Flow for Yaml" - project_id: project_project_developyamlproject0 + project_id: project_project_developyamlproject_2 responsible_id: project.res_users_analyst state: draft - Create project phase 'Develop yaml' - - !record {model: project.phase, id: project_phase_establishingprojectfeasibility0}: + !record {model: project.phase, id: project_project_developyamlproject_2_phase_2}: duration: 6.0 name: "Develop yaml" product_uom: product.uom_day - project_id: project_project_developyamlproject0 + project_id: project_project_developyamlproject_2 previous_phase_ids: - - project_phase_analysisflowforyaml0 + - project_project_developyamlproject_2_phase_1 state: draft - Create project phase 'Test Yaml' - - !record {model: project.phase, id: project_phase_preparationofengineeringdesigns0}: + !record {model: project.phase, id: project_project_developyamlproject_2_phase_3}: duration: 6.0 name: Testing Yaml product_uom: product.uom_day - project_id: project_project_developyamlproject0 + project_id: project_project_developyamlproject_2 previous_phase_ids: - - project_phase_establishingprojectfeasibility0 + - project_project_developyamlproject_2_phase_2 state: draft - Create project phase 'Implement Yaml' - - !record {model: project.phase, id: project_phase_implementingreadycase0}: + !record {model: project.phase, id: project_project_developyamlproject_2_phase_4}: duration: 6.0 name: Testing Yaml product_uom: product.uom_day - project_id: project_project_developyamlproject0 + project_id: project_project_developyamlproject_2 previous_phase_ids: - - project_phase_preparationofengineeringdesigns0 + - project_project_developyamlproject_2_phase_3 state: draft - Compute Schedule of phases For One project - !record {model: project.compute.phases, id: project_compute_phases_0}: - project_id: project_project_developyamlproject0 + project_id: project_project_developyamlproject_2 target_project: one - Schedule project phases using Compute Phase Scheduling - !python {model: project.project}: | - self.schedule_phases(cr, uid, [ref("project_project_developyamlproject0")]) + self.schedule_phases(cr, uid, [ref("project_project_developyamlproject_2")]) - After scheduling, Check that phases scheduled, check that either of phase's start_date, end_date not null. - !python {model: project.project}: | - proj=self.browse(cr, uid, [ref("project_project_developyamlproject0")])[0] + proj=self.browse(cr, uid, [ref("project_project_developyamlproject_2")])[0] for phase in proj.phase_ids: if (not phase.responsible_id) or (not phase.date_start) or (not phase.date_end): raise AssertionError("Phases not scheduled") diff --git a/addons/project_long_term/test/schedule_phase_tasks.yml b/addons/project_long_term/test/schedule_phase_tasks.yml index 1526d04f933..bab3e27244c 100644 --- a/addons/project_long_term/test/schedule_phase_tasks.yml +++ b/addons/project_long_term/test/schedule_phase_tasks.yml @@ -1,7 +1,7 @@ - Create project 'Develop an outlook-openerp synchronization plugin' - - !record {model: project.project, id: project_project_project0}: + !record {model: project.project, id: project_project_project4}: name: Develop an outlook-openerp synchronization plugin members: - project.res_users_project_manager @@ -19,12 +19,14 @@ duration: 200.0 name: Develop GUI in Outlook product_uom: product.uom_day - project_id: project_project_project0 + project_id: project_project_project4 state: draft resource_ids: - resource_id: project_long_term.resource_analyst - resource_id: project_long_term.resource_developer - resource_id: project_long_term.resource_designer + - resource_id: project_long_term.resource_tester + - resource_id: project_long_term.resource_project_manager - Create the phase task 'Develop GUI for Server Configuration' @@ -35,8 +37,8 @@ remaining_hours: 20.0 state: draft phase_id: project_phase_phase0 - project_id: project_project_project0 - user_id: project.res_users_developer + project_id: project_project_project4 + - Create the phase task 'Develop GUI for Modules Configuration' @@ -47,8 +49,8 @@ remaining_hours: 25.0 state: draft phase_id: project_phase_phase0 - project_id: project_project_project0 - user_id: project.res_users_developer + project_id: project_project_project4 + - Create the phase task 'Develop GUI for OpenERP Synchronisation' - @@ -58,8 +60,8 @@ remaining_hours: 30.0 state: draft phase_id: project_phase_phase0 - project_id: project_project_project0 - user_id: project.res_users_developer + project_id: project_project_project4 + - Create the phase task 'Design required GUI/Menus' - @@ -69,8 +71,7 @@ remaining_hours: 25.0 state: draft phase_id: project_phase_phase0 - project_id: project_project_project0 - user_id: project.res_users_designer + project_id: project_project_project4 - Schedule phase tasks @@ -84,6 +85,6 @@ !python {model: project.phase}: | phase = self.browse(cr, uid, [ref("project_phase_phase0")])[0] for task in phase.task_ids: - if (not task.user_id) or (not task.date_start) or (not task.date_end): + if (not task.date_start) or (not task.date_end): raise AssertionError("Phase Tasks not scheduled: %d uid=%r start=%r end=%r" % \ (task.id, task.user_id, task.date_start, task.date_end)) diff --git a/addons/project_long_term/test/test_schedule_phases_case1.yml b/addons/project_long_term/test/test_schedule_phases_case1.yml index 214512b923f..ba091a29916 100644 --- a/addons/project_long_term/test/test_schedule_phases_case1.yml +++ b/addons/project_long_term/test/test_schedule_phases_case1.yml @@ -2,10 +2,11 @@ In order to test scheduling of project phases, I create two different phases and test it with two different dates for scheduling. - - I create a project 'Development and Testing'. + I create a project Development and Testing. - - !record {model: project.project, id: project_project_project0}: - date_start: '2010-12-30' + !record {model: project.project, id: project_project_project_case1}: + name: "Development and Testing" + date_start: !eval time.strftime('%Y-%m-%d') balance: 0.0 credit: 0.0 currency_id: base.EUR @@ -13,7 +14,7 @@ effective_hours: 0.0 members: - base.user_admin - name: Development and Testing + planned_hours: 0.0 progress_rate: 0.0 quantity: 0.0 @@ -27,29 +28,29 @@ - I create first phase of the project. - - !record {model: project.phase, id: project_phase_firstphase0}: + !record {model: project.phase, id: project_phase_firstphase0_case1}: duration: 2.0 name: First Phase product_uom: product.uom_day - project_id: project_project_project0 + project_id: project_project_project_case1 state: draft - I create second phase of the project. - - !record {model: project.phase, id: project_phase_secondphase0}: + !record {model: project.phase, id: project_phase_secondphase0_case2}: duration: 3.0 name: Second Phase previous_phase_ids: - - project_phase_firstphase0 + - project_phase_firstphase0_case1 product_uom: product.uom_day - project_id: project_project_project0 + project_id: project_project_project_case1 state: draft - Now I create a record to compute the phase of project. - !record {model: project.compute.phases, id: project_compute_phases0}: target_project: 'one' - project_id: project_project_project0 + project_id: project_project_project_case1 - I schedule the phases. - @@ -59,7 +60,13 @@ I check the starting and ending dates of both phases. - !python {model: project.phase}: | - first_phase = self.browse(cr, uid, ref('project_phase_firstphase0')) - assert (first_phase.date_start == '2010-12-30' and first_phase.date_end == '2010-12-31'),'Dates are wrong!' - second_phase = self.browse(cr, uid, ref('project_phase_secondphase0')) - assert (second_phase.date_start == '2011-01-01' and second_phase.date_end == '2011-01-03'),'Dates are wrong!' + import datetime + from dateutil.relativedelta import * + start = (datetime.date.today()).strftime('%Y-%m-%d') + end = (datetime.date.today() + relativedelta(days=2)).strftime('%Y-%m-%d') + first_phase = self.browse(cr, uid, ref('project_phase_firstphase0_case1')) + assert (first_phase.date_start == start and first_phase.date_end == end),'Dates are wrong!' + second_phase = self.browse(cr, uid, ref('project_phase_secondphase0_case2')) + start = first_phase.date_end + end = (datetime.date.today() + relativedelta(days=5)).strftime('%Y-%m-%d') + assert (second_phase.date_start == start and second_phase.date_end == end),'Dates are wrong!' diff --git a/addons/project_long_term/test/test_schedule_tasks_case1.yml b/addons/project_long_term/test/test_schedule_tasks_case1.yml index 78bf5e318a4..febb2aa3576 100644 --- a/addons/project_long_term/test/test_schedule_tasks_case1.yml +++ b/addons/project_long_term/test/test_schedule_tasks_case1.yml @@ -259,5 +259,5 @@ !python {model: project.task}: | task_ids = self.search(cr, uid, [('project_id','=',ref('project_project_projecta0'))]) for task in self.browse(cr, uid, task_ids): - if (not task.user_id) or (not task.date_start) or (not task.date_end): + if (not task.date_start) or (not task.date_end): raise AssertionError("Tasks are not scheduled.") |
