[FIX] sale : Make Invoice button set to invisible when invoiced.
[odoo/odoo.git] / addons / sale / sale_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3     <data>
4         <menuitem icon="terp-partner" id="base.menu_base_partner" name="Sales" sequence="0" groups="sale.group_sale_user"/>
5         <menuitem id="base.menu_sales" name="Sales" parent="base.menu_base_partner" sequence="1"/>
6
7         <menuitem id="base.menu_product" name="Products" parent="base.menu_base_partner" sequence="9"/>
8         <menuitem action="product.product_normal_action" id="product.menu_products" parent="base.menu_product" sequence="1"/>
9
10         <record id="view_shop_form" model="ir.ui.view">
11             <field name="name">sale.shop</field>
12             <field name="model">sale.shop</field>
13             <field name="type">form</field>
14             <field name="arch" type="xml">
15                 <form string="Sale Shop">
16                     <field name="name" select="1"/>
17                     <field name="warehouse_id" required="1" select="1" widget="selection"/>
18                     <field name="company_id" widget='selection'/>
19                     <separator colspan="4" string="Accounting"/>
20                     <field name="payment_default_id"/>
21                     <field domain="[('type','=','sale')]" name="pricelist_id" select="1"/>
22                     <field name="project_id" select="1"/>
23                 </form>
24             </field>
25         </record>
26         <record id="view_shop_tree" model="ir.ui.view">
27             <field name="name">sale.shop</field>
28             <field name="model">sale.shop</field>
29             <field name="type">tree</field>
30             <field name="arch" type="xml">
31                 <tree string="Sale Shop">
32                     <field name="name"/>
33                     <field name="warehouse_id"/>
34                     <field name="pricelist_id"/>
35                     <field name="project_id"/>
36                 </tree>
37             </field>
38         </record>
39
40         <record id="action_shop_form" model="ir.actions.act_window">
41             <field name="name">Shop</field>
42             <field name="type">ir.actions.act_window</field>
43             <field name="res_model">sale.shop</field>
44             <field name="view_type">form</field>
45             <field name="view_mode">tree,form</field>
46             <field name="view_id" ref="view_shop_tree"/>
47         </record>
48
49         <menuitem action="action_shop_form" id="menu_action_shop_form"
50             parent="product.prod_config_main" sequence="0"
51             groups="base.group_extended"/>
52
53         <record id="view_sale_order_calendar" model="ir.ui.view">
54             <field name="name">sale.order.calendar</field>
55             <field name="model">sale.order</field>
56             <field name="type">calendar</field>
57             <field name="arch" type="xml">
58                 <calendar string="Sales orders" color="state" date_start="date_order">
59                     <field name="partner_id"/>
60                     <field name="amount_total"/>
61                 </calendar>
62             </field>
63         </record>
64         <record model="ir.ui.view" id="view_sale_order_graph">
65             <field name="name">sale.order.graph</field>
66             <field name="model">sale.order</field>
67             <field name="type">graph</field>
68             <field name="arch" type="xml">
69                 <graph string="Sales orders" type="bar">
70                     <field name="partner_id"/>
71                     <field name="amount_total" operator="+"/>
72                 </graph>
73             </field>
74         </record>
75
76         <record id="view_order_tree" model="ir.ui.view">
77             <field name="name">sale.order.tree</field>
78             <field name="model">sale.order</field>
79             <field name="type">tree</field>
80             <field name="arch" type="xml">
81                 <tree string="Sales orders">
82                     <field name="date_order"/>
83                     <field name="name"/>
84                     <field name="partner_id"/>
85                     <field name="partner_shipping_id"/>
86                     <field name="user_id" />
87                     <field name="picked_rate" widget="progressbar"/>
88                     <field name="invoiced_rate" widget="progressbar"/>
89                     <field name="amount_untaxed" sum="Total Untaxed amount"/>
90                     <field name="amount_total" sum="Total amount"/>
91                     <field name="state"/>
92                 </tree>
93             </field>
94         </record>
95
96         <act_window name="Deposit"
97            res_model="sale.advance.payment.inv"
98            src_model="sale.order"
99            view_mode="form"
100            target="new"
101            key2="client_action_multi"
102            id="action_view_sale_advance_payment_inv"/>
103
104         <record id="view_order_form" model="ir.ui.view">
105             <field name="name">sale.order.form</field>
106             <field name="model">sale.order</field>
107             <field name="type">form</field>
108             <field name="arch" type="xml">
109                 <form string="Sales order">
110                     <group col="6" colspan="4">
111                         <field name="name"/>
112                         <field name="date_order"/>
113                         <field name="shipped"/>
114                         <field name="client_order_ref"/>
115                         <field name="shop_id" on_change="onchange_shop_id(shop_id)" widget="selection"/>
116                         <field name="invoiced"/>
117                     </group>
118                     <notebook colspan="5">
119                         <page string="Sale Order">
120                             <field name="partner_id" on_change="onchange_partner_id(partner_id)" required="1"/>
121                             <field domain="[('partner_id','=',partner_id)]" name="partner_order_id"/>
122                             <field domain="[('partner_id','=',partner_id)]" name="partner_invoice_id"/>
123                             <field domain="[('partner_id','=',partner_id)]" name="partner_shipping_id"/>
124                             <field domain="[('type','=','sale')]" name="pricelist_id" groups="base.group_extended"/>
125                             <field name="project_id"
126                                 context="{'partner_id':partner_id, 'contact_id':partner_order_id, 'pricelist_id':pricelist_id, 'default_name':name}"
127                                 groups="base.group_extended"/>
128                             <newline/>
129                             <field colspan="4" mode="tree,form,graph" name="order_line" nolabel="1" widget="one2many_list">
130                                 <form string="Sale Order Lines">
131                                     <notebook>
132                                         <page string="Order Line">
133                                             <field colspan="4"
134                                                 context="partner_id=parent.partner_id,quantity=product_uom_qty,pricelist=parent.pricelist_id,shop=parent.shop_id,uom=product_uom"
135                                                 name="product_id"
136                                                 on_change="product_id_change(parent.pricelist_id,product_id,product_uom_qty,product_uom,product_uos_qty,product_uos,name,parent.partner_id, 'lang' in context and context['lang'], True, parent.date_order, product_packaging, parent.fiscal_position, False)"
137                                                 />
138                                             <field
139                                                 context="partner_id=parent.partner_id,quantity=product_uom_qty,pricelist=parent.pricelist_id,shop=parent.shop_id,uom=product_uom"
140                                                 name="product_uom_qty"
141                                                 on_change="product_id_change(parent.pricelist_id,product_id,product_uom_qty,product_uom,product_uos_qty,product_uos,name,parent.partner_id, 'lang' in context and context['lang'], False, parent.date_order, product_packaging, parent.fiscal_position, True)"
142                                                 />
143                                                 <field groups="product.group_uos" name="product_uos_qty"/>
144                                             <field name="product_uom"
145                                                 on_change="product_uom_change(parent.pricelist_id,product_id,product_uom_qty,product_uom,product_uos_qty,product_uos,name,parent.partner_id, 'lang' in context and context['lang'], False, parent.date_order)"/>
146                                             <field
147                                                 name="product_packaging"
148                                                 context="partner_id=parent.partner_id,quantity=product_uom_qty,pricelist=parent.pricelist_id,shop=parent.shop_id,uom=product_uom"
149                                                 on_change="product_id_change(parent.pricelist_id,product_id,product_uom_qty,product_uom,product_uos_qty,product_uos,name,parent.partner_id, 'lang' in context and context['lang'], False, parent.date_order, product_packaging, parent.fiscal_position, False)"
150                                                 domain="[('product_id','=',product_id)]"
151                                                 groups="base.group_extended"/>
152
153                                             <field name="company_id" groups="base.group_multi_company" widget="selection"/>
154                                             <field colspan="4" name="name"/>
155                                             <field name="price_unit"/>
156                                             <field name="discount"/>
157                                             <field name="type" groups="base.group_extended"/>
158                                             <field name="delay" groups="base.group_extended"/>
159                                             <newline/>
160                                             <separator colspan="5" string="Taxes"/>
161                                             <field colspan="4" name="tax_id" nolabel="1" domain="[('parent_id','=',False),('type_tax_use','&lt;&gt;','purchase')]"/>
162                                             <group colspan="4" col="5" groups="base.group_extended">
163                                                 <separator colspan="5" string="States"/>
164                                                 <field name="state"/>
165                                                 <field name="invoiced"/>
166                                                 <group attrs="{'invisible':[('invoiced','=',True)]}">
167                                                 <button colspan="1"
168                                                     name="create_sale_order_line_invoice"
169                                                     states="confirmed"
170                                                     string="Create Invoice"
171                                                     type="object"
172                                                     icon="terp-document-new" />
173                                                  </group>
174                                             </group>
175                                         </page>
176                                         <page groups="base.group_extended" string="Extra Info">
177                                             <field name="th_weight"/>
178                                             <field name="address_allotment_id"/>
179 <!--                                            <separator colspan="4" string="Properties"/>-->
180 <!--                                            <field colspan="4" name="property_ids" nolabel="1"/>-->
181                                         </page>
182                                         <page string="Notes">
183                                             <field colspan="4" name="notes" nolabel="1"/>
184                                         </page>
185                                         <page string="History" groups="base.group_extended">
186                                             <separator colspan="4" string="Invoice Lines"/>
187                                             <field colspan="4" name="invoice_lines" nolabel="1"/>
188                                             <separator colspan="4" string="Stock Moves"/>
189                                             <field colspan="4" name="move_ids" nolabel="1" widget="many2many"/>
190                                         </page>
191                                     </notebook>
192                                 </form>
193                                 <tree string="Sales order lines">
194                                     <field colspan="4" name="name"/>
195                                     <field name="product_uom_qty" string="Qty"/>
196                                     <field name="product_uom" string="UoM"/>
197                                     <field name="discount"/>
198                                     <field name="price_unit"/>
199                                     <field name="price_subtotal"/>
200                                 </tree>
201                             </field>
202                             <newline/>
203                             <group col="13" colspan="10">
204                                 <field name="amount_untaxed" sum="Untaxed amount"/>
205                                 <field name="amount_tax"/>
206                                 <field name="amount_total"/>
207                                 <button name="button_dummy" states="draft" string="Compute" type="object" icon="gtk-execute"/>
208                                 <button name="%(action_view_sale_advance_payment_inv)d" string="Deposit" type="action" icon="gtk-execute"/>
209                             </group>
210                             <group col="13" colspan="4">
211                                 <field name="state"/>
212                                 <button name="order_confirm" states="draft" string="Confirm Order" icon="gtk-apply"/>
213                                 <button name="invoice_recreate" states="invoice_except" string="Recreate Invoice" icon="gtk-print"/>
214                                 <button name="invoice_corrected" states="invoice_except" string="Invoice Corrected" icon="gtk-apply"/>
215                                 <button name="ship_recreate" states="shipping_except" string="Recreate Procurement" icon="gtk-ok"/>
216                                 <button name="ship_corrected" states="shipping_except" string="Procurement Corrected" icon="gtk-apply"/>
217                                 <button name="manual_invoice" states="manual" string="Create Invoice" icon="terp-document-new"/>
218                                 <button name="ship_cancel" states="shipping_except" string="Cancel Order" icon="gtk-cancel"/>
219                                 <button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="gtk-convert"/>
220                                 <button name="action_cancel" states="manual,progress" string="Cancel Order" type="object" icon="gtk-cancel"/>
221                                 <button name="cancel" states="draft" string="Cancel Order" icon="gtk-cancel"/>
222                                 <button name="invoice_cancel" states="invoice_except" string="Cancel Order" icon="gtk-cancel"/>
223                             </group>
224                         </page>
225                         <page string="Other Information">
226                             <group colspan="2" col="2" groups="base.group_extended" name="logistic">
227                                 <separator string="Logistic" colspan="2"/>
228                                 <field name="incoterm"/>
229                                 <field name="picking_policy" required="True"/>
230                                 <field name="order_policy" on_change="shipping_policy_change(order_policy)"/>
231                                 <field name="invoice_quantity" attrs="{'readonly':[('order_policy','=','prepaid'),('order_policy','=','picking')]}"/>
232                             </group>
233                             <group colspan="2" col="2">
234                                 <separator string="References" colspan="2"/>
235                                 <field name="user_id"/>
236                                 <field groups="base.group_extended" name="origin"/>
237                             </group>
238                             <group colspan="2" col="2" groups="base.group_extended">
239                                 <separator string="Conditions" colspan="2"/>
240                                 <field name="payment_term" widget="selection"/>
241                                 <field name="fiscal_position" widget="selection"/>
242                                 <field name="company_id" widget="selection" groups="base.group_multi_company"/>
243                             </group>
244                             <group colspan="2" col="2" groups="base.group_extended">
245                                 <separator string="Dates" colspan="2"/>
246                                 <field name="create_date" widget="datetime"/>
247                                 <field name="date_confirm"/>
248                             </group>
249                             <separator colspan="4" string="Notes"/>
250                             <field colspan="4" name="note" nolabel="1"/>
251                         </page>
252                         <page string="History" groups="base.group_extended">
253                             <separator colspan="4" string="Related Invoices"/>
254                             <field colspan="4" name="invoice_ids" nolabel="1" context="{'form_view_ref':'account.invoice_form'}"/>
255                             <field colspan="4" name="picking_ids" nolabel="1"/>
256                         </page>
257                     </notebook>
258                 </form>
259             </field>
260         </record>
261
262         <record id="view_sales_order_filter" model="ir.ui.view">
263             <field name="name">sale.order.list.select</field>
264             <field name="model">sale.order</field>
265             <field name="type">search</field>
266             <field name="arch" type="xml">
267                 <search string="Search Sales Order">
268                     <filter icon="terp-document-new" string="Quotations" domain="[('state','=','draft')]" help="Sale Orders that haven't yet be confirmed"/>
269                     <filter icon="terp-check" string="Sales" domain="[('state','in',('manual','progress'))]"/>
270                     <separator orientation="vertical"/>
271                     <filter icon="terp-dolar_ok!" string="To Invoice" domain="[('state','=','manual')]" help="Sale Orders ready to be invoiced"/>
272                     <separator orientation="vertical"/>
273                     <field name="name" select="1"/>
274                     <field name="partner_id" select="1"/>
275                     <field name="user_id" select="1">
276                           <filter domain="[('user_id','=',uid)]" help="My Sale Orders" icon="terp-personal"/>
277                     </field>
278
279                     <field name="date_order" select="1" string="Order date" />
280                     <newline/>
281                     <group expand="0" string="Group By..." colspan="11" col="11" groups="base.group_extended">
282                         <filter string="Customer" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
283                         <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
284                         <separator orientation="vertical"/>
285                         <filter string="Order Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_order'}"/>
286                         <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
287                     </group>
288                </search>
289             </field>
290         </record>
291
292         <record id="action_order_form" model="ir.actions.act_window">
293             <field name="name">Sales Orders</field>
294             <field name="type">ir.actions.act_window</field>
295             <field name="res_model">sale.order</field>
296             <field name="view_type">form</field>
297             <field name="view_mode">tree,form,calendar,graph</field>
298             <field name="search_view_id" ref="view_sales_order_filter"/>
299             <field name="help">The sale order manages the invoicing, the product fullfilment and the delivery processes. OpenERP can handle products, services and consumables so that a sale order can trigger tasks, manufacturing orders, purchases, etc. It support several invoicing methods according to your configuration: from the sale order, from the pickings, etc.</field>
300         </record>
301         <menuitem action="action_order_form" id="menu_sale_order" parent="base.menu_sales" sequence="3"/>
302
303         <record id="action_order_tree2" model="ir.actions.act_window">
304             <field name="name">Sales in Exception</field>
305             <field name="type">ir.actions.act_window</field>
306             <field name="res_model">sale.order</field>
307             <field name="view_type">form</field>
308             <field name="view_mode">tree,form,calendar,graph</field>
309             <field name="domain">[('state','in',('shipping_except','invoice_except'))]</field>
310             <field name="filter" eval="True"/>
311             <field name="search_view_id" ref="view_sales_order_filter"/>
312         </record>
313
314         <record id="action_order_tree4" model="ir.actions.act_window">
315             <field name="name">Sales Order in Progress</field>
316             <field name="type">ir.actions.act_window</field>
317             <field name="res_model">sale.order</field>
318             <field name="view_type">form</field>
319             <field name="view_mode">tree,form,calendar,graph</field>
320             <field name="domain">[('state','in',('progress','waiting_date','manual'))]</field>
321             <field name="search_view_id" ref="view_sales_order_filter"/>
322         </record>
323
324
325         <record id="action_order_tree5" model="ir.actions.act_window">
326             <field name="name">All Quotations</field>
327             <field name="type">ir.actions.act_window</field>
328             <field name="res_model">sale.order</field>
329             <field name="view_type">form</field>
330             <field name="view_mode">tree,form,calendar,graph</field>
331             <field name="domain">[('state','=','draft')]</field>
332             <field name="search_view_id" ref="view_sales_order_filter"/>
333         </record>
334
335         <record id="action_order_tree" model="ir.actions.act_window">
336             <field name="name">Old Quotations</field>
337             <field name="type">ir.actions.act_window</field>
338             <field name="res_model">sale.order</field>
339             <field name="view_type">form</field>
340             <field name="view_mode">tree,form,calendar,graph</field>
341             <field name="domain">[('state','=','draft'),('date_order','&lt;',time.strftime('%Y-%m-%d %H:%M:%S'))]</field>
342             <field name="filter" eval="True"/>
343             <field name="search_view_id" ref="view_sales_order_filter"/>
344         </record>
345
346         <record id="view_order_line_graph" model="ir.ui.view">
347             <field name="name">sale.order.line.graph</field>
348             <field name="model">sale.order.line</field>
349             <field name="type">graph</field>
350             <field name="arch" type="xml">
351                 <graph string="Sales order lines">
352                     <field name="product_id"/>
353                     <field name="price_subtotal" operator="+"/>
354                 </graph>
355             </field>
356         </record>
357
358         <record id="view_order_line_tree" model="ir.ui.view">
359             <field name="name">sale.order.line.tree</field>
360             <field name="model">sale.order.line</field>
361             <field name="type">tree</field>
362             <field name="arch" type="xml">
363                 <tree string="Sales order lines">
364                     <field name="order_id"/>
365                     <field name="order_partner_id"/>
366                     <field name="product_id"/>
367                     <field name="product_uom_qty" string="Qty"/>
368                     <field name="product_uom" string="UoM"/>
369                     <field name="salesman_id"/>
370                     <field name="price_subtotal"/>
371                     <field name="state"/>
372                 </tree>
373             </field>
374         </record>
375         <record id="view_order_line_form2" model="ir.ui.view">
376             <field name="name">sale.order.line.form2</field>
377             <field name="model">sale.order.line</field>
378             <field name="type">form</field>
379             <field name="arch" type="xml">
380                 <form string="Sales Order Lines">
381                     <notebook>
382                         <page string="Order Lines">
383                             <separator colspan="4" string="General Information"/>
384                             <field name="order_id"/>
385                             <field name="order_partner_id" readonly="1" invisible="1"/>
386                             <field name="product_uom_qty" readonly="1"/>
387                             <field groups="product.group_uos" name="product_uos_qty"/>
388                             <field name="product_uom"/>
389                             <field name="product_id" readonly="1"/>
390                             <field name="invoiced"/>
391                             <field name="company_id" groups="base.group_multi_company" widget="selection"/>
392                             <separator colspan="4" string="Manual Designation"/>
393                             <field colspan="4" name="name"/>
394                             <field name="price_unit"/>
395                             <field name="discount"/>
396                             <field name="type" groups="base.group_extended"/>
397                             <field name="delay" groups="base.group_extended"/>
398                             <field name="price_subtotal"/>
399                             <field name="th_weight"/>
400                             <separator colspan="4" string="Taxes"/>
401                             <field colspan="4" name="tax_id" domain="[('parent_id','=',False),('type_tax_use','&lt;&gt;','purchase')]" nolabel="1"/>
402                             <separator colspan="4" string="States"/>
403                             <field name="state"/>
404                             <group col="3" colspan="2">
405                                 <button colspan="1"
406                                   name="create_sale_order_line_invoice"
407                                   string="Create Invoice"
408                                   type="object"
409                                   icon="terp-document-new"
410                                   attrs="{'invisible': ['|',('state', 'in', ('draft','cancel')),('invoiced', '=', 1)]}"/>
411                                 <button name="button_cancel"
412                                     string="Cancel" type="object"
413                                     icon="gtk-cancel"
414                                     attrs="{'invisible': ['|',('state', 'not in', ('confirmed', 'exception')),('invoiced', '=', 1)]}"/>
415                                 <button name="button_done"
416                                     string="Done" type="object"
417                                     icon="gtk-jump-to"
418                                     attrs="{'invisible': ['|',('state', 'not in', ('confirmed','exception')),('invoiced', '=', 0)]}"/>
419                             </group>
420                         </page>
421 <!--                        <page string="Properties" groups="base.group_extended">-->
422 <!--                            <field name="property_ids" nolabel="1"/>-->
423 <!--                        </page>-->
424                         <page string="Invoice Lines" groups="base.group_extended">
425                             <field colspan="4" name="invoice_lines" nolabel="1"/>
426                         </page>
427                         <page string="Notes">
428                             <field colspan="4" name="notes" nolabel="1"/>
429                         </page>
430                     </notebook>
431                 </form>
432             </field>
433         </record>
434
435         <record id="view_sales_order_line_filter" model="ir.ui.view">
436             <field name="name">sale.order.line.select</field>
437             <field name="model">sale.order.line</field>
438             <field name="type">search</field>
439             <field name="arch" type="xml">
440                 <search string="Search Sales Order">
441                     <filter icon="terp-gtk-go-back-rtl" string="To Invoice" domain="[('invoiced','&lt;&gt;', 1),('state','=','done')]" separator="1" help="Sale Order Lines ready to be invoiced"/>
442                     <separator orientation="vertical"/>
443                     <field name="order_id"/>
444                     <field name="order_partner_id"/>
445                     <field name="product_id"/>
446                     <field name="salesman_id">
447                         <filter icon="terp-personnal" domain="[('salesman_id','=',uid)]" help="Sale Order Lines related to a Sale Order of mine"/>
448                     </field>
449                     <newline/>
450                     <group expand="context.get('report',False)" string="Group By..." colspan="9" col="8">
451                         <filter string="Product" icon="terp-accessories-archiver" domain="[]" context="{'group_by':'product_id'}"/>
452                         <filter string="Order" icon="terp-sale" domain="[]" context="{'group_by':'order_id'}"/>
453                         <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'salesman_id'}"/>
454                         <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
455                     </group>
456                 </search>
457             </field>
458         </record>
459
460         <record id="view_sales_order_uninvoiced_line_filter" model="ir.ui.view">
461             <field name="name">sale.order.uninvoiced.line</field>
462             <field name="model">sale.order.line</field>
463             <field name="type">search</field>
464             <field name="arch" type="xml">
465                 <search string="Search Uninvoiced Lines">
466                     <filter icon="terp-accessories-archiver" string="Shipped"
467                         domain="[('state','=','done')]"
468                         name="unshipped"
469                         help="Sale Order Lines that are in 'done' state"
470                         />
471                     <filter icon="terp-dolar_ok!" string="Uninvoiced" name="uninvoiced"
472                         domain="[('invoiced','&lt;&gt;', 1),('state','&lt;&gt;','draft'),('state','&lt;&gt;','cancel')]"
473                         help="Sale Order Lines that are confirmed, done or in exception state and haven't yet been invoiced"
474                         />
475                     <filter icon="terp-check" string="Confirmed"
476                         domain="[('state','=','confirmed')]"
477                         name="sale order"
478                         help="Confirmed Sale Order Lines"
479                         />
480                     <separator orientation="vertical"/>
481                     <field name="order_id"/>
482                     <field name="order_partner_id"/>
483                     <field name="product_id"/>
484                     <field name="salesman_id">
485                         <filter icon="terp-personal" domain="[('salesman_id','=',uid)]" help="My Sale Order Lines"/>
486                     </field>
487                     <newline />
488                     <group expand="0" string="Group By..." colspan="9" col="8">
489                         <filter string="Product" icon="terp-accessories-archiver" domain="[]" context="{'group_by':'product_id'}"/>
490                         <filter string="Order" icon="terp-gtk-jump-to-rtl" domain="[]" context="{'group_by':'order_id'}"/>
491                         <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
492                     </group>
493                 </search>
494             </field>
495         </record>
496
497         <record id="action_order_line_tree2" model="ir.actions.act_window">
498             <field name="name">Lines to Invoice</field>
499             <field name="type">ir.actions.act_window</field>
500             <field name="res_model">sale.order.line</field>
501             <field name="view_type">form</field>
502             <field name="view_mode">tree,form,graph</field>
503             <field name="search_view_id" ref="view_sales_order_uninvoiced_line_filter" />
504             <field name="context">{"search_default_uninvoiced":1}</field>
505             <field name="filter" eval="True"/>
506             <field name="help">Lines to invoice opens a search view with sales order and their status.</field>
507         </record>
508
509         <record id="action_order_line_tree3" model="ir.actions.act_window">
510             <field name="name">Uninvoiced and Delivered Lines</field>
511             <field name="type">ir.actions.act_window</field>
512             <field name="res_model">sale.order.line</field>
513             <field name="view_type">form</field>
514             <field name="view_mode">tree,form,graph</field>
515             <field name="domain">[('invoiced','&lt;&gt;', 1),('state','=','done')]</field>
516             <field name="filter" eval="True"/>
517         </record>
518
519         <act_window context="{'partner_id': active_id}" domain="[('partner_id', '=', active_id)]" id="act_res_partner_2_sale_order" name="Sales" res_model="sale.order" src_model="res.partner"/>
520
521         <act_window domain="[('product_id','=',active_id)]" id="action_order_line_product_tree" name="Product sales" res_model="sale.order.line" src_model="product.product" groups="base.group_extended"/>
522
523         <menuitem id="menu_invoiced" name="Billing" parent="base.menu_base_partner" sequence="5"/>
524         <menuitem action="action_order_line_tree2" id="menu_invoicing_sales_order_lines" parent="menu_invoiced" sequence="2"/>
525         <!-- configartion view -->
526
527         <record id="view_config_picking_policy" model="ir.ui.view">
528             <field name="name">Configure Picking Policy for Sale Order </field>
529             <field name="model">sale.config.picking_policy</field>
530             <field name="type">form</field>
531             <field name="inherit_id" ref="base.res_config_view_base"/>
532             <field name="arch" type="xml">
533               <data>
534                 <form position="attributes">
535                   <attribute name="string">Sales Configuration</attribute>
536                 </form>
537                 <separator string="title" position="attributes">
538                 <attribute name="string"
539                        >Configure Sale Order Logistic</attribute>
540                   </separator>
541                   <xpath expr="//label[@string='description']" position="attributes">
542                     <attribute name="string">Setup your sales workflow and default values.</attribute>
543                   </xpath>
544                 <xpath expr='//separator[@string="vsep"]' position='attributes'>
545                       <attribute name='rowspan'>15</attribute>
546                       <attribute name='string'></attribute>
547                   </xpath>
548                 <group string="res_config_contents" position="replace">
549                   <field name="picking_policy" groups="base.group_extended"/>
550                   <newline/>
551                   <field name="order_policy"/>
552                   <newline/>
553                   <field name="step"/>
554                 </group>
555                 <xpath expr='//button[@name="action_skip"]' position='replace'/>
556               </data>
557             </field>
558         </record>
559
560         <record id="action_config_picking_policy" model="ir.actions.act_window">
561             <field name="name">Configure Picking Policy for Sale Order</field>
562             <field name="type">ir.actions.act_window</field>
563             <field name="res_model">sale.config.picking_policy</field>
564             <field name="view_id" ref="view_config_picking_policy"/>
565             <field name="view_type">form</field>
566             <field name="view_mode">form</field>
567             <field name="target">new</field>
568         </record>
569
570         <!-- register configuration wizard -->
571         <record id="config_wizard_step_sale_picking_policy" model="ir.actions.todo">
572             <field name="action_id" ref="action_config_picking_policy"/>
573             <field name="groups_id" eval="[(6,0,[ref('base.group_extended')])]"/>
574         </record>
575
576     </data>
577 </openerp>