[FIX] Binary Field shouldn't load all base64 data when the object data is loaded
[odoo/odoo.git] / addons / project_long_term / project_long_term_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3     <data>
4
5     <menuitem id="base.menu_project_long_term" name="Planning" parent="base.menu_main_pm" sequence="1"/>
6
7     # ------------------------------------------------------
8     # Project User Allocation
9     # ------------------------------------------------------
10
11         <record id="view_project_user_allocation_gantt" model="ir.ui.view">
12             <field name="name">project.user.allocation.gantt</field>
13             <field name="model">project.user.allocation</field>
14             <field name="type">gantt</field>
15             <field name="arch" type="xml">
16               <gantt color="project_id" date_start="date_start" date_stop="date_end" mode="year">
17                <level object="res.users" link="user_id" domain="[]">
18                     <field name="phase_id"/>
19                 </level>
20               </gantt>
21             </field>
22         </record>
23
24         <record id="view_project_user_allocation_calendar" model="ir.ui.view">
25             <field name="name">project.user.allocation.calendar</field>
26             <field name="model">project.user.allocation</field>
27             <field name="type">calendar</field>
28             <field eval="2" name="priority"/>
29             <field name="arch" type="xml">
30                 <calendar color="user_id" date_start="date_start" date_stop="date_end" day_length="12" string="Users">
31                     <field name="phase_id"/>
32                     <field name="project_id"/>
33                 </calendar>
34             </field>
35         </record>
36
37
38         <record id="view_project_user_allocation_form" model="ir.ui.view">
39             <field name="name">project.user.allocation.form</field>
40             <field name="model">project.user.allocation</field>
41             <field name="type">form</field>
42             <field name="arch" type="xml">
43                 <form string="Project User Allocation">
44                     <group colspan="4" col="6">
45                         <field name="user_id"/>
46                         <field name="phase_id"/>
47                         <field name="project_id"/>
48                         <field name="date_start"/>
49                         <field name="date_end"/>
50                     </group>
51                 </form>
52             </field>
53         </record>
54
55         <record id="view_project_user_allocation_list" model="ir.ui.view">
56             <field name="name">project.user.allocation.list</field>
57             <field name="model">project.user.allocation</field>
58             <field name="type">tree</field>
59             <field name="priority" eval="5"/>
60             <field name="arch" type="xml">
61                 <tree editable="bottom" string="Project User Allocation">
62                     <field name="user_id"/>
63                     <field name="phase_id"/>
64                     <field name="project_id"/>
65                 </tree>
66             </field>
67         </record>
68
69        <record id="view_project_user_allocation_search" model="ir.ui.view">
70             <field name="name">project.user.allocation.search</field>
71             <field name="model">project.user.allocation</field>
72             <field name="type">search</field>
73             <field name="arch" type="xml">
74                 <search string="Planning of Users">
75                     <group>
76                         <field name="user_id"/>
77                         <field name="phase_id"/>
78                         <field name="project_id"/>
79                     </group>
80                     <newline/>
81                     <group expand="0" string="Group By...">
82                         <filter name="user" string="User" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
83                         <separator orientation="vertical"/>
84                         <filter string="Project" icon="terp-folder-violet" domain="[]" context="{'group_by':'project_id'}"/>
85                         <filter string="Phase" icon="terp-project" domain="[]" context="{'group_by':'phase_id'}"/>
86                     </group>
87                 </search>
88             </field>
89         </record>
90        <record id="act_resouce_allocation" model="ir.actions.act_window">
91             <field name="name">Planning of Users</field>
92             <field name="res_model">project.user.allocation</field>
93             <field name="view_type">form</field>
94             <field name="view_mode">gantt,tree,form,calendar</field>
95              <field name="context">{}</field>
96             <field name="search_view_id" ref="view_project_user_allocation_search"/>
97         </record>
98
99
100     # ------------------------------------------------------
101     # Project Phase
102     # ------------------------------------------------------
103
104         <record id="view_project_phase_form" model="ir.ui.view">
105             <field name="name">project.phase.form</field>
106             <field name="model">project.phase</field>
107             <field name="type">form</field>
108             <field name="arch" type="xml">
109                 <form string="Project Phase">
110                     <group colspan="6" col="6">
111                         <group colspan="6" col="7" >
112                             <field name="name" colspan="4"/>
113                             <field name="project_id" on_change="onchange_project(project_id)" colspan="3"/>
114                             <field name="date_start"/>
115                             <field name="date_end"/>
116                             <field name="duration"/>
117                             <field name="product_uom" nolabel="1"/>
118                         </group>
119                     </group>
120                     <notebook colspan="4">
121                         <page string="Planning of Users">
122                             <field colspan="4" name="user_ids" nolabel="1">
123                                  <tree editable="bottom" string="Project Users">
124                                     <field name="user_id"/>
125                                     <field name="date_start"/>
126                                     <field name="date_end"/>
127                                   </tree>
128                                   <form string="Project Users">
129                                     <field name="user_id"/>
130                                     <field name="date_start" /> 
131                                     <field name="date_end"/>
132                                   </form>
133                              </field>
134                             <separator string="" colspan="4"/>
135                             <group col="12" colspan="4">
136                                 <field name="state" widget="statusbar" statusbar_visible="draft,open,done" statusbar_colors='{"pending":"blue"}' select="1"/>
137                                 <button string="Cancel" name="set_cancel" states="draft,open,pending" icon="gtk-cancel"/>
138                                 <button string="Draft" name="set_draft" states="open" icon="gtk-indent"/>
139                                 <button string="Pending" name="set_pending" states="open" icon="gtk-media-pause"/>
140                                 <button string="Done" name="set_done" states="pending,open" icon="terp-dialog-close"/>
141                                 <button string="Start Phase" name="set_open" states="pending,draft" icon="gtk-execute"/>
142                             </group>
143                         </page>
144                         <page string="Tasks Details">
145                             <field colspan="4" name="task_ids" readonly="1" context="{'default_project_id' :project_id}" nolabel="1">
146                                  <tree string="Project's Tasks">
147                                     <field name="sequence"/>
148                                     <field name="name"/>
149                                     <field name="user_id"/>
150                                     <field name="date_start"/>
151                                     <field name="date_end" />
152                                     <field name="planned_hours" widget="float_time"/>
153                                     <field name="project_id" invisible="1"/>
154                                     <field name="total_hours" sum='Total Hours'/>
155                                     <field name="remaining_hours" widget="float_time" sum="Remaining Hours"/>
156                                     <field name="state"/>
157                                   </tree>
158                              </field>
159                         </page>
160                         <page string="Constraints">
161                            <group colspan="2" col="2">
162                                 <separator string="Constraints" colspan="2"/>
163                                 <field name="constraint_date_start"/>
164                                 <field name="constraint_date_end"/>
165                             </group>
166                             <group colspan="2" col="2">
167                                 <separator string="Displaying settings" colspan="2"/>
168                                 <field name="sequence"/>
169                             </group>
170                            <separator colspan="4" string="Force Assigned Users"/>
171                            <field colspan="4" name="user_force_ids" nolabel="1"/>
172                            <separator colspan="4" string="Previous Phases"/>
173                            <field colspan="4" name="previous_phase_ids" nolabel="1"/>
174                            <separator colspan="4" string="Next Phases"/>
175                            <field colspan="4" name="next_phase_ids" nolabel="1"/>
176                         </page>
177                     </notebook>
178                     <newline/>
179                 </form>
180             </field>
181         </record>
182
183         <record id="view_project_phase_list" model="ir.ui.view">
184             <field name="name">project.phase.list</field>
185             <field name="model">project.phase</field>
186             <field name="type">tree</field>
187             <field name="priority" eval="5"/>
188             <field name="arch" type="xml">
189                 <tree colors="grey:state in ('cancelled','done');blue:state == 'pending'" string="Project Phases">
190                     <field name="name"/>
191                     <field name="project_id" on_change="onchange_project(project_id)"/>
192                     <field name="date_start"/>
193                     <field name="date_end"/>
194                     <field name="duration"/>
195                     <field name="state"/>
196                 </tree>
197             </field>
198         </record>
199
200         <record id="view_project_phase_calendar" model="ir.ui.view">
201             <field name="name">project.phase.calendar</field>
202             <field name="model">project.phase</field>
203             <field name="type">calendar</field>
204             <field eval="2" name="priority"/>
205             <field name="arch" type="xml">
206                 <calendar color="project_id" date_start="date_start" date_stop="date_end" day_length="12">
207                     <field name="name"/>
208                 </calendar>
209             </field>
210         </record>
211
212         <record id="view_project_phase_gantt" model="ir.ui.view">
213             <field name="name">project.phase.gantt</field>
214             <field name="model">project.phase</field>
215             <field name="type">gantt</field>
216             <field eval="2" name="priority"/>
217             <field name="arch" type="xml">
218                 <gantt color="project_id" date_stop="date_end" date_start="date_start" mode="month">
219                     <level object="project.project" link="project_id" domain="[]">
220                         <field name="name"/>
221                     </level>
222                 </gantt>
223             </field>
224         </record>
225
226         <record id="view_project_phase_search" model="ir.ui.view">
227             <field name="name">project.phase.search</field>
228             <field name="model">project.phase</field>
229             <field name="type">search</field>
230             <field name="arch" type="xml">
231                 <search string="Project Phases">
232                     <group>
233                         <filter string="New" domain="[('state','=','draft')]"  name="current" help="New Phases" icon="terp-check"/>
234                         <filter string="In Progress" name="Progress" domain="[('state','=','open')]" help="In Progress Phases" icon="terp-camera_test"/>
235                         <filter string="Pending" domain="[('state','=','pending')]" help="Pending Phases" icon="terp-gtk-media-pause"/>
236                         <separator orientation="vertical"/>
237                         <field name="name"/>
238                         <field name="project_id">
239                             <filter domain="[('project_id.user_id','=',uid)]" help="My Projects" icon="terp-folder-violet"/>
240                         </field>
241                         <field name="date_start"/>
242                         <field name="date_end"/>
243                     </group>
244                     <newline/>
245                     <group expand="0" string="Group By..." groups="base.group_extended">
246                         <filter string="Project" icon="terp-folder-violet" domain="[]" context="{'group_by':'project_id'}" name="project"/>
247                         <separator orientation="vertical"/>
248                         <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
249                         <separator orientation="vertical"/>
250                         <filter string="Month" icon="terp-go-month" domain="[]" context="{'group_by':'date_start'}" help="Start Month"/>
251                     </group>
252                 </search>
253             </field>
254         </record>
255
256         <record id="act_project_phase" model="ir.actions.act_window">
257             <field name="name">Project Phases</field>
258             <field name="res_model">project.phase</field>
259             <field name="view_type">form</field>
260             <field name="view_mode">gantt,tree,form,calendar</field>
261             <field name="context">{"search_default_current": 1}</field>
262             <field name="search_view_id" ref="view_project_phase_search"/>
263             <field name="help">A project can be split into the different phases. For each phase, you can define your users allocation, describe different tasks and link your phase to previous and next phases, add date constraints for the automated scheduling. Use the long term planning in order to planify your available users, convert your phases into a series of tasks when you start working on the project.</field>
264         </record>
265
266         <record id="act_project_phase_list" model="ir.actions.act_window">
267             <field name="name">Project Phases</field>
268             <field name="res_model">project.phase</field>
269             <field name="view_type">form</field>
270             <field name="view_mode">tree,form,calendar</field>
271              <field name="context">{"search_default_current": 1}</field>
272             <field name="search_view_id" ref="view_project_phase_search"/>
273         </record>
274
275
276     # ------------------------------------------------------
277     # Project Task
278     # ------------------------------------------------------
279
280         <record id="view_phase_task_form2" model="ir.ui.view">
281             <field name="name">phase.task.form2</field>
282             <field name="model">project.task</field>
283             <field name="type">form</field>
284             <field name="inherit_id" ref="project.view_task_form2"/>
285             <field name="arch" type="xml">
286                 <xpath expr="//field[@name='effective_hours']" position="after">
287                     <field name="phase_id"/>
288                 </xpath>
289             </field>
290         </record>
291         <record id="view_phase_task_search_form" model="ir.ui.view">
292             <field name="name">phase.task.search.form</field>
293             <field name="model">project.task</field>
294             <field name="type">search</field>
295             <field name="inherit_id" ref="project.view_task_search_form"/>
296             <field name="arch" type="xml">
297                 <field name="project_id" position="after">
298                     <field name="phase_id" select="1"/>
299                 </field>
300             </field>
301         </record>
302
303          <record id="view_phase_task_search_form_group" model="ir.ui.view">
304             <field name="name">phase.task.search.form.group</field>
305             <field name="model">project.task</field>
306             <field name="type">search</field>
307             <field name="inherit_id" ref="project.view_task_search_form"/>
308             <field name="arch" type="xml">
309             <filter string="Project" name="group_project_id" icon="terp-folder-violet" domain="[]" context="{'group_by':'project_id'}" position="after">
310                 <filter string="Project Phase" name="group_project_id_phase" icon="terp-folder-violet" domain="[]" context="{'group_by':'phase_id'}" groups="base.group_extended"/>
311             </filter>
312             </field>
313         </record>
314
315          <record id="view_phase_task_search_form_tree" model="ir.ui.view">
316             <field name="name">phase.task.search.form.tree</field>
317             <field name="model">project.task</field>
318             <field name="type">tree</field>
319             <field name="inherit_id" ref="project.view_task_tree2"/>
320             <field name="arch" type="xml">
321                 <field name="project_id" position="after">
322                     <field name="phase_id" invisible="1" groups="base.group_extended"/>
323                 </field>
324             </field>
325         </record>
326
327     <act_window
328         context="{'search_default_phase_id': [active_id], 'default_phase_id' : active_id}"
329         id="project_phase_task_list"
330         name="Related Tasks"
331         res_model="project.task"
332         src_model="project.phase"
333         view_mode="tree,form"
334         />
335
336     <act_window
337         context="{'search_default_project_id': active_id, 'default_project_id': active_id}"
338         id="act_project_phases"
339         name="Phases"
340         res_model="project.phase"
341         src_model="project.project"
342         view_mode="tree,form"
343         view_type="form" 
344         />
345
346     # ------------------------------------------------------
347     # Menu Items
348     # ------------------------------------------------------
349
350         <menuitem action="act_project_phase_list"
351             id="menu_project_phase_list" parent="project.menu_project_management" sequence="2"/>
352
353         <menuitem action="act_project_phase"
354             icon="STOCK_INDENT"
355             id="menu_project_phase"   parent="base.menu_project_long_term" sequence="1"/>
356
357         <menuitem id="menu_resouce_allocation" action="act_resouce_allocation"
358             icon="STOCK_INDENT"
359             parent="base.menu_project_long_term" sequence="2"/>
360
361         <menuitem id="menu_pm_users_project1"
362             groups="base.group_extended"
363             name="Resources" parent="project.menu_definitions" sequence="3"/>
364
365         <menuitem id="menu_phase_schedule" name="Scheduling" parent="base.menu_main_pm" sequence="4" groups="project.group_project_user,project.group_project_manager"/>
366         <menuitem action="resource.action_resource_resource_tree" id="menu_view_resource" parent="menu_pm_users_project1" sequence="2"/>
367         <menuitem action="resource.action_resource_calendar_form" id="menu_view_resource_calendar" parent="menu_pm_users_project1" sequence="5"/>
368         <menuitem action="resource.action_resource_calendar_leave_tree" id="menu_view_resource_calendar_leaves" parent="menu_pm_users_project1" sequence="3"/>
369
370     </data>
371 </openerp>