[MERGE] base: raise an exception if the format of the bank account is wrong
[odoo/odoo.git] / openerp / addons / base / res / res_partner_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3     <data>
4
5         <!-- Top menu item -->
6         <menuitem name="Sales"
7             id="menu_base_partner"
8             groups="base.group_sale_salesman"
9             sequence="30"/>
10
11             <menuitem id="base.menu_sales" parent="base.menu_base_partner" name="Sales" sequence="1" />
12             <menuitem id="menu_base_config" parent="menu_base_partner" name="Configuration" sequence="30" groups="group_system"/>
13                 <menuitem id="menu_config_address_book" parent="menu_base_config" name="Address Book" sequence="40" groups="group_system"/>
14
15         <!-- Partner Titles -->
16         <record id="view_partner_title_tree" model="ir.ui.view">
17             <field name="name">res.partner.title.tree</field>
18             <field name="model">res.partner.title</field>
19             <field name="arch" type="xml">
20                 <tree string="Partner Titles">
21                     <field name="name"/>
22                     <field name="shortcut"/>
23                 </tree>
24             </field>
25         </record>
26         <record id="view_partner_title_form" model="ir.ui.view">
27             <field name="name">res.partner.title.form</field>
28             <field name="model">res.partner.title</field>
29             <field name="arch" type="xml">
30                 <form string="Partner Titles" version="7.0">
31                     <group col="4">
32                         <field name="name"/>
33                         <field name="shortcut"/>
34                     </group>
35                 </form>
36             </field>
37         </record>
38
39         <!--
40         <record id="action_partner_title" model="ir.actions.act_window">
41             <field name="name">Titles</field>
42             <field name="type">ir.actions.act_window</field>
43             <field name="res_model">res.partner.title</field>
44             <field name="view_type">form</field>
45         </record>
46         <menuitem action="action_partner_title" id="menu_partner_title" parent="base.menu_base_config"/>
47         -->
48
49         <record id="action_partner_title_partner" model="ir.actions.act_window">
50             <field name="name">Partner Titles</field>
51             <field name="type">ir.actions.act_window</field>
52             <field name="res_model">res.partner.title</field>
53             <field name="view_type">form</field>
54             <field name="domain">[('domain','=','partner')]</field>
55             <field name="context">{'default_domain': 'partner'}</field>
56             <field name="help">Manage the partner titles you want to have available in your system. The partner titles is the legal status of the company: Private Limited, SA, etc.</field>
57         </record>
58
59         <menuitem action="action_partner_title_partner" id="menu_partner_title_partner" parent="menu_config_address_book" sequence="2" groups="base.group_no_one"/>
60
61         <record id="action_partner_title_contact" model="ir.actions.act_window">
62             <field name="name">Contact Titles</field>
63             <field name="type">ir.actions.act_window</field>
64             <field name="res_model">res.partner.title</field>
65             <field name="view_type">form</field>
66             <field name="domain">[('domain','=','contact')]</field>
67             <field name="context">{'default_domain': 'contact'}</field>
68             <field name="help">Manage the contact titles you want to have available in your system and the way you want to print them in letters and other documents. Some example: Mr., Mrs. </field>
69         </record>
70
71         <menuitem action="action_partner_title_contact" id="menu_partner_title_contact" name="Contact Titles" parent="menu_config_address_book" sequence="3" groups="base.group_no_one"/>
72
73         <!-- Partner -->
74         <record id="view_partner_tree" model="ir.ui.view">
75             <field name="name">res.partner.tree</field>
76             <field name="model">res.partner</field>
77             <field eval="8" name="priority"/>
78             <field name="arch" type="xml">
79                 <tree string="Contacts">
80                     <field name="name"/>
81                     <field name="function" invisible="1"/>
82                     <field name="phone"/>
83                     <field name="email"/>
84                     <field name="user_id" invisible="1"/>
85                     <field name="is_company" invisible="1"/>
86                     <field name="country" invisible="1"/>
87                     <field name="country_id" invisible="1"/>
88                 </tree>
89             </field>
90         </record>
91
92         <record id="view_partner_form" model="ir.ui.view">
93             <field name="name">res.partner.form</field>
94             <field name="model">res.partner</field>
95             <field name="arch" type="xml">
96                 <form string="Partners" version="7.0">
97                 <sheet>
98                     <field name="image" widget='image' class="oe_left oe_avatar" options='{"preview_image": "image_medium", "size": [90, 90]}'/>
99                     <div class="oe_title">
100                         <div class="oe_edit_only">
101                             <label for="name"/> (
102                             <field name="is_company" on_change="onchange_type(is_company)" class="oe_inline"/> <label for="is_company" string="Is a Company?"/>)
103                         </div>
104                         <h1>
105                             <field name="name" default_focus="1" placeholder="Name" />
106                         </h1>
107                         <field name="parent_id"
108                             placeholder="Company"
109                             domain="[('is_company', '=', True)]" context="{'default_is_company': True}"
110                             attrs="{'invisible': [('is_company','=', True)]}"
111                             on_change="onchange_address(use_parent_address, parent_id)"/>
112                         <field name="category_id" widget="many2many_tags" placeholder="Tags..."/>
113                     </div>
114                     <div class="oe_right oe_button_box" name="buttons"> </div>
115
116                     <group>
117                         <group>
118                             <label for="type" attrs="{'invisible': [('parent_id','=', False)]}" invisible="1"/>
119                             <div attrs="{'invisible': [('parent_id','=', False)]}" invisible="1" name="div_type">
120                                 <field class="oe_inline"
121                                     name="type"/>
122                                 <label for="use_parent_address" class="oe_edit_only"/>
123                                 <field name="use_parent_address" class="oe_edit_only oe_inline"
124                                     on_change="onchange_address(use_parent_address, parent_id)"/>
125                             </div>
126
127                             <label for="street" string="Address"/>
128                             <div>
129                                 <field name="street" placeholder="Street..."/>
130                                 <field name="street2"/>
131                                 <div class="address_format">
132                                     <field name="city" placeholder="City" style="width: 40%%"/>
133                                     <field name="state_id" class="oe_no_button" placeholder="State" style="width: 37%%" options='{"no_open": true}'/>
134                                     <field name="zip" placeholder="ZIP" style="width: 20%%"/>
135                                 </div>
136                                 <field name="country_id" placeholder="Country" class="oe_no_button" options='{"no_open": true}'/>
137                             </div>
138                             <field name="website" widget="url" placeholder="e.g. www.openerp.com"/>
139                         </group>
140                         <group>
141                             <field name="function" placeholder="e.g. Sales Director"
142                                 attrs="{'invisible': [('is_company','=', True)]}"/>
143                             <field name="phone" placeholder="e.g. +32.81.81.37.00"/>
144                             <field name="mobile"/>
145                             <field name="fax"/>
146                             <field name="email" widget="email"/>
147                             <field name="title" domain="[('domain', '=', 'contact')]"
148                                 groups="base.group_no_one"
149                                 options='{"no_open": true}' attrs="{'invisible': [('is_company','=', True)]}" />
150                         </group>
151                     </group>
152
153                     <notebook colspan="4">
154                         <page string="Contacts" attrs="{'invisible': [('is_company','=',False)]}">
155                             <field name="child_ids" context="{'default_parent_id': active_id}" mode="kanban">
156                                 <kanban>
157                                     <field name="color"/>
158                                     <field name="name"/>
159                                     <field name="title"/>
160                                     <field name="email"/>
161                                     <field name="parent_id"/>
162                                     <field name="is_company"/>
163                                     <field name="function"/>
164                                     <field name="phone"/>
165                                     <field name="street"/>
166                                     <field name="street2"/>
167                                     <field name="image"/>
168                                     <field name="zip"/>
169                                     <field name="city"/>
170                                     <field name="country_id"/>
171                                     <field name="mobile"/>
172                                     <field name="state_id"/>
173                                     <templates>
174                                         <t t-name="kanban-box">
175                                             <t t-set="color" t-value="kanban_color(record.color.raw_value)"/>
176                                             <div t-att-class="color + (record.title.raw_value == 1 ? ' oe_kanban_color_alert' : '')" style="position: relative">
177                                                 <a t-if="! read_only_mode" type="delete" style="position: absolute; right: 0; padding: 4px; diplay: inline-block">X</a>
178                                                 <div class="oe_module_vignette">
179                                                 <a type="open">
180                                                     <img t-att-src="kanban_image('res.partner', 'image', record.id.value, {'preview_image': 'image_small'})" class="oe_avatar oe_kanban_avatar_smallbox"/>
181                                                 </a>
182                                                     <div class="oe_module_desc">
183                                                         <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger oe_kanban_color_border">
184                                                             <table class="oe_kanban_table">
185                                                                 <tr>
186                                                                     <td class="oe_kanban_title1" align="left" valign="middle">
187                                                                         <h4><a type="open"><field name="name"/></a></h4>
188                                                                         <i><div t-if="record.function.raw_value">
189                                                                             <field name="function"/></div></i>
190                                                                         <div><a t-if="record.email.raw_value" title="Mail" t-att-href="'mailto:'+record.email.value">
191                                                                             <field name="email"/>
192                                                                         </a></div>
193                                                                     </td>
194                                                                 </tr>
195                                                             </table>
196                                                         </div>
197                                                     </div>
198                                                 </div>
199                                             </div>
200                                         </t>
201                                     </templates>
202                                 </kanban>
203                                 <form string="Contact" version="7.0">
204                                     <field name="image" widget='image' class="oe_avatar oe_left" options='{"preview_image": "image_medium"}'/>
205                                     <div class="oe_title">
206                                         <group>
207                                             <field name="name"/>
208                                             <field name="category_id" widget="many2many_tags" placeholder="Tags..."/>
209                                             <field name="function" placeholder="e.g. Sales Director"/>
210                                             <field name="email"/>
211                                             <field name="phone"/>
212                                             <field name="mobile"/>
213                                         </group>
214                                     </div>
215                                 </form>
216                             </field>
217                         </page>
218                         <page string="Internal Notes">
219                             <field name="comment" placeholder="Internal notes about this customer..."/>
220                         </page>
221                         <page string="Sales &amp; Purchases" attrs="{'invisible': [('customer', '=', False), ('supplier', '=', False)]}">
222                             <group>
223                                 <group>
224                                     <field name="user_id"/>
225                                     <field name="company_id" groups="base.group_multi_company" widget="selection"/>
226                                 </group>
227                                 <group>
228                                     <field name="customer"/>
229                                     <field name="supplier" invisible="not context.get('default_supplier')"/>
230                                 </group>
231                                 <group>
232                                     <field name="ref"/>
233                                     <field name="lang"/>
234                                     <field name="date"/>
235                                 </group>
236                                 <group>
237                                     <field name="active"/>
238                                 </group>
239                             </group>
240                         </page>
241                         <!-- The History page becomes visible as soon as there is something to display inside -->
242                         <page string="History" name="page_history" invisible="True">
243                         </page>
244                     </notebook>
245                 </sheet>
246                 </form>
247             </field>
248         </record>
249
250        <record id="view_res_partner_filter" model="ir.ui.view">
251             <field name="name">res.partner.select</field>
252             <field name="model">res.partner</field>
253             <field name="arch" type="xml">
254                 <search string="Search Partner">
255                    <field name="name"
256                        filter_domain="['|','|',('name','ilike',self),('parent_id','ilike',self),('ref','=',self)]"
257                        string="Partner"/>
258                    <filter help="My Partners" icon="terp-personal+" domain="[('user_id','=',uid)]"/>
259                    <separator/>
260                    <filter string="Persons" name="type_person" icon="terp-personal" domain="[('is_company','=',0)]"/>
261                    <filter string="Companies" name="type_company" icon="terp-partner" domain="[('is_company','=',1)]"/>
262                    <separator/>
263                    <filter string="Customers" name="customer" icon="terp-personal" domain="[('customer','=',1)]" help="Customer Partners"/>
264                    <separator/>
265                    <filter string="Suppliers" name="supplier" icon="terp-personal" domain="[('supplier','=',1)]" help="Supplier Partners"/>
266                    <field name="category_id" string="Category" filter_domain="[('category_id','ilike', self)]"/>
267                    <field name="user_id"/>
268                    <field name="parent_id" filter_domain="[('parent_id','child_of',[self])]"/>
269                    <group expand="0" string="Group By...">
270                        <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by' : 'user_id'}" />
271                        <filter string="Company" context="{'group_by': 'parent_id'}"/>
272                    </group>
273                </search>
274             </field>
275         </record>
276
277         <!-- Partner Kanban View -->
278         <record model="ir.ui.view" id="res_partner_kanban_view">
279             <field name="name">res.partner.kanban</field>
280             <field name="model">res.partner</field>
281             <field name="arch" type="xml">
282                 <kanban>
283                     <field name="color"/>
284                     <field name="name"/>
285                     <field name="title"/>
286                     <field name="email"/>
287                     <field name="parent_id"/>
288                     <field name="is_company"/>
289                     <field name="function"/>
290                     <field name="phone"/>
291                     <field name="street"/>
292                     <field name="street2"/>
293                     <field name="zip"/>
294                     <field name="city"/>
295                     <field name="country_id"/>
296                     <field name="mobile"/>
297                     <field name="state_id"/>
298                     <field name="category_id"/>
299                     <templates>
300                         <t t-name="kanban-box">
301                             <div class="oe_kanban_vignette oe_semantic_html_override">
302                                 <a type="open">
303                                     <img t-att-src="kanban_image('res.partner', 'image_small', record.id.value)" class="oe_kanban_image"/>
304                                 </a>
305                                 <div class="oe_kanban_details">
306                                     <h4 class="oe_partner_heading"><a type="open"><field name="name"/></a></h4>
307                                     <div class="oe_kanban_partner_categories"/>
308                                     <div class="oe_kanban_partner_links"/>
309                                     <ul>
310                                         <li t-if="record.parent_id.raw_value and !record.function.raw_value"><field name="parent_id"/></li>
311                                         <li t-if="!record.parent_id.raw_value and record.function.raw_value"><field name="function"/></li>
312                                         <li t-if="record.parent_id.raw_value and record.function.raw_value"><field name="function"/> at <field name="parent_id"/></li>
313                                         <li t-if="record.city.raw_value and !record.country.raw_value"><field name="city"/></li>
314                                         <li t-if="!record.city.raw_value and record.country.raw_value"><field name="country"/></li>
315                                         <li t-if="record.city.raw_value and record.country.raw_value"><field name="city"/>, <field name="country"/></li>
316                                         <li t-if="record.phone.raw_value">Tel: <field name="phone"/></li>
317                                         <li t-if="record.mobile.raw_value">Mobile: <field name="mobile"/></li>
318                                         <li t-if="record.email.raw_value"><a t-attf-href="mailto:#{record.email.raw_value}"><field name="email"/></a></li>
319                                     </ul>
320                                 </div>
321                             </div>
322
323                         </t>
324                     </templates>
325                 </kanban>
326             </field>
327         </record>
328
329         <record id="action_partner_form" model="ir.actions.act_window">
330             <field name="name">Customers</field>
331             <field name="type">ir.actions.act_window</field>
332             <field name="res_model">res.partner</field>
333             <field name="view_type">form</field>
334             <field name="view_mode">kanban,tree,form</field>
335             <field name="context">{"search_default_customer":1}</field>
336             <field name="search_view_id" ref="view_res_partner_filter"/>
337             <field name="help" type="html">
338               <p class="oe_view_nocontent_create">
339                 Click to add a contact in your address book.
340               </p><p>
341                 OpenERP helps you easily track all activities related to
342                 a customer; discussions, history of business opportunities,
343                 documents, etc.
344               </p>
345             </field>
346         </record>
347         <record id="action_partner_form_view1" model="ir.actions.act_window.view">
348             <field eval="0" name="sequence"/>
349             <field name="view_mode">kanban</field>
350             <field name="view_id" ref="res_partner_kanban_view"/>
351             <field name="act_window_id" ref="action_partner_form"/>
352         </record>
353         <record id="action_partner_form_view2" model="ir.actions.act_window.view">
354             <field eval="2" name="sequence"/>
355             <field name="view_mode">form</field>
356             <field name="view_id" ref="view_partner_form"/>
357             <field name="act_window_id" ref="action_partner_form"/>
358         </record>
359         <record id="action_partner_tree_view1" model="ir.actions.act_window.view">
360             <field name="sequence" eval="1"/>
361             <field name="view_mode">tree</field>
362             <field name="view_id" ref="view_partner_tree"/>
363             <field name="act_window_id" ref="action_partner_form"/>
364         </record>
365         <menuitem id="menu_partner_form" parent="base.menu_sales" action="action_partner_form" sequence="1"/>
366
367         <record id="action_partner_customer_form" model="ir.actions.act_window">
368             <field name="name">Customers</field>
369             <field name="type">ir.actions.act_window</field>
370             <field name="res_model">res.partner</field>
371             <field name="view_type">form</field>
372             <field name="view_mode">kanban,tree,form</field>
373             <field name="domain">[('customer','=',1)]</field>
374             <field name="context">{'default_customer':1, 'search_default_customer':1}</field>
375             <field name="filter" eval="True"/>
376             <field name="help" type="html">
377               <p class="oe_view_nocontent_create">
378                 Click to add a contact in your address book.
379               </p><p>
380                 OpenERP helps you easily track all activities related to
381                 a customer: discussions, history of business opportunities,
382                 documents, etc.
383               </p>
384             </field>
385         </record>
386
387         <record id="action_partner_supplier_form" model="ir.actions.act_window">
388             <field name="name">Suppliers</field>
389             <field name="type">ir.actions.act_window</field>
390             <field name="res_model">res.partner</field>
391             <field name="view_type">form</field>
392             <field name="domain">[]</field>
393             <field name="view_mode">kanban,tree,form</field>
394             <field name="context">{'search_default_supplier': 1,'default_customer': 0,'default_supplier': 1}</field>
395             <field name="filter" eval="True"/>
396             <field name="help" type="html">
397               <p class="oe_view_nocontent_create">
398                 Click to add a contact in your address book.
399               </p><p>
400                 OpenERP helps you easily track all activities related to
401                 a supplier: discussions, history of purchases,
402                 documents, etc.
403               </p>
404             </field>
405         </record>
406
407         <record id="action_partner_employee_form" model="ir.actions.act_window">
408             <field name="name">Employees</field>
409             <field name="type">ir.actions.act_window</field>
410             <field name="res_model">res.partner</field>
411             <field name="view_type">form</field>
412             <field name="domain">[('employee','=',1)]</field>
413             <field name="context">{'default_customer':0, 'default_supplier':0 , 'default_employee':1}</field>
414             <field name="filter" eval="True"/>
415         </record>
416
417         <record id="action_partner_other_form" model="ir.actions.act_window">
418             <field name="name">Other Partners</field>
419             <field name="type">ir.actions.act_window</field>
420             <field name="res_model">res.partner</field>
421             <field name="view_type">form</field>
422             <field name="domain">[('supplier','&lt;&gt;',1),('customer','&lt;&gt;',1)]</field>
423             <field name="filter" eval="True"/>
424         </record>
425
426         <record id="view_payterm_form" model="ir.ui.view">
427             <field name="name">res.payterm</field>
428             <field name="model">res.payterm</field>
429             <field name="arch" type="xml">
430                 <form string="Payment Term" version="7.0">
431                     <group>
432                         <field name="name"/>
433                     </group>
434                 </form>
435             </field>
436         </record>
437         <record id="action_payterm_form" model="ir.actions.act_window">
438             <field name="name">Payment term</field>
439             <field name="type">ir.actions.act_window</field>
440             <field name="res_model">res.payterm</field>
441             <field name="view_type">form</field>
442             <field name="view_id" ref="view_payterm_form"/>
443         </record>
444
445         <!-- Categories -->
446         <record id="view_partner_category_form" model="ir.ui.view">
447             <field name="name">Partner Categories</field>
448             <field name="model">res.partner.category</field>
449             <field name="arch" type="xml">
450                 <form string="Partner Category" version="7.0">
451                     <group col="4">
452                         <field name="name"/>
453                         <field name="active"/>
454                         <field name="parent_id"/>
455                     </group>
456                 </form>
457             </field>
458         </record>
459         <record id="view_partner_category_list" model="ir.ui.view">
460             <field name="name">Partner Categories</field>
461             <field name="model">res.partner.category</field>
462             <field eval="6" name="priority"/>
463             <field name="arch" type="xml">
464                 <tree string="Partner Categories">
465                     <field name="complete_name"/>
466                 </tree>
467             </field>
468         </record>
469         <record id="view_partner_category_tree" model="ir.ui.view">
470             <field name="name">res.partner.category.tree</field>
471             <field name="model">res.partner.category</field>
472             <field name="field_parent">child_ids</field>
473             <field name="arch" type="xml">
474                 <tree toolbar="1" string="Partner Categories">
475                     <field name="name"/>
476                 </tree>
477             </field>
478         </record>
479         <!--
480         <record id="action_partner_category" model="ir.actions.act_window">
481             <field name="name">Partners by Categories</field>
482             <field name="type">ir.actions.act_window</field>
483             <field name="res_model">res.partner.category</field>
484             <field name="view_type">tree</field>
485             <field name="view_id" ref="view_partner_category_tree"/>
486             <field name="domain">[('parent_id','=',False)]</field>
487         </record>
488         <menuitem action="action_partner_category" id="menu_partner_category_main" parent="base.menu_address_book" sequence="1"
489             groups="base.group_no_one"/>
490         -->
491
492         <record id="action_partner_by_category" model="ir.actions.act_window">
493             <field name="name">Partner Categories</field>
494             <field name="res_model">res.partner</field>
495             <field name="view_type">form</field>
496             <field name="view_mode">tree,form</field>
497             <field name="domain">[('category_id','child_of', [active_id])]</field>
498             <field name="context">{'category_id':active_id}</field>
499             <field name="search_view_id" ref="view_res_partner_filter"/>
500         </record>
501
502         <record id="ir_action_partner_by_category" model="ir.values">
503             <field eval="'tree_but_open'" name="key2"/>
504             <field eval="'res.partner.category'" name="model"/>
505             <field name="name">Open partners</field>
506             <field eval="'ir.actions.act_window,%d'%action_partner_by_category" name="value"/>
507         </record>
508
509         <record id="action_partner_category_form" model="ir.actions.act_window">
510             <field name="name">Partner Categories</field>
511             <field name="type">ir.actions.act_window</field>
512             <field name="res_model">res.partner.category</field>
513             <field name="view_type">form</field>
514             <field name="help">Manage the partner categories in order to better classify them for tracking and analysis purposes. A partner may belong to several categories and categories have a hierarchy structure: a partner belonging to a category also belong to his parent category.</field>
515         </record>
516
517         <menuitem action="action_partner_category_form" id="menu_partner_category_form" name="Partner Categories" sequence="4" parent="menu_config_address_book" groups="base.group_no_one"/>
518
519     </data>
520 </openerp>