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