summaryrefslogtreecommitdiff
path: root/addons/project_long_term
diff options
context:
space:
mode:
authorThibault Francois <tfr@openerp.com>2011-01-07 09:54:18 +0100
committerThibault Francois <tfr@openerp.com>2011-01-07 09:54:18 +0100
commitda3adeb1c86cc63ff3a8df35876bb5b2114665d1 (patch)
tree2f5fbbb8eaf4acdff5b647a53a3f5776db1e8b85 /addons/project_long_term
parenta9476d60a5c3c8a09ebe0f66a0d73b1998800619 (diff)
parent4b0121e09db16efc00766ea912dc4ef786741534 (diff)
[MERGE]
bzr revid: tfr@openerp.com-20110107084814-uvd01l1rg9gq0t26 bzr revid: tfr@openerp.com-20110107085418-zw86wjhev6epjxec
Diffstat (limited to 'addons/project_long_term')
-rw-r--r--addons/project_long_term/__openerp__.py7
-rw-r--r--addons/project_long_term/i18n/de.po138
-rw-r--r--addons/project_long_term/i18n/es.po103
-rw-r--r--addons/project_long_term/i18n/fr.po149
-rw-r--r--addons/project_long_term/i18n/lv.po107
-rw-r--r--addons/project_long_term/i18n/pl.po111
-rw-r--r--addons/project_long_term/i18n/pt.po107
-rw-r--r--addons/project_long_term/project_long_term.py68
-rw-r--r--addons/project_long_term/test/phase_constraint.yml134
-rw-r--r--addons/project_long_term/test/schedule_phase_tasks.yml4
-rw-r--r--addons/project_long_term/test/test_schedule_phases_case2.yml14
-rw-r--r--addons/project_long_term/test/test_schedule_tasks_case1.yml263
12 files changed, 862 insertions, 343 deletions
diff --git a/addons/project_long_term/__openerp__.py b/addons/project_long_term/__openerp__.py
index 795e0d758f8..68142f820ca 100644
--- a/addons/project_long_term/__openerp__.py
+++ b/addons/project_long_term/__openerp__.py
@@ -42,12 +42,13 @@ Features.
"test": [
'test/schedule_project_phases.yml',
'test/project_schedule_consecutive_day.yml',
- 'test/project_schedule_without_wroking_hour.yml'
+ 'test/project_schedule_without_wroking_hour.yml',
+ 'test/phase_constraint.yml',
+ 'test/test_schedule_phases_case2.yml',
# 'test/schedule_project_tasks.yml',
-# 'test/test_project_long_term.yml',
# 'test/schedule_phase_tasks.yml',
# 'test/test_schedule_phases_case1.yml',
-# 'test/test_schedule_phases_case2.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 d7f05a7a7fb..0d489ba8fbd 100644
--- a/addons/project_long_term/i18n/de.po
+++ b/addons/project_long_term/i18n/de.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2010-12-21 19:44+0000\n"
+"POT-Creation-Date: 2011-01-03 16:58+0000\n"
"PO-Revision-Date: 2010-12-31 14:22+0000\n"
"Last-Translator: Thorsten Vocks (OpenBig.org) <thorsten.vocks@big-"
"consulting.net>\n"
@@ -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-01 05:05+0000\n"
+"X-Launchpad-Export-Date: 2011-01-06 05:36+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: project_long_term
@@ -60,6 +60,11 @@ msgid "Resources Allocation"
msgstr "Ressourcenaufteilung"
#. 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 "Zeitplanung"
@@ -125,7 +130,7 @@ msgid "Error! You cannot assign escalation to the same project!"
msgstr "Fehler ! Sie können keine Eskalation in dasselbe Projekt vornehmen!"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:130
#, python-format
msgid "Day"
msgstr "Tag"
@@ -152,6 +157,20 @@ msgid "UoM (Unit of Measure) is the unit of measurement for Duration"
msgstr "ME (Mengeneinheit) entspr. Einheit für die Dauer"
#. 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
@@ -164,7 +183,7 @@ msgid "Project"
msgstr "Projekt"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Error!"
msgstr "Fehler!"
@@ -175,7 +194,7 @@ msgid "Cancelled"
msgstr "Abgebrochen"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:426
#, python-format
msgid "No tasks to compute for Project '%s'."
msgstr "Keine Aufgaben zur Berechnung für Projekt '%s'."
@@ -186,12 +205,6 @@ msgid "Ending Date"
msgstr "Ende Datum"
#. 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 "Ende Datum d. Phase"
-
-#. module: project_long_term
#: view:project.phase:0
msgid "Planning"
msgstr "Planung"
@@ -214,12 +227,13 @@ msgid "Compute Phase Scheduling"
msgstr "Berechne Terminierung der Phasen"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:192
#, python-format
msgid " (copy)"
msgstr " (Kopie)"
#. module: project_long_term
+#: view:project.phase:0
#: view:project.resource.allocation:0
#: field:project.resource.allocation,useability:0
msgid "Availability"
@@ -333,6 +347,11 @@ msgstr "OK"
#. 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 "Monat"
@@ -347,6 +366,17 @@ 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"
@@ -369,25 +399,6 @@ msgid "Draft"
msgstr "Entwurf"
#. 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 ones, 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 it."
-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
#: view:project.phase:0
#: selection:project.phase,state:0
msgid "Pending"
@@ -404,6 +415,14 @@ msgid "User"
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"
+
+#. module: project_long_term
#: view:project.phase:0
msgid "Task Detail"
msgstr "Aufgaben Detail"
@@ -419,31 +438,24 @@ msgid "Project Compute Tasks"
msgstr "Berechnung Aufgaben f. Projekt"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:244
#, python-format
msgid "No responsible person assigned !"
msgstr "Keinen Verantwortlichen zugewiesen!"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:489
#, python-format
msgid "Error"
msgstr "Fehler"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:244
#, python-format
msgid "You must assign a responsible person for phase '%s' !"
msgstr "Sie müssen einen Verantwortlichen für die Phase zuweisen '%s' !"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
-#, python-format
-msgid "Should have Resources Allocation or Project Members!"
-msgstr ""
-"Es sollte eine Ressourcenaufteilung oder Projektmitarbeiter existieren!"
-
-#. module: project_long_term
#: view:project.phase:0
msgid "Constraints"
msgstr "Bedingungen"
@@ -487,11 +499,6 @@ msgstr "Verbleib. Stunden"
#. module: project_long_term
#: view:project.phase:0
-msgid "Other Info"
-msgstr "Weitere Info"
-
-#. module: project_long_term
-#: view:project.phase:0
#: field:project.phase,responsible_id:0
msgid "Responsible"
msgstr "Verantwortlicher"
@@ -512,7 +519,7 @@ msgid "Start Phase"
msgstr "Start der Phase"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Please Specify Project to be schedule"
msgstr ""
@@ -578,6 +585,11 @@ msgid "Name"
msgstr "Bezeichnung"
#. 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 "Arbeitszeitmodell"
@@ -589,12 +601,11 @@ msgstr "Ressource Detail"
#. module: project_long_term
#: model:ir.ui.menu,name:project_long_term.menu_phase_schedule
-#: view:project.phase:0
msgid "Scheduling"
msgstr "Terminierung"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:329
#, python-format
msgid "No tasks to compute for Phase '%s'."
msgstr "Keine Aufgaben zur Berechnung für Phase: '%s'."
@@ -706,11 +717,40 @@ msgstr "Dauer"
#~ msgid "Phase must have resources assigned !"
#~ msgstr "Phase muss zugewiesene Ressource haben!"
+#~ msgid "Other Info"
+#~ msgstr "Weitere Info"
+
#~ msgid "The certificate ID of the module must be unique !"
#~ msgstr "Die Zertifikat ID des Moduls sollte eindeutig sein !"
+#~ 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 ones, 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 it."
+#~ 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."
+
#~ msgid "The name of the module must be unique !"
#~ msgstr "Die Modulbezeichnung sollte eindeutig sein !"
+#, python-format
+#~ msgid "Should have Resources Allocation or Project Members!"
+#~ msgstr ""
+#~ "Es sollte eine Ressourcenaufteilung oder Projektmitarbeiter existieren!"
+
#~ msgid "Size of the field can never be less than 1 !"
#~ msgstr "Die Größe des Feldes sollte niemals kleiner als 1 sein !"
+
+#~ msgid ""
+#~ "It's computed by the scheduler according to the start date and the duration."
+#~ msgstr "Ende Datum d. Phase"
diff --git a/addons/project_long_term/i18n/es.po b/addons/project_long_term/i18n/es.po
index 129794858f0..f28ffa8a67e 100644
--- a/addons/project_long_term/i18n/es.po
+++ b/addons/project_long_term/i18n/es.po
@@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2010-12-21 19:44+0000\n"
+"POT-Creation-Date: 2011-01-03 16:58+0000\n"
"PO-Revision-Date: 2010-12-31 10:23+0000\n"
"Last-Translator: Borja López Soilán <borjalopezsoilan@gmail.com>\n"
"Language-Team: Spanish <es@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-01 05:05+0000\n"
+"X-Launchpad-Export-Date: 2011-01-06 05:36+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: project_long_term
@@ -62,6 +62,11 @@ msgid "Resources Allocation"
msgstr "Asignación de recursos"
#. 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 "Programa"
@@ -105,7 +110,7 @@ msgid "Error! You cannot assign escalation to the same project!"
msgstr "¡Error! No puede asignar un escalado al mismo proyecto."
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:130
#, python-format
msgid "Day"
msgstr "Día"
@@ -132,6 +137,20 @@ msgid "UoM (Unit of Measure) is the unit of measurement for Duration"
msgstr "UdM (Unidad de Medida) es la unidad de medida para la duración"
#. 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
@@ -144,7 +163,7 @@ msgid "Project"
msgstr "Proyecto"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Error!"
msgstr "¡Error!"
@@ -155,7 +174,7 @@ msgid "Cancelled"
msgstr "Cancelado"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:426
#, python-format
msgid "No tasks to compute for Project '%s'."
msgstr ""
@@ -166,12 +185,6 @@ msgid "Ending Date"
msgstr "Fecha de fin"
#. 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
#: view:project.phase:0
msgid "Planning"
msgstr "Planificación"
@@ -194,12 +207,13 @@ msgid "Compute Phase Scheduling"
msgstr "Calcular planificación de fases"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:192
#, python-format
msgid " (copy)"
msgstr " (copia)"
#. module: project_long_term
+#: view:project.phase:0
#: view:project.resource.allocation:0
#: field:project.resource.allocation,useability:0
msgid "Availability"
@@ -310,6 +324,11 @@ msgstr "_Aceptar"
#. 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 "Mes"
@@ -324,6 +343,17 @@ 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"
@@ -346,17 +376,6 @@ msgid "Draft"
msgstr "Borrador"
#. 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 ones, 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 it."
-msgstr ""
-
-#. module: project_long_term
#: view:project.phase:0
#: selection:project.phase,state:0
msgid "Pending"
@@ -373,6 +392,14 @@ msgid "User"
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"
+msgstr ""
+
+#. module: project_long_term
#: view:project.phase:0
msgid "Task Detail"
msgstr "Detalles tarea"
@@ -388,30 +415,24 @@ msgid "Project Compute Tasks"
msgstr ""
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: 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:0
+#: code:addons/project_long_term/project_long_term.py:489
#, python-format
msgid "Error"
msgstr "Error"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: 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
-#: code:addons/project_long_term/project_long_term.py:0
-#, python-format
-msgid "Should have Resources Allocation or Project Members!"
-msgstr ""
-
-#. module: project_long_term
#: view:project.phase:0
msgid "Constraints"
msgstr "Restricciones"
@@ -455,11 +476,6 @@ msgstr "Horas restantes"
#. module: project_long_term
#: view:project.phase:0
-msgid "Other Info"
-msgstr "Otra información"
-
-#. module: project_long_term
-#: view:project.phase:0
#: field:project.phase,responsible_id:0
msgid "Responsible"
msgstr "Responsable"
@@ -480,7 +496,7 @@ msgid "Start Phase"
msgstr "Comenzar fase"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Please Specify Project to be schedule"
msgstr ""
@@ -540,6 +556,11 @@ msgid "Name"
msgstr "Nombre"
#. 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 "Periodo de trabajo"
@@ -551,12 +572,11 @@ msgstr "Detalle recurso"
#. module: project_long_term
#: model:ir.ui.menu,name:project_long_term.menu_phase_schedule
-#: view:project.phase:0
msgid "Scheduling"
msgstr "Planificación"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:329
#, python-format
msgid "No tasks to compute for Phase '%s'."
msgstr ""
@@ -617,5 +637,8 @@ msgstr "Por defecto en días"
msgid "Duration"
msgstr "Duración"
+#~ msgid "Other Info"
+#~ msgstr "Otra información"
+
#~ msgid "Ending Date of the phase"
#~ msgstr "Fecha de fin de la fase"
diff --git a/addons/project_long_term/i18n/fr.po b/addons/project_long_term/i18n/fr.po
index cf3abfec33e..fd50676d9e0 100644
--- a/addons/project_long_term/i18n/fr.po
+++ b/addons/project_long_term/i18n/fr.po
@@ -6,14 +6,14 @@ msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2010-12-21 19:44+0000\n"
-"PO-Revision-Date: 2010-12-31 11:08+0000\n"
-"Last-Translator: lolivier <olivier.lenoir@free.fr>\n"
+"POT-Creation-Date: 2011-01-03 16:58+0000\n"
+"PO-Revision-Date: 2011-01-05 09:46+0000\n"
+"Last-Translator: Aline (OpenERP) <Unknown>\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-01 05:05+0000\n"
+"X-Launchpad-Export-Date: 2011-01-06 05:36+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: project_long_term
@@ -59,6 +59,11 @@ msgid "Resources Allocation"
msgstr "Allocation des ressources"
#. 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 "Planifier"
@@ -102,7 +107,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:0
+#: code:addons/project_long_term/project_long_term.py:130
#, python-format
msgid "Day"
msgstr "Jour"
@@ -115,7 +120,7 @@ msgstr "Tâche"
#. module: project_long_term
#: selection:project.compute.phases,target_project:0
msgid "Compute a Single Project"
-msgstr ""
+msgstr "Calculer un seul projet"
#. module: project_long_term
#: view:project.phase:0
@@ -129,6 +134,20 @@ msgid "UoM (Unit of Measure) is the unit of measurement for Duration"
msgstr "UdM (unité de mesure) est l'unité de mesure de la durée"
#. 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
@@ -141,7 +160,7 @@ msgid "Project"
msgstr "Projet"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Error!"
msgstr "Erreur!"
@@ -152,7 +171,7 @@ msgid "Cancelled"
msgstr "Annulé"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:426
#, python-format
msgid "No tasks to compute for Project '%s'."
msgstr "Pas de tâches à calculer pour le projet '%s'."
@@ -163,12 +182,6 @@ msgid "Ending Date"
msgstr "Date de fin"
#. 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 "Date de fin de la phase"
-
-#. module: project_long_term
#: view:project.phase:0
msgid "Planning"
msgstr "Planification"
@@ -188,15 +201,16 @@ msgstr "_Annuler"
#: 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 ""
+msgstr "Calculer la planification des phases"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:192
#, python-format
msgid " (copy)"
msgstr " (copie)"
#. module: project_long_term
+#: view:project.phase:0
#: view:project.resource.allocation:0
#: field:project.resource.allocation,useability:0
msgid "Availability"
@@ -218,6 +232,7 @@ msgstr "Calculer"
#: view:project.compute.phases:0
msgid "Compute Scheduling of phases for all or specified project"
msgstr ""
+"Calculer la plannification des phases pour tous les projets ou celui spécifié"
#. module: project_long_term
#: field:project.phase,product_uom:0
@@ -311,6 +326,11 @@ msgstr "_Ok"
#. 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 "Mois"
@@ -327,6 +347,17 @@ msgid "project.schedule.tasks"
msgstr "project.schedule.tasks"
#. 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"
@@ -349,23 +380,6 @@ msgid "Draft"
msgstr "Brouillon"
#. 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 ones, 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 it."
-msgstr ""
-"Un projet peut être divisé en différentes phases. Pour chaque phase, vous "
-"pouvez allouer des ressources, décrire les différentes tâches et relier les "
-"phases les unes aux autres, ajouter des contraintes sur les dates pour "
-"l'ordonnancement automatique. Utilisez la planification à long terme pour "
-"planifier les ressources humaines disponibles, et convertissez vos phases en "
-"une série de tâches quand vous commencez à travailler sur le projet."
-
-#. module: project_long_term
#: view:project.phase:0
#: selection:project.phase,state:0
msgid "Pending"
@@ -382,6 +396,14 @@ msgid "User"
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"
+
+#. module: project_long_term
#: view:project.phase:0
msgid "Task Detail"
msgstr "Détails de la tâche"
@@ -396,33 +418,27 @@ msgstr ""
#. module: project_long_term
#: model:ir.model,name:project_long_term.model_project_compute_tasks
msgid "Project Compute Tasks"
-msgstr ""
+msgstr "Calculer les tâches du projet"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:244
#, python-format
msgid "No responsible person assigned !"
msgstr "Aucun responsable n'a été assigné !"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:489
#, python-format
msgid "Error"
msgstr "Erreur"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:244
#, python-format
msgid "You must assign a responsible person for phase '%s' !"
msgstr "Vous devez assigner une personne responsable de la phase '%s' !"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
-#, python-format
-msgid "Should have Resources Allocation or Project Members!"
-msgstr ""
-
-#. module: project_long_term
#: view:project.phase:0
msgid "Constraints"
msgstr "Contraintes"
@@ -430,7 +446,7 @@ msgstr "Contraintes"
#. module: project_long_term
#: help:project.phase,sequence:0
msgid "Gives the sequence order when displaying a list of phases."
-msgstr ""
+msgstr "Donne la séquence lors de l'affichage des phases dans la liste."
#. module: project_long_term
#: model:ir.actions.act_window,name:project_long_term.act_project_phase
@@ -466,11 +482,6 @@ msgstr "Heures restantes"
#. module: project_long_term
#: view:project.phase:0
-msgid "Other Info"
-msgstr "Autres Informations"
-
-#. module: project_long_term
-#: view:project.phase:0
#: field:project.phase,responsible_id:0
msgid "Responsible"
msgstr "Responsable"
@@ -491,10 +502,10 @@ msgid "Start Phase"
msgstr "Démarrer la phase"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Please Specify Project to be schedule"
-msgstr ""
+msgstr "Veuillez définir le projet à planifier"
#. module: project_long_term
#: view:project.phase:0
@@ -555,6 +566,11 @@ msgid "Name"
msgstr "Nom"
#. 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 "Période de travail"
@@ -566,12 +582,11 @@ msgstr "Détail de la ressource"
#. module: project_long_term
#: model:ir.ui.menu,name:project_long_term.menu_phase_schedule
-#: view:project.phase:0
msgid "Scheduling"
msgstr "Ordonnancement"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:329
#, python-format
msgid "No tasks to compute for Phase '%s'."
msgstr "Pas de tâches à calculer pour la phase '%s'."
@@ -598,7 +613,7 @@ msgstr "Message"
#. module: project_long_term
#: constraint:project.phase:0
msgid "Loops in phases not allowed"
-msgstr ""
+msgstr "Les boucles ne sont pas autorisées dans les phases"
#. module: project_long_term
#: field:project.phase,sequence:0
@@ -608,7 +623,7 @@ msgstr "Séquence"
#. module: project_long_term
#: selection:project.compute.phases,target_project:0
msgid "Compute All Projects"
-msgstr ""
+msgstr "Calculer tous les projets"
#. module: project_long_term
#: model:ir.ui.menu,name:project_long_term.menu_view_resource_calendar_leaves
@@ -620,7 +635,7 @@ msgstr "Congés de la ressource"
#: view:project.phase:0
#: view:project.schedule.tasks:0
msgid "Schedule Tasks"
-msgstr ""
+msgstr "Planifier les tâches"
#. module: project_long_term
#: help:project.phase,duration:0
@@ -631,3 +646,25 @@ msgstr "Par défaut en jour"
#: field:project.phase,duration:0
msgid "Duration"
msgstr "Durée"
+
+#~ msgid "Other Info"
+#~ msgstr "Autres Informations"
+
+#~ 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 ones, 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 it."
+#~ msgstr ""
+#~ "Un projet peut être divisé en différentes phases. Pour chaque phase, vous "
+#~ "pouvez allouer des ressources, décrire les différentes tâches et relier les "
+#~ "phases les unes aux autres, ajouter des contraintes sur les dates pour "
+#~ "l'ordonnancement automatique. Utilisez la planification à long terme pour "
+#~ "planifier les ressources humaines disponibles, et convertissez vos phases en "
+#~ "une série de tâches quand vous commencez à travailler sur le projet."
+
+#~ msgid ""
+#~ "It's computed by the scheduler according to the start date and the duration."
+#~ msgstr "Date de fin de la phase"
diff --git a/addons/project_long_term/i18n/lv.po b/addons/project_long_term/i18n/lv.po
index ce5130c1a1a..e01d607b031 100644
--- a/addons/project_long_term/i18n/lv.po
+++ b/addons/project_long_term/i18n/lv.po
@@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2010-12-21 19:44+0000\n"
+"POT-Creation-Date: 2011-01-03 16:58+0000\n"
"PO-Revision-Date: 2010-12-31 10:24+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"Language-Team: Latvian <lv@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-01 05:05+0000\n"
+"X-Launchpad-Export-Date: 2011-01-06 05:36+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: project_long_term
@@ -60,6 +60,11 @@ msgid "Resources Allocation"
msgstr "Resursu iedalīšana"
#. 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 "Grafiks"
@@ -103,7 +108,7 @@ msgid "Error! You cannot assign escalation to the same project!"
msgstr "Kļūda! Nedrīkst piešķirt eskalāciju uz to pašu projektu!"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:130
#, python-format
msgid "Day"
msgstr "Diena"
@@ -130,6 +135,20 @@ msgid "UoM (Unit of Measure) is the unit of measurement for Duration"
msgstr "Mērv. (mērvienība) ir ilguma mērvienība"
#. 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
@@ -142,7 +161,7 @@ msgid "Project"
msgstr "Projekts"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Error!"
msgstr "Kļūda!"
@@ -153,7 +172,7 @@ msgid "Cancelled"
msgstr "Atcelts"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:426
#, python-format
msgid "No tasks to compute for Project '%s'."
msgstr "Projektam '%s' nav uzdevumu ko aprēķināt."
@@ -164,12 +183,6 @@ msgid "Ending Date"
msgstr "Beigu Datums"
#. 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
#: view:project.phase:0
msgid "Planning"
msgstr "Plānošana"
@@ -192,12 +205,13 @@ msgid "Compute Phase Scheduling"
msgstr "Aprēķināt fāzes grafiku"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:192
#, python-format
msgid " (copy)"
msgstr " (kopija)"
#. module: project_long_term
+#: view:project.phase:0
#: view:project.resource.allocation:0
#: field:project.resource.allocation,useability:0
msgid "Availability"
@@ -307,6 +321,11 @@ msgstr "_Labi"
#. 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 "Mēnesis"
@@ -321,6 +340,17 @@ msgid "project.schedule.tasks"
msgstr "project.schedule.tasks"
#. 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"
@@ -343,17 +373,6 @@ msgid "Draft"
msgstr "Melnraksts"
#. 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 ones, 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 it."
-msgstr ""
-
-#. module: project_long_term
#: view:project.phase:0
#: selection:project.phase,state:0
msgid "Pending"
@@ -370,6 +389,14 @@ msgid "User"
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"
+msgstr ""
+
+#. module: project_long_term
#: view:project.phase:0
msgid "Task Detail"
msgstr "Uzdevuma informācija"
@@ -385,30 +412,24 @@ msgid "Project Compute Tasks"
msgstr "Projekts - aprēķināt uzdevumus"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:244
#, python-format
msgid "No responsible person assigned !"
msgstr "Nav nozīmēta atbildīgā persona!"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:489
#, python-format
msgid "Error"
msgstr "Kļūda"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:244
#, python-format
msgid "You must assign a responsible person for phase '%s' !"
msgstr "Fāzei '%s' jānozīmē atbildīgo personu!"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
-#, python-format
-msgid "Should have Resources Allocation or Project Members!"
-msgstr "Nepieciešama resursu iedalīšana vai projekta dalībnieki!"
-
-#. module: project_long_term
#: view:project.phase:0
msgid "Constraints"
msgstr "Ierobežojumi"
@@ -452,11 +473,6 @@ msgstr "Atlikušās Stundas"
#. module: project_long_term
#: view:project.phase:0
-msgid "Other Info"
-msgstr "Cita informācija"
-
-#. module: project_long_term
-#: view:project.phase:0
#: field:project.phase,responsible_id:0
msgid "Responsible"
msgstr "Atbildīgais"
@@ -477,7 +493,7 @@ msgid "Start Phase"
msgstr "Sākt fāzi"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Please Specify Project to be schedule"
msgstr "Lūdzu, norādiet plānojamo projektu"
@@ -537,6 +553,11 @@ msgid "Name"
msgstr "Nosaukums"
#. 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 "Darba laiks"
@@ -548,12 +569,11 @@ msgstr "Resursa informācija"
#. module: project_long_term
#: model:ir.ui.menu,name:project_long_term.menu_phase_schedule
-#: view:project.phase:0
msgid "Scheduling"
msgstr "Plānošana"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:329
#, python-format
msgid "No tasks to compute for Phase '%s'."
msgstr "Fāzei '%s' nav uzdevumu ko aprēķināt"
@@ -617,5 +637,12 @@ msgstr "Ilgums"
#~ msgid "Ending Date of the phase"
#~ msgstr "Fāzes beigu datums"
+#~ msgid "Other Info"
+#~ msgstr "Cita informācija"
+
#~ msgid "Starting Date of the phase"
#~ msgstr "Fāzes sākuma datums"
+
+#, python-format
+#~ msgid "Should have Resources Allocation or Project Members!"
+#~ msgstr "Nepieciešama resursu iedalīšana vai projekta dalībnieki!"
diff --git a/addons/project_long_term/i18n/pl.po b/addons/project_long_term/i18n/pl.po
index a4047fbc04c..d2c668a3472 100644
--- a/addons/project_long_term/i18n/pl.po
+++ b/addons/project_long_term/i18n/pl.po
@@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2010-12-21 19:44+0000\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"
"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-01 05:05+0000\n"
+"X-Launchpad-Export-Date: 2011-01-06 05:36+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: project_long_term
@@ -60,6 +60,11 @@ msgid "Resources Allocation"
msgstr "Alokacja zasobów"
#. 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 "Harmonogram"
@@ -103,7 +108,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:0
+#: code:addons/project_long_term/project_long_term.py:130
#, python-format
msgid "Day"
msgstr "Dzień"
@@ -130,6 +135,20 @@ msgid "UoM (Unit of Measure) is the unit of measurement for Duration"
msgstr "JM (Jednostka Miary) jest jednostką miary dla czasu trwania"
#. 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
@@ -142,7 +161,7 @@ msgid "Project"
msgstr "Projekt"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Error!"
msgstr "Błąd!"
@@ -153,7 +172,7 @@ msgid "Cancelled"
msgstr "Anulowano"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:426
#, python-format
msgid "No tasks to compute for Project '%s'."
msgstr "Brak zadań do obliczeń w Projekcie '%s'"
@@ -164,12 +183,6 @@ msgid "Ending Date"
msgstr "Data końcowa"
#. 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 "Końcowa data fazy"
-
-#. module: project_long_term
#: view:project.phase:0
msgid "Planning"
msgstr "Planowanie"
@@ -192,12 +205,13 @@ msgid "Compute Phase Scheduling"
msgstr "Oblicz planowanie fazy"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:192
#, python-format
msgid " (copy)"
msgstr " (kopia)"
#. module: project_long_term
+#: view:project.phase:0
#: view:project.resource.allocation:0
#: field:project.resource.allocation,useability:0
msgid "Availability"
@@ -307,6 +321,11 @@ 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 "Miesiąc"
@@ -321,6 +340,17 @@ 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"
@@ -343,17 +373,6 @@ msgid "Draft"
msgstr "Projekt"
#. 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 ones, 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 it."
-msgstr ""
-
-#. module: project_long_term
#: view:project.phase:0
#: selection:project.phase,state:0
msgid "Pending"
@@ -370,6 +389,14 @@ msgid "User"
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"
+msgstr ""
+
+#. module: project_long_term
#: view:project.phase:0
msgid "Task Detail"
msgstr "Szczegóły zadania"
@@ -386,30 +413,24 @@ msgid "Project Compute Tasks"
msgstr "Obliczanie zadań projektu"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:244
#, python-format
msgid "No responsible person assigned !"
msgstr "Nie przypisano osoby odpowiedzialnej"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:489
#, python-format
msgid "Error"
msgstr "Błąd"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:244
#, python-format
msgid "You must assign a responsible person for phase '%s' !"
msgstr "Musisz podać osobę odpowiedzialną za fazę '%s' !"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
-#, python-format
-msgid "Should have Resources Allocation or Project Members!"
-msgstr "Musi być Alokacja zasobów lub Członkowie projektu!"
-
-#. module: project_long_term
#: view:project.phase:0
msgid "Constraints"
msgstr "Ograniczenia"
@@ -453,11 +474,6 @@ msgstr "Pozostałe godziny"
#. module: project_long_term
#: view:project.phase:0
-msgid "Other Info"
-msgstr "Inne informacje"
-
-#. module: project_long_term
-#: view:project.phase:0
#: field:project.phase,responsible_id:0
msgid "Responsible"
msgstr "Odpowiedzialny"
@@ -478,7 +494,7 @@ msgid "Start Phase"
msgstr "Rozpocznij fazę"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Please Specify Project to be schedule"
msgstr "Wybierz projekt do zaplanowania"
@@ -543,6 +559,11 @@ msgid "Name"
msgstr "Nazwa"
#. 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 "Godziny pracy"
@@ -554,12 +575,11 @@ msgstr "Szczegóły zasobu"
#. module: project_long_term
#: model:ir.ui.menu,name:project_long_term.menu_phase_schedule
-#: view:project.phase:0
msgid "Scheduling"
msgstr "Harmonogram"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:329
#, python-format
msgid "No tasks to compute for Phase '%s'."
msgstr "Brak zadań do obliczania dla Fazy '%s'."
@@ -644,6 +664,17 @@ msgstr "Czas trwania"
#~ "Nazwa obiektu musi zaczynać się od x_ oraz nie może zawierać znaków "
#~ "specjalnych !"
+#~ msgid "Other Info"
+#~ msgstr "Inne informacje"
+
+#, python-format
+#~ msgid "Should have Resources Allocation or Project Members!"
+#~ msgstr "Musi być Alokacja zasobów lub Członkowie projektu!"
+
+#~ msgid ""
+#~ "It's computed by the scheduler according to the start date and the duration."
+#~ msgstr "Końcowa data fazy"
+
#~ 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 "
diff --git a/addons/project_long_term/i18n/pt.po b/addons/project_long_term/i18n/pt.po
index 8ecf7c498aa..9c09ac02943 100644
--- a/addons/project_long_term/i18n/pt.po
+++ b/addons/project_long_term/i18n/pt.po
@@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2010-12-21 19:44+0000\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"
"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-01 05:05+0000\n"
+"X-Launchpad-Export-Date: 2011-01-06 05:36+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: project_long_term
@@ -60,6 +60,11 @@ 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 ""
@@ -103,7 +108,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:0
+#: code:addons/project_long_term/project_long_term.py:130
#, python-format
msgid "Day"
msgstr "Dia"
@@ -130,6 +135,20 @@ 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
@@ -142,7 +161,7 @@ msgid "Project"
msgstr "Projeto"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Error!"
msgstr "Erro!"
@@ -153,7 +172,7 @@ msgid "Cancelled"
msgstr ""
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:426
#, python-format
msgid "No tasks to compute for Project '%s'."
msgstr ""
@@ -164,12 +183,6 @@ msgid "Ending Date"
msgstr "Data de fim"
#. 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 "Data de fim da fase"
-
-#. module: project_long_term
#: view:project.phase:0
msgid "Planning"
msgstr "Planeamento"
@@ -192,12 +205,13 @@ msgid "Compute Phase Scheduling"
msgstr ""
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:192
#, python-format
msgid " (copy)"
msgstr " (cópia)"
#. module: project_long_term
+#: view:project.phase:0
#: view:project.resource.allocation:0
#: field:project.resource.allocation,useability:0
msgid "Availability"
@@ -307,6 +321,11 @@ 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 "Mês"
@@ -321,6 +340,17 @@ msgid "project.schedule.tasks"
msgstr "project.schedule.tasks"
#. 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"
@@ -343,17 +373,6 @@ msgid "Draft"
msgstr "Rascunho"
#. 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 ones, 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 it."
-msgstr ""
-
-#. module: project_long_term
#: view:project.phase:0
#: selection:project.phase,state:0
msgid "Pending"
@@ -370,6 +389,14 @@ msgid "User"
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"
+
+#. module: project_long_term
#: view:project.phase:0
msgid "Task Detail"
msgstr "Detalhe da tarefa"
@@ -385,30 +412,24 @@ msgid "Project Compute Tasks"
msgstr ""
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: 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:0
+#: code:addons/project_long_term/project_long_term.py:489
#, python-format
msgid "Error"
msgstr "Erro"
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: 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
-#: code:addons/project_long_term/project_long_term.py:0
-#, python-format
-msgid "Should have Resources Allocation or Project Members!"
-msgstr ""
-
-#. module: project_long_term
#: view:project.phase:0
msgid "Constraints"
msgstr ""
@@ -452,11 +473,6 @@ msgstr "Horas restantes"
#. module: project_long_term
#: view:project.phase:0
-msgid "Other Info"
-msgstr "Outras informações"
-
-#. module: project_long_term
-#: view:project.phase:0
#: field:project.phase,responsible_id:0
msgid "Responsible"
msgstr "Responsável"
@@ -477,7 +493,7 @@ msgid "Start Phase"
msgstr "Iniciar fase"
#. module: project_long_term
-#: code:addons/project_long_term/wizard/project_compute_phases.py:0
+#: code:addons/project_long_term/wizard/project_compute_phases.py:50
#, python-format
msgid "Please Specify Project to be schedule"
msgstr ""
@@ -537,6 +553,11 @@ msgid "Name"
msgstr "Nome"
#. 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 ""
@@ -548,12 +569,11 @@ msgstr ""
#. module: project_long_term
#: model:ir.ui.menu,name:project_long_term.menu_phase_schedule
-#: view:project.phase:0
msgid "Scheduling"
msgstr ""
#. module: project_long_term
-#: code:addons/project_long_term/project_long_term.py:0
+#: code:addons/project_long_term/project_long_term.py:329
#, python-format
msgid "No tasks to compute for Phase '%s'."
msgstr ""
@@ -613,3 +633,10 @@ msgstr ""
#: field:project.phase,duration:0
msgid "Duration"
msgstr "Duração"
+
+#~ msgid "Other Info"
+#~ msgstr "Outras informações"
+
+#~ msgid ""
+#~ "It's computed by the scheduler according to the start date and the duration."
+#~ msgstr "Data de fim da fase"
diff --git a/addons/project_long_term/project_long_term.py b/addons/project_long_term/project_long_term.py
index 00e7c850702..8b82108bdba 100644
--- a/addons/project_long_term/project_long_term.py
+++ b/addons/project_long_term/project_long_term.py
@@ -231,6 +231,7 @@ class project_phase(osv.osv):
# Create a new project for each phase
str_resource = ('%s | '*len(phase.resource_ids))[:-2]
str_vals = str_resource % tuple(map(lambda x: 'Resource_%s'%x.resource_id.id, phase.resource_ids))
+
# Phases Defination for the Project
s = '''
def Phase_%s():
@@ -238,16 +239,35 @@ class project_phase(osv.osv):
effort = \'%s\'
resource = %s
'''%(phase.id, phase.name, duration, str_vals or False)
- if parent:
- start = 'up.Phase_%s.end' % (parent.id)
+
+ # Recalculate date_start and date_end
+ # according to constraints on date start and date end on phase
+ start_date = ''
+ end_date = ''
+ if phase.constraint_date_start:
+ start_date = datetime.strptime(phase.constraint_date_start, '%Y-%m-%d')
s += '''
+ start = \"%s\"
+'''%(datetime.strftime(start_date, "%Y-%m-%d"))
+ else:
+ if parent:
+ start = 'up.Phase_%s.end' % (parent.id)
+ s += '''
start = %s
'''%(start)
- else:
- start = phase.project_id.date_start or phase.date_start
- s += '''
+ else:
+ start = phase.project_id.date_start or phase.date_start
+ s += '''
start = \"%s\"
-'''%(start)
+'''%(start)
+
+ if phase.constraint_date_end :
+ end_date= datetime.strptime(phase.constraint_date_end, '%Y-%m-%d')
+ s += '''
+ end = \"%s\"
+'''%(datetime.strftime(end_date, "%Y-%m-%d"))
+
+
#start = datetime.strftime((datetime.strptime(start, "%Y-%m-%d")), "%Y-%m-%d")
phase_ids.append(phase.id)
@@ -513,12 +533,25 @@ def Project_%d():
phase = eval("project.Phase_%d" % phase_id)
start_date = phase.start.to_datetime()
end_date = phase.end.to_datetime()
+ # Write the calculated dates back
+# if act_phase.constraint_date_start and str(start_date) < act_phase.constraint_date_start:
+# start_date = datetime.strptime(act_phase.constraint_date_start, '%Y-%m-%d')
+# else:
+# start_date = start_date
+# if act_phase.constraint_date_end and str(end_date) > act_phase.constraint_date_end:
+# end_date= datetime.strptime(act_phase.constraint_date_end, '%Y-%m-%d')
+# date_start = act_phase.constraint_date_end
+# else:
+# end_date = start_date
+# start_date = end_date
+ ctx = context.copy()
+ ctx.update({'scheduler': True})
if resources:
for res in resources:
vals = {}
vals.update({'date_start' : start_date })
vals.update({'date_end' : end_date})
- resource_allocation_pool.write(cr, uid, res.id, vals)
+ resource_allocation_pool.write(cr, uid, res.id, vals, context=ctx)
if act_phase.task_ids:
for task in act_phase.task_ids:
vals = {}
@@ -526,28 +559,13 @@ def Project_%d():
temp = eval("phase.Task_%s"%task.id)
vals.update({'date_start' : temp.start.strftime('%Y-%m-%d %H:%M:%S')})
vals.update({'date_end' : temp.end.strftime('%Y-%m-%d %H:%M:%S')})
- task_pool.write(cr, uid, task.id, vals, context=context)
- # Recalculate date_start and date_end
- # according to constraints on date start and date end on phase
-
- #if phase.constraint_date_start and str(s_date) < phase.constraint_date_start:
- # start_date = datetime.strptime(phase.constraint_date_start, '%Y-%m-%d')
- #else:
- # start_date = s_date
- #if phase.constraint_date_end and str(e_date) > phase.constraint_date_end:
- # end_date= datetime.strptime(phase.constraint_date_end, '%Y-%m-%d')
- # date_start = phase.constraint_date_end
- #else:
- # end_date = e_date
- # date_start = end_date
+ task_pool.write(cr, uid, task.id, vals, context=ctx)
+
- # Write the calculated dates back
- #ctx = context.copy()
- #ctx.update({'scheduler': True})
phase_pool.write(cr, uid, [phase_id], {
'date_start': start_date.strftime('%Y-%m-%d'),
'date_end': end_date.strftime('%Y-%m-%d')
- }, context=context)
+ }, context=ctx)
return True
#TODO: DO Resource allocation and compute availability
diff --git a/addons/project_long_term/test/phase_constraint.yml b/addons/project_long_term/test/phase_constraint.yml
index added4782ef..cf6bfa844a6 100644
--- a/addons/project_long_term/test/phase_constraint.yml
+++ b/addons/project_long_term/test/phase_constraint.yml
@@ -1,36 +1,72 @@
-
- I have a project 'Develop yaml Project Module' starting on 01/05/2010.
+ I have a project 'Develop yaml Project Module'.
-
!record {model: project.project, id: project_project_developyamlproject0}:
name: "Develop Yaml Project Module"
- date_start: '2010-01-05'
-
+ date_start: !eval time.strftime('%Y-%m-%d')
-
- I have set Working Time "from Monday to Friday, from 9am to 17pm".
+ I have set Working Time from Monday to Friday from 9am to 17pm.
-
!record {model: resource.calendar, id: resource_calendar_hoursweeks0}:
- attendance_ids:
- - dayofweek: '0'
- hour_from: 9.0
- hour_to: 17.0
- name: Monday
- - dayofweek: '1'
- hour_from: 9.0
- hour_to: 17.0
- name: tuesday
- - dayofweek: '2'
- hour_from: 9.0
- hour_to: 17.0
- name: Wednesday
- - dayofweek: '3'
- hour_from: 9.0
- hour_to: 17.0
- name: Thursday
- - dayofweek: '4'
- hour_from: 9.0
- hour_to: 17.0
- name: Friday
- name: 40 hours/weeks
+ 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}:
+ name: "Day1"
+ hour_from : 09.00
+ hour_to : 17.00
+ dayofweek : "0"
+ calendar_id : resource_calendar_hoursweeks0
+
+-
+ I have set Day2 Working Time for Monday to Friday from 9am to 17pm working hour
+-
+ !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday1}:
+ name: "Day2"
+ hour_from : 09.00
+ hour_to : 17.00
+ dayofweek : "1"
+ calendar_id : resource_calendar_hoursweeks0
+
+-
+ I have set Day3 Working Time for Monday to Friday from 9am to 17pm working hour
+-
+ !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday1}:
+ name: "Day3"
+ hour_from : 09.00
+ hour_to : 17.00
+ dayofweek : "2"
+ calendar_id : resource_calendar_hoursweeks0
+
+-
+ I have set Day4 Working Time for Monday to Friday from 9am to 17pm working hour
+-
+ !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday1}:
+ name: "Day4"
+ hour_from : 09.00
+ hour_to : 17.00
+ dayofweek : "3"
+ calendar_id : resource_calendar_hoursweeks0
+
+-
+ I have set Day5 Working Time for Monday to Friday from 9am to 17pm working hour
+-
+ !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday1}:
+ name: "Day5"
+ hour_from : 09.00
+ hour_to : 17.00
+ dayofweek : "4"
+ calendar_id : resource_calendar_hoursweeks0
+
+
+-
+ Now Set working period to Project 'Develop yaml Project Module'
+-
+ !python {model: project.project}: |
+ self.write(cr, uid, [ref("project_project_developyamlproject0")], {'resource_calendar_id': ref("resource_calendar_hoursweeks0")})
+
-
Creating 3 consecutive 5-days phases.
@@ -68,40 +104,56 @@
Creating First 'Analysis Flow for Yaml' Project Phase.
-
!record {model: project.phase, id: project_phase_analysisflowforyaml0}:
- date_start: '2010-01-05'
- duration: 5.0
+ date_start: !eval time.strftime('%Y-%m-%d')
+ duration: 6.0
name: "Analysis Flow for Yaml"
product_uom: product.uom_day
project_id: project_project_developyamlproject0
responsible_id: project.res_users_analyst
state: draft
- resource_ids:
- - resource_id: resource_resource_analyst1
+
+-
+ I update the Constrain Date Start adn Date End for phase Analysis Flow for Yaml
+-
+ !python {model : project.phase }: |
+ import datetime
+ from dateutil.relativedelta import *
+ start = datetime.date.today() - relativedelta(days=2)
+ end = datetime.date.today() + relativedelta(days=6)
+ self.write(cr,uid, [(ref("project_phase_analysisflowforyaml0"))], {'constraint_date_start': start, 'constraint_date_end':end})
-
Create project phase 'Develop yaml' with constraint date.
-
!record {model: project.phase, id: project_phase_developyaml0}:
- date_start: '2010-01-05'
- constraint_date_start: '2010-01-07'
- duration: 5.0
+ duration: 6.0
name: Develop Yaml
product_uom: product.uom_day
project_id: project_project_developyamlproject0
- resource_ids:
- - resource_id: resource_resource_develop0
--
+ previous_phase_ids:
+ - project_phase_analysisflowforyaml0
+
+-
+ I update the Constrain Date Start adn Date End for phase Develop yaml
+-
+ !python {model : project.phase }: |
+ import datetime
+ from dateutil.relativedelta import *
+ start = datetime.date.today() - relativedelta(days=5)
+ end = datetime.date.today() + relativedelta(days=10)
+ self.write(cr,uid, [(ref("project_phase_developyaml0"))], {'constraint_date_start': start, 'constraint_date_end':end})
+-
Create project phase 'Test Yaml'
-
!record {model: project.phase, id: project_phase_testyaml0}:
- date_start: '2010-01-05'
- duration: 5.0
+ duration: 6.0
name: Testing Yaml
product_uom: product.uom_day
project_id: project_project_developyamlproject0
- resource_ids:
- - resource_id: resource_resource_tester1
-
+ previous_phase_ids:
+ - project_phase_developyaml0
+ constraint_date_start :
+ constraint_date_end :
-
Compute Schedule of phases For One project
-
diff --git a/addons/project_long_term/test/schedule_phase_tasks.yml b/addons/project_long_term/test/schedule_phase_tasks.yml
index aa54fa1ac57..1526d04f933 100644
--- a/addons/project_long_term/test/schedule_phase_tasks.yml
+++ b/addons/project_long_term/test/schedule_phase_tasks.yml
@@ -23,12 +23,8 @@
state: draft
resource_ids:
- resource_id: project_long_term.resource_analyst
- useability: 80.0
- resource_id: project_long_term.resource_developer
- useability: 30.0
- resource_id: project_long_term.resource_designer
- useability: 30.0
-
-
Create the phase task 'Develop GUI for Server Configuration'
diff --git a/addons/project_long_term/test/test_schedule_phases_case2.yml b/addons/project_long_term/test/test_schedule_phases_case2.yml
index a381ecb045f..67a7332cf5b 100644
--- a/addons/project_long_term/test/test_schedule_phases_case2.yml
+++ b/addons/project_long_term/test/test_schedule_phases_case2.yml
@@ -23,6 +23,7 @@
hour_to: 16.0
name: Thursday
name: Working Time A
+
-
Creating a resource.calendar.attendance record
-
@@ -129,11 +130,19 @@
state: draft
total_hours: 10.0
total_hours: 10.0
+ members:
+ - project.res_users_analyst
+ - project.res_users_project_manager
+ - project.res_users_technical_leader
+ - project.res_users_developer
+ - project.res_users_designer
+ - project.res_users_tester
type_ids:
- project.project_tt_specification
- project.project_tt_development
- project.project_tt_testing
- project.project_tt_merge
+
-
I create a phase 'Initial Phase' for project 'Development and Testing'.
-
@@ -143,11 +152,6 @@
name: Initial Phase
product_uom: product.uom_day
project_id: project_project_project0
- resource_ids:
- - project_id: project_project_project0
- resource_id: resource_resource_resourcex0
- - project_id: project_project_project0
- resource_id: resource_resource_resourcey0
state: draft
-
I create first task 'Developing module' and assign 10h.
diff --git a/addons/project_long_term/test/test_schedule_tasks_case1.yml b/addons/project_long_term/test/test_schedule_tasks_case1.yml
new file mode 100644
index 00000000000..78bf5e318a4
--- /dev/null
+++ b/addons/project_long_term/test/test_schedule_tasks_case1.yml
@@ -0,0 +1,263 @@
+-
+ In order to test scheduling of tasks, I create four tasks with different sequences and schedule them.
+-
+ I create address for first user.
+-
+ !record {model: res.partner.address, id: res_partner_address_user0}:
+ name: User 1
+-
+ I create address for second user.
+-
+ !record {model: res.partner.address, id: res_partner_address_user1}:
+ name: User 2
+-
+ I create first user.
+-
+ !record {model: res.users, id: res_users_user0}:
+ address_id: res_partner_address_user0
+ company_id: base.main_company
+ context_lang: en_US
+ groups_id:
+ - base.group_partner_manager
+ - base.group_user
+ login: user1
+ name: User 1
+ password: user1
+-
+ I create second user.
+-
+ !record {model: res.users, id: res_users_user1}:
+ address_id: res_partner_address_user1
+ company_id: base.main_company
+ context_lang: en_US
+ groups_id:
+ - base.group_partner_manager
+ - base.group_user
+ login: user2
+ name: User 2
+ password: user2
+-
+ I create a Project.
+-
+ !record {model: project.project, id: project_project_projecta0}:
+ balance: 0.0
+ credit: 0.0
+ currency_id: base.EUR
+ debit: 0.0
+ effective_hours: 0.0
+ name: Project A
+ members:
+ - res_users_user0
+ - res_users_user1
+ phase_ids:
+ - date_start: '2011-01-06'
+ duration: 2.0
+ name: Phase A
+ product_uom: product.uom_day
+ state: draft
+ task_ids:
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task D
+ planned_hours: 5.0
+ remaining_hours: 5.0
+ state: draft
+ total_hours: 5.0
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task C
+ planned_hours: 5.0
+ remaining_hours: 5.0
+ sequence: 11
+ state: draft
+ total_hours: 5.0
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task B
+ planned_hours: 5.0
+ remaining_hours: 5.0
+ sequence: 13
+ state: draft
+ total_hours: 5.0
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task A
+ planned_hours: 5.0
+ remaining_hours: 5.0
+ sequence: 14
+ state: draft
+ total_hours: 5.0
+ planned_hours: 20.0
+ progress_rate: 0.0
+ quantity: 0.0
+ quantity_max: 0.0
+ state: open
+ tasks:
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task D
+ planned_hours: 5.0
+ remaining_hours: 5.0
+ state: draft
+ total_hours: 5.0
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task C
+ planned_hours: 5.0
+ remaining_hours: 5.0
+ sequence: 11
+ state: draft
+ total_hours: 5.0
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task B
+ planned_hours: 5.0
+ remaining_hours: 5.0
+ sequence: 13
+ state: draft
+ total_hours: 5.0
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task A
+ planned_hours: 5.0
+ remaining_hours: 5.0
+ sequence: 14
+ state: draft
+ total_hours: 5.0
+ total_hours: 15.0
+-
+ I create first task with highest sequence.
+-
+ !record {model: project.task, id: project_task_taska0}:
+ delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task A
+ planned_hours: 5.0
+ project_id: project_project_projecta0
+ remaining_hours: 5.0
+ sequence: 14
+ state: draft
+ total_hours: 5.0
+-
+ I create second task.
+-
+ !record {model: project.task, id: project_task_taskb0}:
+ delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task B
+ planned_hours: 5.0
+ project_id: project_project_projecta0
+ remaining_hours: 5.0
+ sequence: 13
+ state: draft
+ total_hours: 5.0
+-
+ I create third task.
+-
+ !record {model: project.task, id: project_task_taskc0}:
+ delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task C
+ planned_hours: 5.0
+ project_id: project_project_projecta0
+ remaining_hours: 5.0
+ sequence: 11
+ state: draft
+ total_hours: 5.0
+-
+ I create fourth task with lowest sequence.
+-
+ !record {model: project.task, id: project_task_taskd0}:
+ delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task D
+ planned_hours: 5.0
+ project_id: project_project_projecta0
+ remaining_hours: 5.0
+ state: draft
+ total_hours: 5.0
+-
+ Now I create a resource for first user.
+-
+ !record {model: resource.resource, id: resource_resource_user0}:
+ name: User 1
+ resource_type: user
+ time_efficiency: 1.0
+ user_id: res_users_user0
+-
+ I create a resource for second user.
+-
+ !record {model: resource.resource, id: resource_resource_user1}:
+ name: User 2
+ resource_type: user
+ time_efficiency: 1.0
+ user_id: res_users_user1
+-
+ Now I create one phase for the project.
+-
+ !record {model: project.phase, id: project_phase_phasea0}:
+ date_start: '2011-01-06'
+ duration: 2.0
+ name: Phase A
+ product_uom: product.uom_day
+ project_id: project_project_projecta0
+ resource_ids:
+ - project_id: project_project_projecta0
+ resource_id: resource_resource_user0
+ - project_id: project_project_projecta0
+ resource_id: resource_resource_user1
+ state: draft
+ task_ids:
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task D
+ planned_hours: 5.0
+ project_id: project_project_projecta0
+ remaining_hours: 5.0
+ state: draft
+ total_hours: 5.0
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task C
+ planned_hours: 5.0
+ project_id: project_project_projecta0
+ remaining_hours: 5.0
+ sequence: 11
+ state: draft
+ total_hours: 5.0
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task B
+ planned_hours: 5.0
+ project_id: project_project_projecta0
+ remaining_hours: 5.0
+ sequence: 13
+ state: draft
+ total_hours: 5.0
+ - delay_hours: 0.0
+ effective_hours: 0.0
+ name: Task A
+ planned_hours: 5.0
+ project_id: project_project_projecta0
+ remaining_hours: 5.0
+ sequence: 14
+ state: draft
+ total_hours: 5.0
+-
+ Now I create a record to schedule the tasks of project.
+-
+ !record {model: project.compute.tasks, id: project_compute_tasks0}:
+ project_id: project_project_projecta0
+-
+ I schedule the tasks.
+-
+ !python {model: project.compute.tasks}: |
+ self.compute_date(cr, uid, [ref("project_compute_tasks0")])
+-
+ I check that whether the tasks now allocated to respected resources or not.
+-
+ !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):
+ raise AssertionError("Tasks are not scheduled.")