diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index 3ef24386c2d..d865823e9cd 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -668,7 +668,7 @@
-
+
-
+
1
@@ -26,7 +26,7 @@
4
Merge
-
+
1
@@ -39,7 +39,6 @@
10
Study + Prototype
-
@@ -47,7 +46,6 @@
20
Specific Developements
-
@@ -55,11 +53,10 @@
30
Install, data import, configuration
-
-
+
38.0
diff --git a/addons/project_caldav/__terp__.py b/addons/project_caldav/__terp__.py
index 0cd26f06334..1ac69933623 100644
--- a/addons/project_caldav/__terp__.py
+++ b/addons/project_caldav/__terp__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
##############################################################################
-#
+#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2010 Tiny SPRL ().
#
@@ -15,22 +15,22 @@
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
+# along with this program. If not, see .
#
##############################################################################
{
- "name" : "Caldav task management",
- "version" : "1.0",
- "author" : "Tiny",
- "category" : "Generic Modules/Others",
- "description": """ Synchronize between Project task and Caldav Vtodo.""",
- "depends" : ["project", "caldav"],
- "init_xml" : ["project_caldav_data.xml"],
- "demo_xml" : [],
- "update_xml" : ["project_caldav_view.xml",
- "project_caldav_wizard.xml"],
- "active": False,
- "website": "http://www.openerp.com",
- "installable": True,
+ "name" : "Caldav task management",
+ "version" : "1.0",
+ "author" : "Tiny",
+ "category" : "Generic Modules/Others",
+ "description": """ Synchronize between Project task and Caldav Vtodo.""",
+ "depends" : ["project", "caldav", "base_calendar"],
+ "init_xml" : ["project_caldav_data.xml"],
+ "demo_xml" : [],
+ "update_xml" : ["project_caldav_view.xml",
+ "project_caldav_wizard.xml"],
+ "active": False,
+ "website": "http://www.openerp.com",
+ "installable": True,
}
diff --git a/addons/project_caldav/project_caldav_view.xml b/addons/project_caldav/project_caldav_view.xml
index d4fc7115491..541cc3c396e 100644
--- a/addons/project_caldav/project_caldav_view.xml
+++ b/addons/project_caldav/project_caldav_view.xml
@@ -1,7 +1,7 @@
-
+
project.task.caldav.form
project.task
@@ -46,8 +46,8 @@
-
-
+
+
project.task.caldav.form1
project.task
@@ -58,8 +58,8 @@
-
-
+
+
project.task.caldav.form2
project.task
@@ -68,8 +68,10 @@
-
+-->
-
+
project.task.caldav.form3
project.task
@@ -94,6 +96,6 @@
-
+
diff --git a/addons/project_issue/__terp__.py b/addons/project_issue/__terp__.py
index 05a94ba809b..03ec9e22285 100644
--- a/addons/project_issue/__terp__.py
+++ b/addons/project_issue/__terp__.py
@@ -30,7 +30,11 @@
""",
'author': 'Tiny',
'website': 'http://www.openerp.com',
- 'depends': ['crm','project'],
+ 'depends': [
+ 'crm',
+ 'project',
+ 'hr_timesheet_sheet',
+ ],
'init_xml': [
'project_issue_data.xml'
],
diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py
index cfb6961d112..7877e76a8dd 100644
--- a/addons/project_issue/project_issue.py
+++ b/addons/project_issue/project_issue.py
@@ -76,8 +76,6 @@ class project_issue(osv.osv):
_columns = {
'date_closed': fields.datetime('Closed', readonly=True),
'date': fields.datetime('Date'),
- 'ref' : fields.reference('Reference', selection=crm._links_get, size=128),
- 'ref2' : fields.reference('Reference 2', selection=crm._links_get, size=128),
'canal_id': fields.many2one('res.partner.canal', 'Channel',help="The channels represent the different communication modes available with the customer." \
" With each commercial opportunity, you can indicate the canall which is this opportunity source."),
'planned_revenue': fields.float('Planned Revenue'),
@@ -95,12 +93,16 @@ class project_issue(osv.osv):
'stage_id': fields.many2one ('crm.case.stage', 'Stage', domain="[('object_id.model', '=', 'project.issue')]"),
'project_id':fields.many2one('project.project', 'Project'),
'duration': fields.float('Duration'),
- 'probability': fields.float('Probability (%)'),
'task_id': fields.many2one('project.task', 'Task', domain="[('project_id','=',project_id)]"),
'day_open': fields.function(_compute_openday, string='Days to Open', \
method=True, type="integer", store=True),
'day_close': fields.function(_compute_closeday, string='Days to Close', \
method=True, type="integer", store=True),
+ 'assigned_to' : fields.many2one('res.users', 'Assigned to'),
+ 'timesheet_ids' : fields.one2many('hr.analytic.timesheet', 'issue_id', 'Timesheets'),
+ 'analytic_account_id' : fields.many2one('account.analytic.account', 'Analytic Account',
+ domain="[('partner_id', '=', partner_id)]",
+ required=True),
}
def _get_project(self, cr, uid, context):
@@ -134,11 +136,25 @@ class project_issue(osv.osv):
return {'value':{'probability':stage.probability}}
_defaults = {
- 'project_id':_get_project,
- 'probability':lambda *a:0.0,
- 'planned_cost':lambda *a:0.0,
- 'planned_revenue':lambda *a:0.0,
- }
+ 'project_id':_get_project,
+ }
project_issue()
+class account_analytic_line(osv.osv):
+ _inherit = 'account.analytic.line'
+ _columns = {
+ 'create_date' : fields.datetime('Create Date', readonly=True),
+ }
+
+account_analytic_line()
+
+class hr_analytic_issue(osv.osv):
+ _inherit = 'hr.analytic.timesheet'
+
+ _columns = {
+ 'issue_id' : fields.many2one('project.issue', 'Issue'),
+ }
+
+hr_analytic_issue()
+
diff --git a/addons/project_issue/project_issue_view.xml b/addons/project_issue/project_issue_view.xml
index 8d6bbae0b5a..57c1bf4fa43 100644
--- a/addons/project_issue/project_issue_view.xml
+++ b/addons/project_issue/project_issue_view.xml
@@ -1,308 +1,301 @@
+
+ Issue Categories
+ crm.case.categ
+ form
+
+ [('object_id.model', '=', 'project.issue')]
+ {'object_id':'project.issue'}
+
- # ------------------------------------------------------
- # Issue Categories
- # ------------------------------------------------------
+
+ Issue Stages
+ crm.case.stage
+ form
+
+ [('object_id.model', '=', 'project.issue')]
+ {'object_id':'project.issue'}
+
+
-
-
- Issue Categories
- crm.case.categ
- form
-
- [('object_id.model', '=', 'project.issue')]
- {'object_id':'project.issue'}
-
- # ------------------------------------------------------
- # Stage
- # ------------------------------------------------------
-
- Issue Stages
- crm.case.stage
- form
-
- [('object_id.model', '=', 'project.issue')]
- {'object_id':'project.issue'}
-
-
-
-
- Project Issue Tracker Form
- project.issue
- form
-
-
-
-
-
- Project Issue Tracker Tree
- project.issue
- tree
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
- Project Issue Tracker Search
- project.issue
- search
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Project Issue Tracker Tree
+ project.issue
+ tree
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ Project Issue Tracker Search
+ project.issue
+ search
+
+
+
+
+
-
- Project Issue Tracker Calendar
- project.issue
- calendar
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- # ------------------------------------------------------
- # Feature Requests
- # ------------------------------------------------------
+
+ Project Issue Tracker Calendar
+ project.issue
+ calendar
+
+
+
+
+
+
+
+
-
- Project Issue- Feature Tracker Tree
- project.issue
- tree
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ # ------------------------------------------------------
+ # Feature Requests
+ # ------------------------------------------------------
-
- Project Issue- Feature Tracker Search
- project.issue
- search
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ Project Issue- Feature Tracker Tree
+ project.issue
+ tree
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Project Issue- Feature Tracker Search
+ project.issue
+ search
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/project_retro_planning/project_retro_planning.py b/addons/project_retro_planning/project_retro_planning.py
index 0f35ddb4338..60c8279f16f 100644
--- a/addons/project_retro_planning/project_retro_planning.py
+++ b/addons/project_retro_planning/project_retro_planning.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
##############################################################################
-#
+#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2010 Tiny SPRL ().
#
@@ -15,7 +15,7 @@
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
+# along with this program. If not, see .
#
##############################################################################
@@ -29,12 +29,12 @@ class project_project(osv.osv):
_description = 'project.project'
def write(self, cr, uid, ids,vals, *args, **kwargs):
- if 'date_end' in vals and vals['date_end']:
+ if 'date' in vals and vals['date']:
data_project = self.browse(cr,uid,ids)
for prj in data_project:
- c= date(*time.strptime(vals['date_end'],'%Y-%m-%d')[:3])
- if prj.date_end:
- d= date(*time.strptime(prj.date_end,'%Y-%m-%d')[:3])
+ c= date(*time.strptime(vals['date'],'%Y-%m-%d')[:3])
+ if prj.date:
+ d= date(*time.strptime(prj.date,'%Y-%m-%d')[:3])
for task in prj.tasks:
start_dt = (datetime(*time.strptime(task.date_start,'%Y-%m-%d %H:%M:%S')[:6])+(c-d)).strftime('%Y-%m-%d %H:%M:%S')
if task.date_deadline:
@@ -42,7 +42,7 @@ class project_project(osv.osv):
self.pool.get('project.task').write(cr,uid,task.id,{'date_start':start_dt, 'date_deadline':deadline_dt})
else:
self.pool.get('project.task').write(cr,uid,task.id,{'date_start':start_dt})
- return super(project_project,self).write(cr, uid, ids,vals, *args, **kwargs)
+ return super(project_project,self).write(cr, uid, ids, vals, *args, **kwargs)
project_project()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: