diff --git a/addons/idea/idea.py b/addons/idea/idea.py index 171ff85505f..e1a522b6381 100644 --- a/addons/idea/idea.py +++ b/addons/idea/idea.py @@ -304,7 +304,7 @@ class idea_vote(osv.osv): _rec_name = 'score' _columns = { - 'user_id': fields.many2one('res.users', 'By user', readonly="True"), + 'user_id': fields.many2one('res.users', 'User', readonly="True"), 'idea_id': fields.many2one('idea.idea', 'Idea', readonly="True", ondelete='cascade'), 'score': fields.selection(VoteValues, 'Vote Status', readonly="True"), 'date': fields.datetime('Date', readonly="True"), diff --git a/addons/idea/idea_view.xml b/addons/idea/idea_view.xml index 0f69931ca43..6b728560277 100644 --- a/addons/idea/idea_view.xml +++ b/addons/idea/idea_view.xml @@ -149,8 +149,22 @@ + + + + - + @@ -371,6 +385,7 @@ form tree,form + {'search_default_week':1} diff --git a/addons/lunch/__openerp__.py b/addons/lunch/__openerp__.py index 831bc45d122..46346889834 100644 --- a/addons/lunch/__openerp__.py +++ b/addons/lunch/__openerp__.py @@ -45,12 +45,13 @@ 'wizard/lunch_cashbox_clean_view.xml', 'lunch_view.xml', 'lunch_report.xml', + 'report/report_lunch_order_view.xml', #'process/lunch_process.xml' ], "demo_xml": ['lunch_demo.xml', ], "test": ['test/test_lunch.yml' - ], + ], "installable": True, } diff --git a/addons/lunch/report/__init__.py b/addons/lunch/report/__init__.py index acf05a0ca2a..4a56869bf83 100644 --- a/addons/lunch/report/__init__.py +++ b/addons/lunch/report/__init__.py @@ -1,6 +1,6 @@ # -*- encoding: utf-8 -*- ############################################################################## -# +# # OpenERP, Open Source Management Solution # Copyright (C) 2004-2009 Tiny SPRL (). # @@ -15,10 +15,11 @@ # 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 . # ############################################################################## import order +import report_lunch_order # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/lunch/report/report_lunch_order.py b/addons/lunch/report/report_lunch_order.py new file mode 100644 index 00000000000..51fa3bf841b --- /dev/null +++ b/addons/lunch/report/report_lunch_order.py @@ -0,0 +1,66 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2004-2010 Tiny SPRL (). +# +# 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 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 . +# +############################################################################## + +import tools +from osv import fields,osv + +class report_lunch_order(osv.osv): + _name = "report.lunch.order" + _description = "Lunch Orders Statistics" + _auto = False + _rec_name = 'date' + _columns = { + 'date': fields.date('Date Order', readonly=True), + 'year': fields.char('Year', size=4, readonly=True), + 'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), + ('05','May'), ('06','June'), ('07','July'), ('08','August'), ('09','September'), + ('10','October'), ('11','November'), ('12','December')], 'Month',readonly=True), + 'day': fields.char('Day', size=128, readonly=True), + 'user_id': fields.many2one('res.users', 'User Name'), + 'box_name': fields.char('Name', size=30), + 'price_total':fields.float('Total Price', readonly=True), + } + _order = 'date desc' + def init(self, cr): + tools.drop_view_if_exists(cr, 'report_lunch_order') + cr.execute(""" + create or replace view report_lunch_order as ( + select + min(lo.id) as id, + lo.date as date, + to_char(lo.date, 'YYYY') as year, + to_char(lo.date, 'MM') as month, + to_char(lo.date, 'YYYY-MM-DD') as day, + lo.user_id, + cm.name as box_name, + sum(lp.price) as price_total + + from + lunch_order as lo + left join lunch_cashmove as cm on (cm.id = lo.cashmove) + left join lunch_cashbox as lc on (lc.id = cm.box) + left join lunch_product as lp on (lo.product = lp.id) + + group by + lo.date,lo.user_id,cm.name + ) + """) +report_lunch_order() \ No newline at end of file diff --git a/addons/lunch/report/report_lunch_order_view.xml b/addons/lunch/report/report_lunch_order_view.xml new file mode 100644 index 00000000000..25377799204 --- /dev/null +++ b/addons/lunch/report/report_lunch_order_view.xml @@ -0,0 +1,69 @@ + + + + + + report.lunch.order.tree + report.lunch.order + tree + + + + + + + + + + + + + + + report.lunch.order.search + report.lunch.order + search + + + + + + + + + + + + + + + + + + + + + + + Lunch Order Analysis + report.lunch.order + form + tree + + {'search_default_month':1,'search_default_User':1} + + + + + + \ No newline at end of file