[IMP] better views for crm
[odoo/odoo.git] / addons / crm / crm_opportunity_view.xml
1 <?xml version="1.0"?>
2 <openerp>
3 <data>
4
5     # ------------------------------------------------------
6     # Opportunity Categories
7     # ------------------------------------------------------
8
9     <record id="crm_opportunity_categ_action" model="ir.actions.act_window">
10         <field name="name">Opportunity Categories</field>
11         <field name="res_model">crm.case.categ</field>
12         <field name="view_type">form</field>
13         <field name="view_id"  ref="crm.crm_case_categ_tree-view"/>
14         <field name="domain">[('object_id.model', '=', 'crm.opportunity')]</field>
15         <field name="context">{'object_id':'crm.opportunity'}</field>
16     </record>
17      <menuitem action="crm_opportunity_categ_action" id="menu_crm_case_opportunity-act" parent="crm.menu_crm_case_categ"/>
18         # ------------------------------------------------------
19         # Stage
20         # ------------------------------------------------------
21         <record id="crm_opportunity_stage_act" model="ir.actions.act_window">
22             <field name="name">Opportunity Stages</field>
23             <field name="res_model">crm.case.stage</field>
24             <field name="view_type">form</field>
25              <field name="view_id" ref="crm.crm_case_stage_tree"/>
26             <field name="domain">[('object_id.model', '=', 'crm.opportunity')]</field>
27              <field name="context">{'object_id':'crm.opportunity'}</field>
28         </record>
29       <menuitem action="crm_opportunity_stage_act" id="menu_crm_opportunity_stage_act" parent="crm.menu_crm_case_stage"/>
30     # ------------------------------------------------------
31     # Opportunities
32     # ------------------------------------------------------
33
34
35
36     <record model="ir.ui.view" id="crm_case_form_view_oppor">
37         <field name="name">Opportunities</field>
38         <field name="model">crm.opportunity</field>
39         <field name="type">form</field>
40         <field name="arch" type="xml">
41             <form string="Opportunities">
42                 <group colspan="4" col="7">
43                     <field name="name" string="Opportunity"/>
44                     <field name="stage_id" widget="selection" domain="[('object_id.model', '=', 'crm.opportunity')]"/>
45                     <field name="user_id"/>
46                     <button string="Schedule Meeting"
47                         name="%(wizard_crm_opportunity_meeting_set)d" icon="gtk-redo" type="action" />
48                     <field name="planned_revenue"/>
49                     <field name="probability"/>
50                     <field name="date_deadline" string="Expected Closing"/>
51                     <button string="Schedule Call"
52                         name="%(wizard_crm_opportunity_reschedule_phone_call)d" icon="gtk-redo" type="action"  />
53                 </group>
54                 <notebook colspan="4">
55                 <page string="Opportunity">
56                     <group col="2" colspan="2">
57                         <separator colspan="2" string="Contacts"/>
58                         <field name="partner_id" required="1" select="1" on_change="onchange_partner_id(partner_id, email_from)" colspan="2"/>
59                         <field name="partner_address_id" string="Contact" on_change="onchange_partner_address_id(partner_address_id, email_from)" colspan="1"/>
60                         <field name="email_from" string="Email"/>
61                         <field name="partner_phone"/>
62                     </group>
63                     <group col="2" colspan="2">
64                         <separator colspan="2" string="Categorization"/>
65                         <field name="type_id" select="1" string="Campaign"/>
66                         <field name="section_id" colspan="1" widget="selection"/>
67                         <field name="priority" string="Priority"/>
68                         <field name="categ_id" select="1" on_change="onchange_categ_id(categ_id)" string="Source" widget="selection" domain="[('object_id.model', '=', 'crm.opportunity')]"/>
69                     </group>
70
71                     <separator colspan="4" string="Details"/>
72                     <field name="description" nolabel="1" colspan="4"/>
73
74                     <separator colspan="4"/>
75                     <group col="8" colspan="4">
76                         <field name="state" select="2"/>
77                         <button name="case_open" string="Open" states="draft,pending" type="object" icon="gtk-go-forward"/>
78                         <button name="case_escalate" string="Escalate" states="open,draft,pending" type="object" icon="gtk-go-up"/>
79                         <button name="case_pending" string="Pending" states="draft,open" type="object" icon="gtk-media-pause"/>
80                         <button name="case_close" string="Mark Won" states="open,draft,pending" type="object" icon="gtk-close"/>
81                         <button name="case_cancel" string="Mark Lost" states="draft,open,pending" type="object"  icon="gtk-cancel"/>
82                         <button name="case_reset" string="Reset to New" states="done,cancel" type="object" icon="gtk-convert"/>
83                     </group>
84                 </page>
85
86                 <page string="History" groups="base.group_extended">
87                     <group col="2" colspan="2">
88                         <separator string="Dates" colspan="2"/>
89                         <field name="create_date"/>
90                         <field name="write_date"/>
91                         <field name="date_closed"/>
92                     </group>
93                     <group col="2" colspan="2">
94                         <separator string="Misc" colspan="2"/>
95                         <field name="active"/>
96                     </group>
97                     <separator colspan="4" string="References"/>
98                     <field name="ref"/>
99                     <field name="ref2"/>
100                     <field name="log_ids" nolabel="1" colspan="4">
101                         <form string="Actions">
102                             <separator string="Action Information" colspan="4"/>
103                             <field name="name" colspan="4"/>
104                             <field name="date"/>
105                             <field name="user_id"/>
106                             <field name="som"/>
107                             <field name="canal_id"/>
108                         </form>
109                     </field>
110                 </page>
111                  <page string="Emails" groups="base.group_extended">
112                    <group colspan="4">
113                        <field colspan="4" name="email_cc" string="CC"/>
114                    </group>
115                     <field name="history_line" colspan="4" nolabel="1" mode="form,tree">
116                         <form string="Communication history">
117                             <group col="7" colspan="4">
118                                 <field name="date"/>
119                                 <field name="email"/>
120                                 <field name="canal_id"/>
121                                 <button
122                                    string="Add a CC"
123                                     name="%(crm.action_view_crm_email_add_cc_wizard)d"
124                                     icon="gtk-add" type="action"/>
125                             </group>
126                             <newline/>
127                             <field name="description" colspan="4" nolabel="1"/>
128                             <button colspan="4" string="Reply to Last Email" name="%(crm.wizard_crm_send_mail)d" context="{'mail':'reply'}" icon="gtk-undo" type="action"/>
129                         </form>
130                         <tree string="Communication history">
131                             <field name="description"/>
132                             <field name="email"/>
133                             <field name="date"/>
134                         </tree>
135                     </field>
136                     <button colspan="4" string="Send New Email" name="%(crm.wizard_crm_new_send_mail)d" context="{'mail':'new'}" icon="gtk-go-forward" type="action"/>
137                  </page>
138                 </notebook>
139             </form>
140         </field>
141     </record>
142     <record model="ir.ui.view" id="crm_case_tree_view_oppor">
143         <field name="name">Opportunities Tree</field>
144         <field name="model">crm.opportunity</field>
145         <field name="type">tree</field>
146         <field name="arch" type="xml">
147             <tree string="Opportunities"  colors="blue:state=='pending';grey:state in ('cancel','done')">
148                 <field name="create_date"/>
149                 <field name="name" string="Opportunity"/>
150                 <field name="partner_id"/>
151                 <field name="stage_id"/>
152                 <button name="stage_previous" string="Previous" states="open,pending" type="object" icon="gtk-go-back"/>
153                 <button name="stage_next" string="Next" states="open,pending" type="object" icon="gtk-go-forward"/>
154                 <field name="planned_revenue" sum="Total of Planned Revenue"/>
155                 <field name="probability" widget="progressbar" avg="Avg. of Probability"/>
156                 <field name="date_deadline" string="Excepted Closing"/>
157                 <field name="user_id"/>
158                 <field name="state"/>
159                 <button name="case_open" string="Open" states="draft,pending" type="object" icon="gtk-go-forward"/>
160                 <button name="case_close" string="Won" states="open,draft,pending" type="object" icon="gtk-close"/>
161                 <button name="case_pending" string="Pending" states="open,draft" type="object" icon="gtk-media-pause"/>
162                 <button name="case_cancel" string="Lost" states="draft,open,pending" type="object"  icon="gtk-cancel"/>
163             </tree>
164         </field>
165     </record>
166     <record model="ir.ui.view" id="crm_case_graph_view_opportunity">
167         <field name="name">CRM - Opportunity Graph</field>
168         <field name="model">crm.opportunity</field>
169         <field name="type">graph</field>
170         <field name="arch" type="xml">
171             <graph string="Opportunity by Categories" type="bar" orientation="horizontal">
172                 <field name="categ_id"/>
173                 <field name="planned_cost" operator="+"/>
174                 <field name="state" group="True"/>
175             </graph>
176         </field>
177     </record>
178
179     <record id="view_crm_case_opportunities_filter" model="ir.ui.view">
180         <field name="name">CRM - Opportunities Search</field>
181         <field name="model">crm.opportunity</field>
182         <field name="type">search</field>
183         <field name="arch" type="xml">
184             <search string="Search Opportunities">
185                 <filter icon="gtk-home" string="Today"
186                     domain="[('create_date','&lt;', time.strftime('%%Y-%%m-%%d 23:59:59')), ('create_date','&gt;=', time.strftime('%%Y-%%m-%%d 23:59:59'))]"
187                     help="Todays' Opportunities"
188                 />
189                 <filter icon="gtk-media-rewind" string="7 Days"
190                     help="Opportunities during last 7 days"
191                     domain="[('create_date','&lt;', time.strftime('%%Y-%%m-%%d')), ('create_date','&gt;=',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]"
192                 />
193                 <separator orientation="vertical"/>
194                 <field name="name" string="Opportunity"/>
195                 <field name="user_id" widget="selection">
196                     <filter icon="terp-partner"
197                         domain="[('user_id','=',uid)]"
198                         help="My Opportunities" default="1"
199                     />
200                 </field>
201                 <field name="partner_id"/>
202                 <field name="state">
203                     <filter icon="gtk-media-rewind"
204                         string="New and open opportunities"
205                         default="1"
206                         domain="[('state','in',('draft','open'))]"/>
207                 </field>
208                 <field name="section_id" default="context.get('section_id', False)" select="1" widget="selection" string="Section">
209                     <filter icon="terp-crm"
210                         domain="[('section_id','=',context.get('section_id',False))]"
211                         help="My section"/>
212                 </field>
213                 <newline/>
214                 <group expand="1" string="Group By..." colspan="4">
215                     <filter string="Stage" icon="terp-crm" domain="[]" context="{'group_by':'stage_id'}"/>
216                     <filter string="Partner" icon="terp-crm" domain="[]"  context="{'group_by':'partner_id'}"/>
217                     <filter string="Responsible" icon="terp-crm" domain="[]" context="{'group_by':'user_id'}"/>
218                     <separator orientation="vertical"/>
219                     <filter string="Creation" icon="terp-project" domain="[]" context="{'group_by':'create_date'}"/>
220                     <filter string="Exp.Closing" icon="terp-project" domain="[]" context="{'group_by':'date_deadline'}"/>
221                 </group>
222            </search>
223         </field>
224     </record>
225 </data>
226 </openerp>