[MERGE] merge with latest stable
[odoo/odoo.git] / addons / account_budget / wizard / account_budget_analytic.py
1 # -*- coding: utf-8 -*-
2 ##############################################################################
3 #
4 #    OpenERP, Open Source Management Solution
5 #    Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
6 #
7 #    This program is free software: you can redistribute it and/or modify
8 #    it under the terms of the GNU Affero General Public License as
9 #    published by the Free Software Foundation, either version 3 of the
10 #    License, or (at your option) any later version.
11 #
12 #    This program is distributed in the hope that it will be useful,
13 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
14 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 #    GNU Affero General Public License for more details.
16 #
17 #    You should have received a copy of the GNU Affero General Public License
18 #    along with this program.  If not, see <http://www.gnu.org/licenses/>.
19 #
20 ##############################################################################
21 import time
22
23 from osv import fields, osv
24
25 class account_budget_analytic(osv.osv_memory):
26
27     _name = 'account.budget.analytic'
28     _description = 'Account Budget report for analytic account'
29     _columns = {
30         'date_from': fields.date('Start of period', required=True),
31         'date_to': fields.date('End of period', required=True),
32     }
33     _defaults= {
34         'date_from': lambda *a: time.strftime('%Y-01-01'),
35         'date_to': lambda *a: time.strftime('%Y-%m-%d'),
36     }
37
38     def check_report(self, cr, uid, ids, context=None):
39         datas = {}
40         if context is None:
41             context = {}
42         data = self.read(cr, uid, ids, context=context)[0]
43         datas = {
44              'ids': context.get('active_ids',[]),
45              'model': 'account.analytic.account',
46              'form': data
47         }
48         return {
49             'type': 'ir.actions.report.xml',
50             'report_name': 'account.analytic.account.budget',
51             'datas': datas,
52         }
53
54 account_budget_analytic()
55
56 # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: