[IMP]: Improve SQL report for Invoice.
[odoo/odoo.git] / addons / account / report / account_invoice_report_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3 <data>
4     <record id="view_account_invoice_report_tree" model="ir.ui.view">
5         <field name="name">account.invoice.report.tree</field>
6         <field name="model">account.invoice.report</field>
7         <field name="type">tree</field>
8         <field name="arch" type="xml">
9             <tree string="Invoices Statistics">
10                 <field name="date" invisible="1"/>
11                 <field name="user_id" invisible="1"/>
12                 <field name="year" invisible="1"/>
13                 <field name="day" invisible="1"/>
14                 <field name="month" invisible="1"/>
15                 <field name="type" invisible="1"/>
16                 <field name="company_id" invisible="1"/>
17                 <field name="partner_id" invisible="1"/>
18                 <field name="product_id" invisible="1"/>
19                 <field name="product_qty" invisible="1"/>
20                 <!--field name="delay" avg="Days to Close"/-->
21                 <field name="nbr" sum="# of Lines"/>
22                 <field name="price_average" avg="Average Price"/>
23                 <field name="price_total" sum="Total Price"/>
24                 <field name="state" invisible="1"/>
25                 <field name="payment_term" invisible="1"/>
26                 <field name="period_id" invisible="1"/>
27                 <field name="fiscal_position" invisible="1"/>
28                 <field name="currency_id" invisible="1"/>
29                 <field name="journal_id" invisible="1"/>
30                 <field name="date_due" invisible="1"/>
31                 <field name="address_contact_id" invisible="1"/>
32                 <field name="address_invoice_id" invisible="1"/>
33                 <field name="account_id" invisible="1"/>
34                 <field name="partner_bank" invisible="1"/>
35             </tree>
36         </field>
37     </record>
38
39     <record id="view_account_invoice_report_graph" model="ir.ui.view">
40          <field name="name">account.invoice.report.graph</field>
41          <field name="model">account.invoice.report</field>
42          <field name="type">graph</field>
43          <field name="arch" type="xml">
44              <graph string="Invoices Statistics" type="bar">
45                  <field name="product_id"/>
46                  <field name="price_total"/>
47              </graph>
48          </field>
49     </record>
50
51     <record id="view_account_invoice_report_search" model="ir.ui.view">
52         <field name="name">account.invoice.report.search</field>
53         <field name="model">account.invoice.report</field>
54         <field name="type">search</field>
55         <field name="arch" type="xml">
56             <search string="Invoices">
57                 <group>
58                         <filter icon="terp-account" string="This Year"
59                                     domain="[('date','&lt;=', time.strftime('%%Y-%%m-%%d')),('date','&gt;',(datetime.date.today()-datetime.timedelta(days=365)).strftime('%%Y-%%m-%%d'))]"
60                                     help="Invoices of the year"/>
61                         <filter icon="terp-account" string="This Month"
62                                         name="month"
63                                         domain="[('date','&lt;=', time.strftime('%%Y-%%m-%%d')), ('date','&gt;',(datetime.date.today()-datetime.timedelta(days=30)).strftime('%%Y-%%m-%%d'))]"
64                                         help="Invoices of this month"/>
65                         <filter icon="gtk-media-rewind"
66                                 string="    7 Days    "
67                                 separator="1"
68                                 domain="[('date','&lt;=', time.strftime('%%Y-%%m-%%d')), ('date','&gt;',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]"
69                                 help="Invoices during last 7 days"/>
70                         <separator orientation="vertical"/>
71                     <filter string="Draft"
72                                 icon="terp-account"
73                                 domain="[('state','=','draft')]"
74                                 help = "Draft tasks"/>
75                         <filter string="Pro-forma"
76                                         icon="terp-account"
77                                         domain="[('state','=','proforma'),('state','=','proforma2')]"
78                                         help = "Pro-forma tasks"/>
79                         <filter string="Current"
80                                         icon="terp-account"
81                                         domain="[('state', '=' ,'open')]"
82                                         help = "In progress tasks"/>
83                                         <separator orientation="vertical"/>
84                 <field name="user_id" widget="selection">
85
86                     <filter icon="terp-account"
87                                 string="My Invoices"
88                                 help = "My Invoices"
89                                 domain="[('user_id','=',uid)]" />
90                     <filter icon="terp-account"
91                                 string="Invoices Non Users"
92                                 help="Invoices Non Users"
93                                 domain="[('user_id','=',False)]"/>
94                 </field>
95                 <field name="product_id"/>
96                 <field name="partner_id"/>
97                                 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
98                                 </group>
99                 <newline/>
100                 <group expand="0" string="Extended options..." colspan="10" col="12">
101                         <filter string="Done"
102                                         icon="terp-account"
103                                         domain="[('state','=','paid')]"
104                                         help = "Done tasks"/>
105                         <filter string="Cancelled"
106                                 icon="terp-account"
107                                 domain="[('state', '=' ,'cancel')]"
108                                 help = "Cancelled tasks"/>
109                         <separator orientation="vertical"/>
110                         <field name="type"/>
111                         <field name="payment_term" widget="selection"/>
112                         <separator orientation="vertical"/>
113                         <field name="currency_id" widget="selection"/>
114                         <field name="journal_id" widget="selection"/>
115                         <newline/>
116                         <field name="address_contact_id"/>
117                         <field name="address_invoice_id"/>
118                         <separator orientation="vertical"/>
119                         <field name="account_id"/>
120                         <field name="partner_bank"/>
121                         <separator orientation="vertical"/>
122                         <field name="period_id" widget="selection"/>
123                         <field name="fiscal_position" widget="selection"/>
124                         <newline/>
125                                         <field name="date" string="Date Invoiced"/>
126                                         <separator orientation="vertical"/>
127                                         <field name="date_due"/>
128                 </group>
129                 <newline/>
130                 <group expand="1" string="Group By..." colspan="10" col="12">
131                     <filter string="Salesman" name='User' icon="terp-account" context="{'group_by':'user_id'}"/>
132                     <filter string="Product" icon="terp-account" context="{'group_by':'product_id'}"/>
133                     <filter string="Partner" icon="terp-account" context="{'group_by':'partner_id'}"/>
134                     <filter string="Company" icon="terp-account" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
135                     <separator orientation="vertical"/>
136                     <filter string="State" icon="terp-account" context="{'group_by':'state'}"/>
137                     <filter string="Type" icon="terp-account" context="{'group_by':'type'}"/>
138                     <filter string="Payment Term" icon="terp-account" context="{'group_by':'payment_term'}"/>
139                     <separator orientation="vertical"/>
140                     <filter string="Currency" icon="terp-account" context="{'group_by':'currency_id'}"/>
141                     <filter string="Journal" icon="terp-account" context="{'group_by':'journal_id'}"/>
142                     <separator orientation="vertical"/>
143                     <filter string="Account" icon="terp-account" context="{'group_by':'account_id'}"/>
144                     <filter string="Bank Account" icon="terp-account" context="{'group_by':'partner_bank'}"/>
145                     <newline/>
146                     <filter string="Contact Address" icon="terp-account" context="{'group_by':'address_contact_id'}"/>
147                     <filter string="Invoice Address" icon="terp-account" context="{'group_by':'address_invoice_id'}"/>
148                     <separator orientation="vertical"/>
149                     <filter string="Force Period" icon="terp-account" context="{'group_by':'period_id'}"/>
150                     <filter string="Fiscal Position" icon="terp-account" context="{'group_by':'fiscal_position'}"/>
151                     <separator orientation="vertical"/>
152                     <filter string="Day" icon="terp-account" context="{'group_by':'day'}"/>
153                     <filter string="Month" icon="terp-account" context="{'group_by':'month'}"/>
154                     <filter string="Year" icon="terp-account" context="{'group_by':'year'}"/>
155                 </group>
156             </search>
157         </field>
158     </record>
159
160     <record id="action_account_invoice_report_all" model="ir.actions.act_window">
161         <field name="name">Invoices</field>
162         <field name="res_model">account.invoice.report</field>
163         <field name="view_type">form</field>
164         <field name="view_mode">tree,graph</field>
165         <field name="context">{'search_default_month':1,'search_default_User':1,'group_by_no_leaf':1,'group_by':[]}</field>
166         <field name="search_view_id" ref="view_account_invoice_report_search"/>
167     </record>
168
169     <menuitem action="action_account_invoice_report_all" id="menu_action_account_invoice_report_all" parent="account.menu_finance_reporting" sequence="0"/>
170
171 </data>
172 </openerp>