Joel Grand-Guillaume
12 years ago
9 changed files with 406 additions and 337 deletions
-
32analytic_hours_block/__init__.py
-
82analytic_hours_block/__openerp__.py
-
368analytic_hours_block/hours_block.py
-
10analytic_hours_block/hours_block_menu.xml
-
113analytic_hours_block/hours_block_view.xml
-
34analytic_hours_block/report/__init__.py
-
60analytic_hours_block/report/hours_block.py
-
42analytic_hours_block/report/hours_block.rml
-
2analytic_hours_block/security/hours_block_security.xml
@ -1,27 +1,21 @@ |
|||
# -*- coding: utf-8 -*- |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# @author Renaville Vincent, ported by Joel Grand-Guillaume |
|||
# WARNING: This program as such is intended to be used by professional |
|||
# programmers who take the whole responsability of assessing all potential |
|||
# consequences resulting from its eventual inadequacies and bugs |
|||
# End users who are looking for a ready-to-use solution with commercial |
|||
# garantees and support are strongly adviced to contract a Free Software |
|||
# Service Company |
|||
# Author: Vincent Renaville, ported by Joel Grand-Guillaume |
|||
# Copyright 2010-2012 Camptocamp SA |
|||
# |
|||
# This program is Free Software; you can redistribute it and/or |
|||
# modify it under the terms of the GNU General Public License |
|||
# as published by the Free Software Foundation; either version 2 |
|||
# of the License, or (at your option) any later version. |
|||
# This program is free software: you can redistribute it and/or modify |
|||
# it under the terms of the GNU Affero General Public License as |
|||
# published by the Free Software Foundation, either version 3 of the |
|||
# License, or (at your option) any later version. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU Affero General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with this program; if not, write to the Free Software |
|||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
|||
# You should have received a copy of the GNU Affero General Public License |
|||
# along with this program. If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
import hours_block |
|||
|
@ -1,60 +1,54 @@ |
|||
# -*- coding: utf-8 -*- |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# Copyright (c) 2011 Camptocamp SA (http://www.camptocamp.com) |
|||
# All Right Reserved |
|||
# Author: Vincent Renaville, ported by Joel Grand-Guillaume |
|||
# Copyright 2010-2012 Camptocamp SA |
|||
# |
|||
# Author : Joël Grand-Guillaume (Camptocamp) |
|||
# This program is free software: you can redistribute it and/or modify |
|||
# it under the terms of the GNU Affero General Public License as |
|||
# published by the Free Software Foundation, either version 3 of the |
|||
# License, or (at your option) any later version. |
|||
# |
|||
# WARNING: This program as such is intended to be used by professional |
|||
# programmers who take the whole responsability of assessing all potential |
|||
# consequences resulting from its eventual inadequacies and bugs |
|||
# End users who are looking for a ready-to-use solution with commercial |
|||
# garantees and support are strongly adviced to contract a Free Software |
|||
# Service Company |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU Affero General Public License for more details. |
|||
# |
|||
# This program is Free Software; you can redistribute it and/or |
|||
# modify it under the terms of the GNU General Public License |
|||
# as published by the Free Software Foundation; either version 2 |
|||
# of the License, or (at your option) any later version. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with this program; if not, write to the Free Software |
|||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
|||
# You should have received a copy of the GNU Affero General Public License |
|||
# along with this program. If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
|
|||
{ |
|||
"name" : "Project Hours Blocks Management", |
|||
"description" : """ |
|||
"name": "Project Hours Blocks Management", |
|||
"description": """ |
|||
Project Hours Blocks Management |
|||
=============================== |
|||
|
|||
This module allows you to handle hours blocks, to follow for example the user support contracts. |
|||
This means, you sell a product of type "hours block" then you input the spent hours on the hours block and |
|||
This module allows you to handle hours blocks, |
|||
to follow for example the user support contracts. |
|||
This means, you sell a product of type "hours block" |
|||
then you input the spent hours on the hours block and |
|||
you can track and follow how much has been used. |
|||
|
|||
""", |
|||
"version" : "1.2", |
|||
"author" : "Camptocamp", |
|||
"category" : "Generic Modules/Projects & Services", |
|||
"version": "1.3", |
|||
"author": "Camptocamp", |
|||
"license": 'AGPL-3', |
|||
"category": "Generic Modules/Projects & Services", |
|||
"website": "http://www.camptocamp.com", |
|||
"depends" : [ |
|||
"account", |
|||
"hr_timesheet_invoice", |
|||
"analytic" |
|||
], |
|||
"init_xml" : [], |
|||
"update_xml" : [ |
|||
"hours_block_view.xml", |
|||
"hours_block_menu.xml", |
|||
"report.xml", |
|||
"security/hours_block_security.xml", |
|||
"security/ir.model.access.csv", |
|||
], |
|||
"depends": [ |
|||
"account", |
|||
"hr_timesheet_invoice", |
|||
"analytic" |
|||
], |
|||
"data": [ |
|||
"hours_block_view.xml", |
|||
"hours_block_menu.xml", |
|||
"report.xml", |
|||
"security/hours_block_security.xml", |
|||
"security/ir.model.access.csv", |
|||
], |
|||
"active": False, |
|||
"installable": False |
|||
"installable": True |
|||
} |
@ -1,27 +1,21 @@ |
|||
# -*- encoding: utf-8 -*- |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# Author: Vincent Renaville, ported by Joel Grand-Guillaume |
|||
# Copyright 2010-2012 Camptocamp SA |
|||
# |
|||
# WARNING: This program as such is intended to be used by professional |
|||
# programmers who take the whole responsability of assessing all potential |
|||
# consequences resulting from its eventual inadequacies and bugs |
|||
# End users who are looking for a ready-to-use solution with commercial |
|||
# garantees and support are strongly adviced to contract a Free Software |
|||
# Service Company |
|||
# This program is free software: you can redistribute it and/or modify |
|||
# it under the terms of the GNU Affero General Public License as |
|||
# published by the Free Software Foundation, either version 3 of the |
|||
# License, or (at your option) any later version. |
|||
# |
|||
# This program is Free Software; you can redistribute it and/or |
|||
# modify it under the terms of the GNU General Public License |
|||
# as published by the Free Software Foundation; either version 2 |
|||
# of the License, or (at your option) any later version. |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU Affero General Public License for more details. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with this program; if not, write to the Free Software |
|||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
|||
# You should have received a copy of the GNU Affero General Public License |
|||
# along with this program. If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
import hours_block |
|||
import hours_block |
@ -1,59 +1,47 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# Copyright (c) 2005-2006 TINY SPRL. (http://tiny.be) All Rights Reserved. |
|||
# Author: Vincent Renaville, ported by Joel Grand-Guillaume |
|||
# Copyright 2010-2012 Camptocamp SA |
|||
# |
|||
# WARNING: This program as such is intended to be used by professional |
|||
# programmers who take the whole responsability of assessing all potential |
|||
# consequences resulting from its eventual inadequacies and bugs |
|||
# End users who are looking for a ready-to-use solution with commercial |
|||
# garantees and support are strongly adviced to contract a Free Software |
|||
# Service Company |
|||
# This program is free software: you can redistribute it and/or modify |
|||
# it under the terms of the GNU Affero General Public License as |
|||
# published by the Free Software Foundation, either version 3 of the |
|||
# License, or (at your option) any later version. |
|||
# |
|||
# This program is Free Software; you can redistribute it and/or |
|||
# modify it under the terms of the GNU General Public License |
|||
# as published by the Free Software Foundation; either version 2 |
|||
# of the License, or (at your option) any later version. |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU Affero General Public License for more details. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with this program; if not, write to the Free Software |
|||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
|||
# You should have received a copy of the GNU Affero General Public License |
|||
# along with this program. If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
|
|||
import time |
|||
from report import report_sxw |
|||
|
|||
#import xml.dom.minidom |
|||
#import re |
|||
from openerp.report import report_sxw |
|||
from openerp.tools import DEFAULT_SERVER_DATE_FORMAT |
|||
|
|||
|
|||
class account_hours_block(report_sxw.rml_parse): |
|||
def __init__(self, cr, uid, name, context=None): |
|||
super(account_hours_block, self).__init__(cr, uid, name, context) |
|||
super(account_hours_block, self).__init__(cr, uid, name, context=context) |
|||
self.localcontext.update({ |
|||
'time': time, |
|||
'format_date': self._get_and_change_date_format_for_swiss, |
|||
'date_format': DEFAULT_SERVER_DATE_FORMAT, |
|||
'analytic_lines': self._get_analytic_lines, |
|||
}) |
|||
self.context = context |
|||
|
|||
def _get_analytic_lines(self, hours_block): |
|||
al_pool = self.pool.get('account.analytic.line') |
|||
al_ids = al_pool.search(self.cr, self.uid, |
|||
[['invoice_id', '=', hours_block.invoice_id.id]], |
|||
order='date desc') |
|||
res = al_pool.browse(self.cr, self.uid, al_ids) |
|||
return res |
|||
|
|||
def _get_and_change_date_format_for_swiss(self, date_to_format): |
|||
date_formatted = '' |
|||
if date_to_format: |
|||
date_formatted = strptime(date_to_format, '%Y-%m-%d').strftime('%d.%m.%Y') |
|||
return date_formatted |
|||
al_ids = al_pool.search( |
|||
self.cr, |
|||
self.uid, |
|||
[('invoice_id', '=', hours_block.invoice_id.id)], |
|||
order='date desc', |
|||
context=self.context) |
|||
return al_pool.browse(self.cr, self.uid, al_ids, context=self.context) |
|||
|
|||
report_sxw.report_sxw('report.account.hours.block', 'account.hours.block', 'addons/analytic_hours_block/report/hours_block.rml', parser=account_hours_block) |
Write
Preview
Loading…
Cancel
Save
Reference in new issue