1 <?xml version="1.0" encoding="utf-8"?>
5 <menuitem id="base.menu_project_report" name="Reporting" parent="base.menu_main_pm" sequence="50"/>
7 <record id="view_task_project_user_tree" model="ir.ui.view">
8 <field name="name">report.project.task.user.tree</field>
9 <field name="model">report.project.task.user</field>
10 <field name="type">tree</field>
11 <field name="arch" type="xml">
12 <tree string="Tasks Analysis">
13 <field name="name" invisible="1"/>
14 <field name="project_id" invisible="1"/>
15 <field name="user_id" invisible="1"/>
16 <field name="date_deadline" invisible="1"/>
17 <field name="state" invisible="1"/>
18 <field name="date_start" invisible="1"/>
19 <field name="date_end" invisible="1"/>
20 <field name="company_id" invisible="1" groups="base.group_multi_company"/>
21 <field name="partner_id" invisible="1"/>
22 <field name="type_id" invisible="1"/>
23 <field name="day" invisible="1"/>
24 <field name="month" invisible="1"/>
25 <field name="year" invisible="1"/>
26 <field name="nbr" sum='# of tasks'/>
27 <field name="no_of_days" sum="# of Days"/>
28 <field name="total_hours" sum='Total Hours'/>
29 <field name="hours_planned" sum='Planned Hours'/>
30 <field name="remaining_hours" sum='Remaining Hours'/>
31 <field name="hours_effective" sum='Effective Hours'/>
32 <field name="hours_delay" sum='Avg. Plan.-Eff.'/>
33 <field name="opening_days" sum='Days to Open'/>
34 <field name="closing_days" sum='Days to Close'/>
35 <field name="delay_endings_days" sum='OverPass delay'/>
36 <field name="progress" sum='Progress' widget='progressbar'/>
41 <record id="view_task_project_user_graph" model="ir.ui.view">
42 <field name="name">report.project.task.user.graph</field>
43 <field name="model">report.project.task.user</field>
44 <field name="type">graph</field>
45 <field name="arch" type="xml">
46 <graph string="Tasks Analysis" type="bar">
48 <field name="state" group="True"/>
49 <field name="no_of_days" operator="+"/>
54 <record id="view_task_project_user_search" model="ir.ui.view">
55 <field name="name">report.project.task.user.search</field>
56 <field name="model">report.project.task.user</field>
57 <field name="type">search</field>
58 <field name="arch" type="xml">
59 <search string="Tasks Analysis">
60 <group colspan="10" col="12">
61 <filter icon="terp-go-year" string=" Year "
62 domain="[('date_start','<=', time.strftime('%%Y-%%m-%%d')),('date_start','>=',time.strftime('%%Y-01-01'))]"
64 <filter icon="terp-go-month" string=" Month "
66 domain="[('date_start','<=', time.strftime('%%Y-%%m-%%d')),('date_start','>=',time.strftime('%%Y-%%m-01'))]"
67 help="Current Month"/>
68 <filter icon="terp-go-week"
71 domain="[('date_start','<=', (datetime.date (int(time.strftime('%%Y')), datetime.date.today().month, 1) - datetime.timedelta (days = 1)).strftime('%%Y-%%m-%%d')),('date_start','>',(datetime.date (int(time.strftime('%%Y')), datetime.date.today().month-1, 1)).strftime('%%Y-%%m-%%d'))]"
72 help="Previous Month"/>
73 <separator orientation="vertical"/>
74 <filter string="Draft"
75 icon="terp-document-new"
76 domain="[('state','=','draft')]"
77 help = "Draft tasks"/>
78 <filter string="Current"
80 domain="[('state', '=' ,'open')]"
81 help = "In progress tasks"/>
82 <filter string="Pending"
83 icon="terp-gtk-media-pause"
84 domain="[('state','=','pending')]"
85 help = "Pending tasks"/>
87 icon="terp-dialog-close"
89 domain="[('state','=','done')]"/>
90 <separator orientation="vertical"/>
91 <field name="project_id">
92 <filter icon="terp-folder-blue"
94 help="My Projects" domain="[('project_id.user_id','=',uid)]"/>
97 <field name="user_id" widget="selection">
98 <filter icon="terp-personal"
101 domain="[('user_id','=',uid)]" />
102 <filter icon="terp-personal-"
103 string="Non Assigned Tasks to users"
104 help="Non Assigned Tasks to users"
105 domain="[('user_id','=',False)]"/>
107 <field name="partner_id" />
110 <group expand="0" string="Extended Filters..." colspan="10" col="12" groups="base.group_extended">
111 <field name="type_id" widget="selection"/>
112 <separator orientation="vertical"/>
113 <field name="date_start"/>
114 <field name="date_deadline"/>
115 <field name="date_end"/>
116 <separator orientation="vertical"/>
117 <field name="priority"/>
118 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
121 <group expand="1" string="Group By..." colspan="10" col="12">
122 <filter string="Project" name="project" icon="terp-folder-blue" context="{'group_by':'project_id'}"/>
123 <filter string="Task" icon="terp-stock_align_left_24" context="{'group_by':'name'}" />
124 <separator orientation="vertical"/>
125 <filter string="Partner" icon="terp-partner" context="{'group_by':'partner_id'}" />
126 <filter string="Assigned to" name="User" icon="terp-personal" context="{'group_by':'user_id'}" />
127 <separator orientation="vertical"/>
128 <filter string="State" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
129 <filter string="Company" icon="terp-go-home" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
130 <filter string="Stage" icon="terp-stage" context="{'group_by':'type_id'}" />
131 <separator orientation="vertical"/>
132 <filter string="Day" icon="terp-go-today" context="{'group_by':'day'}" help="Current Day"/>
133 <filter string="Month" icon="terp-go-month" context="{'group_by':'month'}" help="Current Month"/>
134 <filter string="Year" icon="terp-go-year" context="{'group_by':'year'}" help="Current Year"/>
140 <record id="action_project_task_user_tree" model="ir.actions.act_window">
141 <field name="name">Tasks Analysis</field>
142 <field name="res_model">report.project.task.user</field>
143 <field name="view_type">form</field>
144 <field name="view_mode">tree,graph</field>
145 <field name="search_view_id" ref="view_task_project_user_search"/>
146 <field name="context">{'search_default_month':1,'search_default_project':1,'group_by_no_leaf':1,'group_by':[]}</field>
147 <field name="help">Get detailed analysis by task</field>
150 <menuitem action="action_project_task_user_tree" id="menu_project_task_user_tree" parent="base.menu_project_report" groups="project.group_project_manager"/>
152 <!-- Views and action for project dashboard -->
153 <record id="view_project_vs_remaining_hours_tree" model="ir.ui.view">
154 <field name="name">project.vs.remaining.hour.tree</field>
155 <field name="model">project.vs.hours</field>
156 <field name="type">tree</field>
157 <field name="arch" type="xml">
158 <tree string="Remaining Hours Per Project" colors="pink:state=='draft';blue:state=='pending';black:state=='open';red:state=='cancelled';grey:state=='close';yellow:state=='template'">
159 <field name="project"/>
160 <field name="remaining_hours"/>
161 <field name="state"/>
166 <record id="view_project_vs_remaining_hours_graph" model="ir.ui.view">
167 <field name="name">project.vs.remaining.hour.graph</field>
168 <field name="model">project.vs.hours</field>
169 <field name="type">graph</field>
170 <field name="arch" type="xml">
171 <graph string="Project vs remaining hours" type="bar">
172 <field name="project"/>
173 <field name="state" group="True"/>
174 <field name="remaining_hours" operator="+"/>
179 <record id="action_project_vs_remaining_hours_graph" model="ir.actions.act_window">
180 <field name="name">Remaining Hours Per Project</field>
181 <field name="res_model">project.vs.hours</field>
182 <field name="view_type">form</field>
183 <field name="view_mode">graph,tree</field>
184 <field name="domain">[('uid','=',uid),('state','=','open')]</field>
185 <field name="view_id" ref="view_project_vs_remaining_hours_graph"/>
188 <record id="open_view_project_vs_remaining_hours_tree" model="ir.actions.act_window.view">
189 <field eval="1" name="sequence"/>
190 <field name="view_mode">graph</field>
191 <field name="view_id" ref="view_project_vs_remaining_hours_graph"/>
192 <field name="act_window_id" ref="action_project_vs_remaining_hours_graph"/>
194 <record id="open_view_project_vs_remaining_hours_graph" model="ir.actions.act_window.view">
195 <field eval="2" name="sequence"/>
196 <field name="view_mode">graph</field>
197 <field name="view_id" ref="view_project_vs_remaining_hours_graph"/>
198 <field name="act_window_id" ref="action_project_vs_remaining_hours_graph"/>
200 <!-- Views and action for project issue dashboard -->
201 <record id="view_task_by_days_tree" model="ir.ui.view">
202 <field name="name">task.by.days.tree</field>
203 <field name="model">task.by.days</field>
204 <field name="type">tree</field>
205 <field name="arch" type="xml">
206 <tree string="Task By Days" >
208 <field name="total_task"/>
209 <field name="state"/>
214 <record id="view_task_by_days_graph" model="ir.ui.view">
215 <field name="name">task.by.days.graph</field>
216 <field name="model">task.by.days</field>
217 <field name="type">graph</field>
218 <field name="arch" type="xml">
219 <graph string="Task By Days" type="bar">
221 <field name="state" group="True"/>
222 <field name="project_id" group="True"/>
223 <field name="total_task" operator="+"/>
228 <record id="action_task_by_days_graph" model="ir.actions.act_window">
229 <field name="name">Task By Days</field>
230 <field name="res_model">task.by.days</field>
231 <field name="view_type">form</field>
232 <field name="view_mode">graph,tree</field>
233 <field name="domain">[('day','<=',time.strftime('%Y-%m-%d')),('day','>=', time.strftime('%Y-%m-%d', time.localtime(time.time()-(15*24*3600))))]</field>
234 <field name="view_id" ref="view_task_by_days_graph"/>
237 <!-- Views and action for project dashboard -->
238 <record id="view_project_vs_planned_total_hours_tree" model="ir.ui.view">
239 <field name="name">project.vs.planned.total.hour.tree</field>
240 <field name="model">project.vs.hours</field>
241 <field name="type">tree</field>
242 <field name="arch" type="xml">
243 <tree string="Project Vs Planned and Total Hours" colors="pink:state=='draft';blue:state=='pending';black:state=='open';red:state=='cancelled';grey:state=='close';yellow:state=='template'">
244 <field name="project"/>
245 <field name="planned_hours"/>
246 <field name="total_hours"/>
251 <record id="view_project_vs_planned_total_hours_graph" model="ir.ui.view">
252 <field name="name">project.vs.planned.total.hour.graph</field>
253 <field name="model">project.vs.hours</field>
254 <field name="type">graph</field>
255 <field name="arch" type="xml">
256 <graph string="Project Vs Planned and Total Hours" type="bar">
257 <field name="project"/>
258 <field name="planned_hours" operator="+"/>
259 <field name="total_hours" operator="+"/>
264 <record id="action_project_vs_planned_total_hours_graph" model="ir.actions.act_window">
265 <field name="name">Projects: Planned Vs Total hours</field>
266 <field name="res_model">project.vs.hours</field>
267 <field name="view_type">form</field>
268 <field name="view_mode">graph,tree</field>
269 <field name="domain">[('uid','=',uid),('state','=','open')]</field>
270 <field name="view_id" ref="view_project_vs_planned_total_hours_graph"/>
273 <record id="open_view_project_vs_planned_total_hours_tree" model="ir.actions.act_window.view">
274 <field eval="1" name="sequence"/>
275 <field name="view_mode">graph</field>
276 <field name="view_id" ref="view_project_vs_planned_total_hours_graph"/>
277 <field name="act_window_id" ref="action_project_vs_planned_total_hours_graph"/>
279 <record id="open_view_project_vs_planned_total_hours_graph" model="ir.actions.act_window.view">
280 <field eval="2" name="sequence"/>
281 <field name="view_mode">graph</field>
282 <field name="view_id" ref="view_project_vs_planned_total_hours_graph"/>
283 <field name="act_window_id" ref="action_project_vs_planned_total_hours_graph"/>