[IMP] replace sale configuration wizard
[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
11         <record id="view_shop_form" model="ir.ui.view">
12             <field name="name">sale.shop</field>
13             <field name="model">sale.shop</field>
14             <field name="type">form</field>
15             <field name="arch" type="xml">
16                 <form string="Sales Shop">
17                     <field name="name" select="1"/>
18                     <field name="warehouse_id" required="1" select="1" widget="selection"/>
19                     <field name="company_id" widget='selection' groups="base.group_multi_company"/>
20                     <separator colspan="4" string="Accounting"/>
21                     <field name="payment_default_id"/>
22                     <field domain="[('type','=','sale')]" name="pricelist_id" select="1"/>
23                     <field name="project_id" select="1" groups="analytic.group_analytic_accounting"/>
24                 </form>
25             </field>
26         </record>
27         <record id="view_shop_tree" model="ir.ui.view">
28             <field name="name">sale.shop</field>
29             <field name="model">sale.shop</field>
30             <field name="type">tree</field>
31             <field name="arch" type="xml">
32                 <tree string="Sales Shop">
33                     <field name="name"/>
34                     <field name="warehouse_id"/>
35                     <field name="pricelist_id"/>
36                     <field name="project_id" groups="analytic.group_analytic_accounting"/>
37                 </tree>
38             </field>
39         </record>
40
41         <record id="action_shop_form" model="ir.actions.act_window">
42             <field name="name">Shop</field>
43             <field name="type">ir.actions.act_window</field>
44             <field name="res_model">sale.shop</field>
45             <field name="view_type">form</field>
46             <field name="view_mode">tree,form</field>
47             <field name="view_id" ref="view_shop_tree"/>
48             <field name="help">If you have more than one shop reselling your company products, you can create and manage that from here. Whenever you will record a new quotation or sales 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 sales.</field>
49         </record>
50
51         <menuitem action="action_shop_form" id="menu_action_shop_form"
52             parent="base.menu_sale_config_sales" sequence="0" />
53
54         <record id="view_sale_order_calendar" model="ir.ui.view">
55             <field name="name">sale.order.calendar</field>
56             <field name="model">sale.order</field>
57             <field name="type">calendar</field>
58             <field name="arch" type="xml">
59                 <calendar string="Sales Orders" color="state" date_start="date_order">
60                     <field name="partner_id"/>
61                     <field name="amount_total"/>
62                 </calendar>
63             </field>
64         </record>
65         <record model="ir.ui.view" id="view_sale_order_graph">
66             <field name="name">sale.order.graph</field>
67             <field name="model">sale.order</field>
68             <field name="type">graph</field>
69             <field name="arch" type="xml">
70                 <graph string="Sales Orders" type="bar">
71                     <field name="partner_id"/>
72                     <field name="amount_total" operator="+"/>
73                 </graph>
74             </field>
75         </record>
76
77         <record id="view_order_tree" model="ir.ui.view">
78             <field name="name">sale.order.tree</field>
79             <field name="model">sale.order</field>
80             <field name="type">tree</field>
81             <field name="priority">2</field>
82             <field name="arch" type="xml">
83                 <tree string="Sales Orders" colors="grey:state=='cancel';blue:state in ('waiting_date','manual');red:state in ('invoice_except','shipping_except')">
84                     <field name="name"/>
85                     <field name="date_order"/>
86                     <field name="client_order_ref" groups="base.group_extended"/>
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="Sales 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, False, True, parent.date_order, product_packaging, parent.fiscal_position, False, context)"
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, False, False, parent.date_order, product_packaging, parent.fiscal_position, True, context)"
136                                                 />
137                                             <field name="product_uom"
138                                                 on_change="product_uom_change(parent.pricelist_id,product_id,product_uom_qty,product_uom,product_uos_qty,product_uos,name,parent.partner_id, False, False, parent.date_order, context)"/>
139                                             <field groups="product.group_uos" name="product_uos_qty"/>
140                                             <field groups="product.group_uos" name="product_uos"/>
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, False, False, parent.date_order, product_packaging, parent.fiscal_position, False, context)"
145                                                 domain="[('product_id','=',product_id)]"
146                                                 groups="base.group_extended"/>
147
148                                             <field colspan="4" name="name"/>
149                                             <field name="price_unit"/>
150                                             <field name="discount"/>
151                                             <field name="type" groups="base.group_extended"/>
152                                             <field name="delay" groups="base.group_extended"/>
153                                             <newline/>
154                                             <separator colspan="5" string="Taxes"/>
155                                             <field colspan="4" name="tax_id" nolabel="1" domain="[('parent_id','=',False),('type_tax_use','&lt;&gt;','purchase')]"/>
156                                             <group colspan="4" col="5" groups="base.group_extended">
157                                                 <separator colspan="5" string="States"/>
158                                                 <field name="state"/>
159                                                 <field name="invoiced"/>
160                                                 <group attrs="{'invisible':[('invoiced','=',True)]}">
161                                                 <button colspan="1"
162                                                     name="%(action_view_sale_order_line_make_invoice)d"
163                                                     states="confirmed"
164                                                     string="Make Invoices"
165                                                     type="action"
166                                                     icon="terp-document-new" />
167                                                  </group>
168                                             </group>
169                                         </page>
170                                         <page groups="base.group_extended" string="Extra Info">
171                                             <field name="th_weight"/>
172                                             <field name="address_allotment_id"/>
173                                             <field name="property_ids" colspan="4"/>
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="logistics">
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','in',('prepaid','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="Invoices"/>
248                             <field colspan="4" name="invoice_ids" nolabel="1" context="{'form_view_ref':'account.invoice_form'}"/>
249                             <separator colspan="4" string="Packings"/>
250                             <field colspan="4" name="picking_ids" nolabel="1"/>
251                         </page>
252                     </notebook>
253                 </form>
254             </field>
255         </record>
256
257         <record id="view_sales_order_filter" model="ir.ui.view">
258             <field name="name">sale.order.list.select</field>
259             <field name="model">sale.order</field>
260             <field name="type">search</field>
261             <field name="arch" type="xml">
262                 <search string="Search Sales Order">
263                     <filter icon="terp-document-new" string="Quotations" domain="[('state','=','draft')]" help="Sales Order that haven't yet been confirmed"/>
264                     <filter icon="terp-check" string="Sales" domain="[('state','in',('manual','progress'))]"/>
265                     <separator orientation="vertical"/>
266                     <filter icon="terp-dolar_ok!" string="To Invoice" domain="[('state','=','manual')]" help="Sales Order ready to be invoiced"/>
267                     <separator orientation="vertical"/>
268                     <field name="name" select="1"/>
269                     <field name="date_order" select="1" string="Order date" />
270                     <field name="partner_id" select="1"/>
271                     <field name="user_id" select="1">
272                         <filter domain="[('user_id','=',uid)]" help="My Sale Orders" icon="terp-personal"/>
273                     </field>
274                     <newline/>
275                     <group expand="0" string="Group By..." colspan="11" col="11" groups="base.group_extended">
276                         <filter string="Customer" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
277                         <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
278                         <separator orientation="vertical"/>
279                         <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
280                         <separator orientation="vertical"/>
281                         <filter string="Order Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_order'}"/>
282                     </group>
283                </search>
284             </field>
285         </record>
286
287         <record id="action_order_form" model="ir.actions.act_window">
288             <field name="name">Sales Orders</field>
289             <field name="type">ir.actions.act_window</field>
290             <field name="res_model">sale.order</field>
291             <field name="view_type">form</field>
292             <field name="view_mode">tree,form,calendar,graph</field>
293             <field name="search_view_id" ref="view_sales_order_filter"/>
294             <field name="context">{"search_default_user_id":uid}</field>
295             <field name="help">Sales Orders help you manage quotations and orders from your customers. OpenERP suggests that you start by creating a quotation. Once it is confirmed, the quotation will be converted into a Sales Order. OpenERP can handle several types of products so that a sales order may trigger tasks, delivery orders, manufacturing orders, purchases and so on. Based on the configuration of the sales order, a draft invoice will be generated so that you just have to confirm it when you want to bill your customer.</field>
296         </record>
297         <menuitem action="action_order_form" id="menu_sale_order" parent="base.menu_sales" sequence="3" groups="base.group_sale_salesman,base.group_sale_manager"/>
298
299         <record id="action_order_tree2" model="ir.actions.act_window">
300             <field name="name">Sales in Exception</field>
301             <field name="type">ir.actions.act_window</field>
302             <field name="res_model">sale.order</field>
303             <field name="view_type">form</field>
304             <field name="view_mode">tree,form,calendar,graph</field>
305             <field name="domain">[('state','in',('shipping_except','invoice_except'))]</field>
306             <field name="filter" eval="True"/>
307             <field name="search_view_id" ref="view_sales_order_filter"/>
308         </record>
309
310         <record id="action_order_tree4" model="ir.actions.act_window">
311             <field name="name">Sales Order in Progress</field>
312             <field name="type">ir.actions.act_window</field>
313             <field name="res_model">sale.order</field>
314             <field name="view_type">form</field>
315             <field name="view_mode">tree,form,calendar,graph</field>
316             <field name="domain">[('state','in',('progress','waiting_date','manual'))]</field>
317             <field name="search_view_id" ref="view_sales_order_filter"/>
318         </record>
319
320
321         <record id="action_order_tree5" model="ir.actions.act_window">
322             <field name="name">All Quotations</field>
323             <field name="type">ir.actions.act_window</field>
324             <field name="res_model">sale.order</field>
325             <field name="view_type">form</field>
326             <field name="view_mode">tree,form,calendar,graph</field>
327             <field name="domain">[('state','=','draft')]</field>
328             <field name="search_view_id" ref="view_sales_order_filter"/>
329         </record>
330
331         <record id="action_order_tree" model="ir.actions.act_window">
332             <field name="name">Old Quotations</field>
333             <field name="type">ir.actions.act_window</field>
334             <field name="res_model">sale.order</field>
335             <field name="view_type">form</field>
336             <field name="view_mode">tree,form,calendar,graph</field>
337             <field name="domain">[('state','=','draft'),('date_order','&lt;',time.strftime('%Y-%m-%d %H:%M:%S'))]</field>
338             <field name="filter" eval="True"/>
339             <field name="search_view_id" ref="view_sales_order_filter"/>
340         </record>
341
342         <record id="view_order_line_graph" model="ir.ui.view">
343             <field name="name">sale.order.line.graph</field>
344             <field name="model">sale.order.line</field>
345             <field name="type">graph</field>
346             <field name="arch" type="xml">
347                 <graph string="Sales Order Lines">
348                     <field name="product_id"/>
349                     <field name="price_subtotal" operator="+"/>
350                 </graph>
351             </field>
352         </record>
353
354         <record id="view_order_line_tree" model="ir.ui.view">
355             <field name="name">sale.order.line.tree</field>
356             <field name="model">sale.order.line</field>
357             <field name="type">tree</field>
358             <field name="arch" type="xml">
359                 <tree string="Sales Order Lines">
360                     <field name="order_id"/>
361                     <field name="order_partner_id"/>
362                     <field name="product_id"/>
363                     <field name="product_uom_qty" string="Qty"/>
364                     <field name="product_uom" string="UoM"/>
365                     <field name="salesman_id"/>
366                     <field name="price_subtotal" sum="Total"/>
367                     <field name="state"/>
368                     <field name="invoiced"/>
369                 </tree>
370             </field>
371         </record>
372         <record id="view_order_line_form2" model="ir.ui.view">
373             <field name="name">sale.order.line.form2</field>
374             <field name="model">sale.order.line</field>
375             <field name="type">form</field>
376             <field name="arch" type="xml">
377                 <form string="Sales Order Lines">
378                     <group colspan="4" col="6">
379                         <field name="order_id"/>
380                         <field name="order_partner_id" readonly="1" invisible="1"/>
381                         <field name="invoiced"/>
382
383                         <field name="product_id" readonly="1"/>
384                         <field name="product_uom_qty" readonly="1"/>
385                         <field name="product_uom"/>
386
387                         <field colspan="4" name="name" groups="base.group_extended"/>
388                         <field name="company_id" groups="base.group_multi_company" readonly="1"/>
389                     </group>
390                     <separator colspan="4" string="Price"/>
391                     <group colspan="4" col="6">
392                         <field name="price_unit"/>
393                         <field name="discount"/>
394                         <field name="price_subtotal"/>
395                     </group>
396                     <separator colspan="4" string="Notes"/>
397                     <field colspan="4" name="notes" nolabel="1"/>
398                     <separator colspan="4"/>
399                     <field name="state"/>
400                     <group col="3" colspan="2">
401                         <button name="button_cancel"
402                             string="Cancel" type="object"
403                             icon="gtk-cancel"
404                             states="confirmed,exception"/>
405                         <button colspan="1"
406                             name="%(action_view_sale_order_line_make_invoice)d"
407                             string="Create Invoice"
408                             type="action"
409                             states="done"
410                             icon="gtk-go-forward"
411                             attrs="{'invisible': [('invoiced', '=', 1)]}"/>
412                         <button name="button_done"
413                             string="Done" type="object"
414                             states="confirmed,exception"
415                             icon="gtk-go-forward" />
416                     </group>
417                 </form>
418             </field>
419         </record>
420
421         <record id="view_sales_order_line_filter" model="ir.ui.view">
422             <field name="name">sale.order.line.select</field>
423             <field name="model">sale.order.line</field>
424             <field name="type">search</field>
425             <field name="arch" type="xml">
426                 <search string="Search Sales Order">
427                     <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"/>
428                     <separator orientation="vertical"/>
429                     <field name="order_id"/>
430                     <field name="order_partner_id"/>
431                     <field name="product_id"/>
432                     <field name="salesman_id">
433                         <filter icon="terp-personnal" domain="[('salesman_id','=',uid)]" help="Sales Order Lines related to a Sales Order of mine"/>
434                     </field>
435                     <newline/>
436                     <group expand="context.get('report',False)" string="Group By..." colspan="9" col="8">
437                         <filter string="Product" icon="terp-accessories-archiver" domain="[]" context="{'group_by':'product_id'}"/>
438                         <filter string="Order" icon="terp-gtk-jump-to-rtl" domain="[]" context="{'group_by':'order_id'}"/>
439                         <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'salesman_id'}"/>
440                         <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
441                     </group>
442                 </search>
443             </field>
444         </record>
445
446         <record id="view_sales_order_uninvoiced_line_filter" model="ir.ui.view">
447             <field name="name">sale.order.uninvoiced.line</field>
448             <field name="model">sale.order.line</field>
449             <field name="type">search</field>
450             <field name="arch" type="xml">
451                 <search string="Search Uninvoiced Lines">
452                     <filter icon="terp-gtk-go-back-rtl" string="To Do"
453                         domain="[('state','=','confirmed')]"
454                         name="sale order"
455                         help="Confirmed sale order lines, not yet delivered"
456                         />
457                     <filter icon="terp-dialog-close" string="Done"
458                         domain="[('state','=','done')]"
459                         name="sale_order_done"
460                         help="Sale order lines done"
461                         />
462                     <separator orientation="vertical"/>
463                     <filter icon="terp-accessories-archiver" string="Shipped"
464                         domain="[('state','=','done')]"
465                         name="unshipped"
466                         help="Sale Order Lines that are in 'done' state"
467                         />
468                     <filter icon="terp-dolar_ok!" string="Uninvoiced" name="uninvoiced"
469                         domain="[('invoiced','&lt;&gt;', 1),('state','&lt;&gt;','draft'),('state','&lt;&gt;','cancel')]"
470                         help="Sale Order Lines that are confirmed, done or in exception state and haven't yet been invoiced"
471                         />
472                     <separator orientation="vertical"/>
473                     <field name="order_id"/>
474                     <field name="order_partner_id"/>
475                     <field name="product_id"/>
476                     <field name="salesman_id">
477                         <filter icon="terp-personal" domain="[('salesman_id','=',uid)]" help="My Sales Order Lines"/>
478                     </field>
479                     <newline />
480                     <group expand="0" string="Group By..." colspan="9" col="8">
481                         <filter string="Order" icon="terp-gtk-jump-to-rtl" domain="[]" context="{'group_by':'order_id'}" help="Order reference"/>
482                         <filter string="Product" icon="terp-accessories-archiver" domain="[]" context="{'group_by':'product_id'}"/>
483                         <separator orientation="vertical"/>
484                         <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
485                     </group>
486                 </search>
487             </field>
488         </record>
489
490         <record id="action_order_line_tree2" model="ir.actions.act_window">
491             <field name="name">Lines to Invoice</field>
492             <field name="type">ir.actions.act_window</field>
493             <field name="res_model">sale.order.line</field>
494             <field name="view_type">form</field>
495             <field name="view_mode">tree,form,graph</field>
496             <field name="search_view_id" ref="view_sales_order_uninvoiced_line_filter" />
497             <field name="context">{"search_default_uninvoiced":1}</field>
498             <field name="filter" eval="True"/>
499             <field name="help">Here is a list of each sales order line to be invoiced. You can invoice sales orders partially, by lines of sales order. You do not need this list if you invoice from the delivery orders or if you invoice sales totally.</field>
500         </record>
501
502         <record id="action_order_line_tree3" model="ir.actions.act_window">
503             <field name="name">Uninvoiced and Delivered Lines</field>
504             <field name="type">ir.actions.act_window</field>
505             <field name="res_model">sale.order.line</field>
506             <field name="view_type">form</field>
507             <field name="view_mode">tree,form,graph</field>
508             <field name="domain">[('invoiced','&lt;&gt;', 1),('state','=','done')]</field>
509             <field name="filter" eval="True"/>
510         </record>
511
512         <act_window
513         context="{'search_default_partner_id': [active_id], 'default_partner_id': active_id}"
514         id="act_res_partner_2_sale_order"
515         name="Quotations and Sales"
516         groups="base.group_sale_salesman"
517         res_model="sale.order"
518         src_model="res.partner"/>
519
520         <act_window
521         context="{'search_default_product_id': [active_id], 'default_product_id': active_id}"
522         id="action_order_line_product_tree"
523         name="Sales Order Lines"
524         res_model="sale.order.line"
525         src_model="product.product"
526         groups="base.group_sale_salesman"/>
527
528         <menuitem id="menu_invoiced" name="Invoicing" parent="base.menu_base_partner" sequence="5"
529             groups="-base.group_extended"/>
530         <menuitem action="action_order_line_tree2" id="menu_invoicing_sales_order_lines" parent="menu_invoiced" sequence="2" groups="base.group_no_one"/>
531         <!-- configartion view -->
532            
533         <record id="view_config_picking_policy" model="ir.ui.view">
534             <field name="name">Set Up Your Invoicing Method</field>
535             <field name="model">sale.config.picking_policy</field>
536             <field name="type">form</field>
537             <field name="inherit_id" ref="base.res_config_view_base"/>
538             <field name="arch" type="xml">
539               <data>
540                 <form position="attributes">
541                   <attribute name="string">Sales Application Configuration</attribute>
542                 </form>
543                 <group colspan="4" col="8" position="replace">
544                     <group col="4">
545                         <separator string="How do you generate your costumer invoice ?"/>
546                         
547                     </group>
548                     <group col="4">
549                         <separator string="Options"/>
550                     </group>
551                     <newline/>
552                     <group col="2">
553                         <label align="0.0" string="Based on Sales Orders" width="200" colspan="1"/>
554                         <field name="sale_orders" on_change="onchange_order(sale_orders,deli_orders)" nolabel="1"/>
555                         
556                         <label align="0.0" string="Based on Delivery Orders" width="200" colspan="1"/>
557                         <field name="deli_orders" on_change="onchange_order(sale_orders,deli_orders)" nolabel="1"/>
558                         
559                         <label align="0.0" string="Based on Task's Work" width="200" colspan="1"/>
560                         <field name="task_work" nolabel="1"/>
561                         
562                         <label align="0.0" string="Based on Timesheet" width="200" colspan="1"/>
563                         <field name="timesheet" nolabel="1"/>
564                     </group>
565                     <group col="3">
566                                 <label align="0.0" string="Main Method Based On" width="200" colspan="1"/>
567                                 
568                         <field name="order_policy" attrs="{'readonly':['|',('sale_orders','!=',True),('deli_orders','!=',True)]}" nolabel="1"/>
569                         
570                         <newline/>
571                         <label align="0.0" string="Do you charge the delivery" width="200" colspan="1"/>
572                                 <field name="charge_delivery" attrs="{'readonly':[('sale_orders','!=',True), ('deli_orders','!=',True)]}" nolabel="1"/>
573                                 
574                         <newline/>
575                         <label align="0.0" string="Main Working Time Unit" width="200" colspan="1"/>
576                         <field name="time_unit" attrs="{'readonly':[('task_work','=',False),('timesheet','=',False)]}" widget="selection" domain="[('category_id','=',3)]" nolabel="1"/>
577                         </group>
578                     
579                     
580                 </group>
581                 <xpath expr='//button[@name="action_skip"]' position='replace'/>
582               </data>
583             </field>
584         </record>
585         
586
587         <record id="action_config_picking_policy" model="ir.actions.act_window">
588             <field name="name">Set up your Invoicing Method</field>
589             <field name="type">ir.actions.act_window</field>
590             <field name="res_model">sale.config.picking_policy</field>
591             <field name="view_id" ref="view_config_picking_policy"/>
592             <field name="view_type">form</field>
593             <field name="view_mode">form</field>
594             <field name="target">new</field>
595         </record>
596
597         <!-- register configuration wizard -->
598         <record id="config_wizard_step_sale_picking_policy" model="ir.actions.todo">
599             <field name="action_id" ref="action_config_picking_policy"/>
600             <field name="category_id" ref="base.category_sales_management_config"/>
601             <field name="type">normal</field>
602             <field name="state">skip</field>
603             <field name="groups_id" eval="[(6,0,[ref('base.group_extended')])]"/>
604         </record>
605
606     </data>
607 </openerp>