[Erp5-report] r43626 seb - in /erp5/trunk/bt5/erp5_project: ActionTemplateItem/portal_types...
nobody at svn.erp5.org
nobody at svn.erp5.org
Wed Feb 23 17:43:19 CET 2011
Author: seb
Date: Wed Feb 23 17:43:19 2011
New Revision: 43626
URL: http://svn.erp5.org?rev=43626&view=rev
Log:
Improve the monthly report :
- display a summary of time spend for the full period in another listbox
- add report a project module level in order to display results
for many projects at a time
Added:
erp5/trunk/bt5/erp5_project/ActionTemplateItem/portal_types/Project%20Module/worker_monthly_report.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_at_date.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_from_date.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_report_depth.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_simulation_state.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_worker_title_list.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_viewMonthlySummaryReportData/
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_viewMonthlySummaryReportData.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_viewMonthlySummaryReportData/listbox.xml
Modified:
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateMonthDomain.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyObjectList.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportContext.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportSectionList.xml
erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_init.xml
erp5/trunk/bt5/erp5_project/bt/revision
erp5/trunk/bt5/erp5_project/bt/template_action_path_list
Added: erp5/trunk/bt5/erp5_project/ActionTemplateItem/portal_types/Project%20Module/worker_monthly_report.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/ActionTemplateItem/portal_types/Project%2520Module/worker_monthly_report.xml?rev=43626&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_project/ActionTemplateItem/portal_types/Project%20Module/worker_monthly_report.xml (added)
+++ erp5/trunk/bt5/erp5_project/ActionTemplateItem/portal_types/Project%20Module/worker_monthly_report.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -0,0 +1,85 @@
+<?xml version="1.0"?>
+<ZopeData>
+ <record id="1" aka="AAAAAAAAAAE=">
+ <pickle>
+ <global name="ActionInformation" module="Products.CMFCore.ActionInformation"/>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>action</string> </key>
+ <value>
+ <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+ </value>
+ </item>
+ <item>
+ <key> <string>categories</string> </key>
+ <value>
+ <tuple>
+ <string>action_type/object_report</string>
+ </tuple>
+ </value>
+ </item>
+ <item>
+ <key> <string>category</string> </key>
+ <value> <string>object_report</string> </value>
+ </item>
+ <item>
+ <key> <string>condition</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value>
+ <none/>
+ </value>
+ </item>
+ <item>
+ <key> <string>icon</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>id</string> </key>
+ <value> <string>worker_monthly_report</string> </value>
+ </item>
+ <item>
+ <key> <string>permissions</string> </key>
+ <value>
+ <tuple>
+ <string>View</string>
+ </tuple>
+ </value>
+ </item>
+ <item>
+ <key> <string>portal_type</string> </key>
+ <value> <string>Action Information</string> </value>
+ </item>
+ <item>
+ <key> <string>priority</string> </key>
+ <value> <float>1.0</float> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string>Worker Monthly Report</string> </value>
+ </item>
+ <item>
+ <key> <string>visible</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+ <record id="2" aka="AAAAAAAAAAI=">
+ <pickle>
+ <global name="Expression" module="Products.CMFCore.Expression"/>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>text</string> </key>
+ <value> <string>string:${object_url}/ProjectModule_viewODSMonthlyReportPrintDialog</string> </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+</ZopeData>
Added: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog.xml?rev=43626&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog.xml (added)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -0,0 +1,136 @@
+<?xml version="1.0"?>
+<ZopeData>
+ <record id="1" aka="AAAAAAAAAAE=">
+ <pickle>
+ <global name="ERP5Form" module="Products.ERP5Form.Form"/>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>_bind_names</string> </key>
+ <value>
+ <object>
+ <klass>
+ <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+ </klass>
+ <tuple/>
+ <state>
+ <dictionary>
+ <item>
+ <key> <string>_asgns</string> </key>
+ <value>
+ <dictionary/>
+ </value>
+ </item>
+ </dictionary>
+ </state>
+ </object>
+ </value>
+ </item>
+ <item>
+ <key> <string>_objects</string> </key>
+ <value>
+ <tuple/>
+ </value>
+ </item>
+ <item>
+ <key> <string>action</string> </key>
+ <value> <string>Project_viewMonthlyReport</string> </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>edit_order</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>encoding</string> </key>
+ <value> <string>UTF-8</string> </value>
+ </item>
+ <item>
+ <key> <string>enctype</string> </key>
+ <value> <string>multipart/form-data</string> </value>
+ </item>
+ <item>
+ <key> <string>group_list</string> </key>
+ <value>
+ <list>
+ <string>left</string>
+ <string>right</string>
+ </list>
+ </value>
+ </item>
+ <item>
+ <key> <string>groups</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>left</string> </key>
+ <value>
+ <list>
+ <string>your_report_depth</string>
+ <string>your_worker_title_list</string>
+ </list>
+ </value>
+ </item>
+ <item>
+ <key> <string>right</string> </key>
+ <value>
+ <list>
+ <string>your_simulation_state</string>
+ <string>your_from_date</string>
+ <string>your_at_date</string>
+ </list>
+ </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>id</string> </key>
+ <value> <string>ProjectModule_viewODSMonthlyReportPrintDialog</string> </value>
+ </item>
+ <item>
+ <key> <string>method</string> </key>
+ <value> <string>POST</string> </value>
+ </item>
+ <item>
+ <key> <string>name</string> </key>
+ <value> <string>Project_viewODSMonthlyPrintDialog</string> </value>
+ </item>
+ <item>
+ <key> <string>pt</string> </key>
+ <value> <string>form_dialog</string> </value>
+ </item>
+ <item>
+ <key> <string>row_length</string> </key>
+ <value> <int>4</int> </value>
+ </item>
+ <item>
+ <key> <string>stored_encoding</string> </key>
+ <value> <string>UTF-8</string> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string>Monthly Report</string> </value>
+ </item>
+ <item>
+ <key> <string>unicode_mode</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>update_action</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>update_action_title</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+</ZopeData>
Added: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_at_date.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_at_date.xml?rev=43626&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_at_date.xml (added)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_at_date.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -0,0 +1,96 @@
+<?xml version="1.0"?>
+<ZopeData>
+ <record id="1" aka="AAAAAAAAAAE=">
+ <pickle>
+ <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>delegated_list</string> </key>
+ <value>
+ <list>
+ <string>required</string>
+ </list>
+ </value>
+ </item>
+ <item>
+ <key> <string>id</string> </key>
+ <value> <string>your_at_date</string> </value>
+ </item>
+ <item>
+ <key> <string>message_values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>external_validator_failed</string> </key>
+ <value> <string>The input failed the external validator.</string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>overrides</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>tales</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string>your_at_date</string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string>Project_viewDialogFieldLibrary</string> </value>
+ </item>
+ <item>
+ <key> <string>required</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string>Click to edit the target</string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+</ZopeData>
Added: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_from_date.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_from_date.xml?rev=43626&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_from_date.xml (added)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_from_date.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -0,0 +1,96 @@
+<?xml version="1.0"?>
+<ZopeData>
+ <record id="1" aka="AAAAAAAAAAE=">
+ <pickle>
+ <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>delegated_list</string> </key>
+ <value>
+ <list>
+ <string>required</string>
+ </list>
+ </value>
+ </item>
+ <item>
+ <key> <string>id</string> </key>
+ <value> <string>your_from_date</string> </value>
+ </item>
+ <item>
+ <key> <string>message_values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>external_validator_failed</string> </key>
+ <value> <string>The input failed the external validator.</string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>overrides</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>tales</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string>your_from_date</string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string>Project_viewDialogFieldLibrary</string> </value>
+ </item>
+ <item>
+ <key> <string>required</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string>Click to edit the target</string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+</ZopeData>
Added: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_report_depth.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_report_depth.xml?rev=43626&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_report_depth.xml (added)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_report_depth.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -0,0 +1,252 @@
+<?xml version="1.0"?>
+<ZopeData>
+ <record id="1" aka="AAAAAAAAAAE=">
+ <pickle>
+ <global name="IntegerField" module="Products.Formulator.StandardFields"/>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>id</string> </key>
+ <value> <string>your_report_depth</string> </value>
+ </item>
+ <item>
+ <key> <string>message_values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>external_validator_failed</string> </key>
+ <value> <string>The input failed the external validator.</string> </value>
+ </item>
+ <item>
+ <key> <string>integer_out_of_range</string> </key>
+ <value> <string>The integer you entered was out of range.</string> </value>
+ </item>
+ <item>
+ <key> <string>not_integer</string> </key>
+ <value> <string>You did not enter an integer.</string> </value>
+ </item>
+ <item>
+ <key> <string>required_not_found</string> </key>
+ <value> <string>Input is required but no input given.</string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>overrides</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>alternate_name</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>css_class</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>default</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>display_maxwidth</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>display_width</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>editable</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>enabled</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>end</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>external_validator</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>extra</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>hidden</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>required</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>start</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>whitespace_preserve</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>tales</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>alternate_name</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>css_class</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>default</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>display_maxwidth</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>display_width</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>editable</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>enabled</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>end</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>external_validator</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>extra</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>hidden</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>required</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>start</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>whitespace_preserve</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>alternate_name</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>css_class</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>default</string> </key>
+ <value> <string>5</string> </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>display_maxwidth</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>display_width</string> </key>
+ <value> <int>20</int> </value>
+ </item>
+ <item>
+ <key> <string>editable</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ <item>
+ <key> <string>enabled</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ <item>
+ <key> <string>end</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>external_validator</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>extra</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>hidden</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>required</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>start</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string>Report Depth</string> </value>
+ </item>
+ <item>
+ <key> <string>whitespace_preserve</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+</ZopeData>
Added: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_simulation_state.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_simulation_state.xml?rev=43626&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_simulation_state.xml (added)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_simulation_state.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -0,0 +1,90 @@
+<?xml version="1.0"?>
+<ZopeData>
+ <record id="1" aka="AAAAAAAAAAE=">
+ <pickle>
+ <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>delegated_list</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>id</string> </key>
+ <value> <string>your_simulation_state</string> </value>
+ </item>
+ <item>
+ <key> <string>message_values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>external_validator_failed</string> </key>
+ <value> <string>The input failed the external validator.</string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>overrides</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>tales</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string>your_simulation_state</string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string>Project_viewDialogFieldLibrary</string> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string>Click to edit the target</string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+</ZopeData>
Added: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_worker_title_list.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_worker_title_list.xml?rev=43626&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_worker_title_list.xml (added)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectModule_viewODSMonthlyReportPrintDialog/your_worker_title_list.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -0,0 +1,298 @@
+<?xml version="1.0"?>
+<ZopeData>
+ <record id="1" aka="AAAAAAAAAAE=">
+ <pickle>
+ <global name="LinesField" module="Products.Formulator.StandardFields"/>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>id</string> </key>
+ <value> <string>your_worker_title_list</string> </value>
+ </item>
+ <item>
+ <key> <string>message_values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>external_validator_failed</string> </key>
+ <value> <string>The input failed the external validator.</string> </value>
+ </item>
+ <item>
+ <key> <string>line_too_long</string> </key>
+ <value> <string>A line was too long.</string> </value>
+ </item>
+ <item>
+ <key> <string>required_not_found</string> </key>
+ <value> <string>Input is required but no input given.</string> </value>
+ </item>
+ <item>
+ <key> <string>too_long</string> </key>
+ <value> <string>You entered too many characters.</string> </value>
+ </item>
+ <item>
+ <key> <string>too_many_lines</string> </key>
+ <value> <string>You entered too many lines.</string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>overrides</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>alternate_name</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>css_class</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>default</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>editable</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>enabled</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>external_validator</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>extra</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>height</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>hidden</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>max_length</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>max_linelength</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>max_lines</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>required</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>unicode</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>view_separator</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>whitespace_preserve</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>width</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>tales</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>alternate_name</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>css_class</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>default</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>editable</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>enabled</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>external_validator</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>extra</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>height</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>hidden</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>max_length</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>max_linelength</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>max_lines</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>required</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>unicode</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>view_separator</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>whitespace_preserve</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>width</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>alternate_name</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>css_class</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>default</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>editable</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ <item>
+ <key> <string>enabled</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ <item>
+ <key> <string>external_validator</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>extra</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>height</string> </key>
+ <value> <int>5</int> </value>
+ </item>
+ <item>
+ <key> <string>hidden</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>max_length</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>max_linelength</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>max_lines</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>required</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string>Workers</string> </value>
+ </item>
+ <item>
+ <key> <string>unicode</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>view_separator</string> </key>
+ <value> <string encoding="cdata"><![CDATA[
+
+<br />
+
+]]></string> </value>
+ </item>
+ <item>
+ <key> <string>whitespace_preserve</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>width</string> </key>
+ <value> <int>40</int> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+</ZopeData>
Modified: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateMonthDomain.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateMonthDomain.xml?rev=43626&r1=43625&r2=43626&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateMonthDomain.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateMonthDomain.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -76,32 +76,38 @@ if depth == 0:\n
current_month = None\n
# We must initialize from_date at the beginning of the month\n
current_date = from_date\n
- month_dict = request.form.get(\'month_dict\', None)\n
- if month_dict is None:\n
- month_dict = {}\n
- current_date_year = current_date.year()\n
- current_date_month = current_date.month()\n
- at_date_year = at_date.year()\n
- at_date_month = at_date.month()\n
- while True:\n
- month_dict[(current_date_year, current_date_month)] = 1\n
- if current_date_year == at_date_year and current_date_month == at_date_month:\n
- break\n
- current_date_month += 1\n
- if current_date_month == 13:\n
- current_date_month = 0\n
- current_date_year += 1\n
- request.form[\'month_dict\'] = month_dict\n
-\n
- category_list = []\n
- i = 1\n
- month_dict_list = month_dict.keys()\n
- month_dict_list.sort()\n
- for year, month in month_dict_list:\n
- category_list.append(here.getObject().asContext(title="%s - %s" % (year, month),\n
- string_index="%s-%s" % (year, month),\n
+ is_total = here.is_total\n
+ if is_total:\n
+ category_list.append(here.getObject().asContext(title=here.full_date_string,\n
+ string_index=here.full_date_string,\n
))\n
- i += 1\n
+ else:\n
+ month_dict = request.form.get(\'month_dict\', None)\n
+ if month_dict is None:\n
+ month_dict = {}\n
+ current_date_year = current_date.year()\n
+ current_date_month = current_date.month()\n
+ at_date_year = at_date.year()\n
+ at_date_month = at_date.month()\n
+ while True:\n
+ month_dict[(current_date_year, current_date_month)] = 1\n
+ if current_date_year == at_date_year and current_date_month == at_date_month:\n
+ break\n
+ current_date_month += 1\n
+ if current_date_month == 13:\n
+ current_date_month = 0\n
+ current_date_year += 1\n
+ request.form[\'month_dict\'] = month_dict\n
+\n
+ category_list = []\n
+ #i = 1\n
+ month_dict_list = month_dict.keys()\n
+ month_dict_list.sort()\n
+ for year, month in month_dict_list:\n
+ category_list.append(here.getObject().asContext(title="%s - %s" % (year, month),\n
+ string_index="%s-%s" % (year, month),\n
+ ))\n
+ #i += 1\n
\n
else:\n
object_dict = here.object_dict\n
@@ -110,8 +116,8 @@ else:\n
object_url_dict = {}\n
project_to_display_dict = here.monthly_project_to_display_dict.get(string_index, {})\n
if depth == 1:\n
- category_list = [x for x in here.project_list \n
- if project_to_display_dict.has_key(x.getRelativeUrl())]\n
+ category_list = [here.project_dict[x] for x in project_to_display_dict.keys() if\n
+ here.project_dict.has_key(x)]\n
else:\n
parent_category_list = parent.getMembershipCriterionCategoryList()\n
category_list = []\n
Modified: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyObjectList.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyObjectList.xml?rev=43626&r1=43625&r2=43626&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyObjectList.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyObjectList.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -61,16 +61,24 @@ current_criterion = object_domain.getCri
date = current_criterion[0].identity\n
result_list = []\n
if len(object_domain.getMembershipCriterionBaseCategoryList())==0:\n
- # First level, so level of month\n
+ # First level, so level of month, we display summary of total\n
+ # quantity per worker for the full month\n
returned_object = summary_dict.get(date, None)\n
if returned_object is not None:\n
result_list.append(returned_object)\n
else:\n
returned_object = object_dict.get(date, None)\n
if returned_object is not None:\n
- for k,v in returned_object.items():\n
- if object_domain.test(v, strict_membership=1):\n
- result_list.append(v)\n
+ # optimisation, in this report we have exactly one temp object at most\n
+ # matching our domain, and we have already a dict with nice keys, so\n
+ # there is no need to parse all temp objects\n
+ membership_criterion_category_list = object_domain.getMembershipCriterionCategoryList()\n
+ assert len(membership_criterion_category_list) == 1\n
+ membership_criterion_category = membership_criterion_category_list[0]\n
+ assert membership_criterion_category.startswith(\'source_project/\')\n
+ project_relative_url = membership_criterion_category[len(\'source_project/\'):]\n
+ if returned_object.has_key(project_relative_url):\n
+ result_list.append(returned_object[project_relative_url])\n
return result_list\n
</string> </value>
</item>
Modified: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportContext.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportContext.xml?rev=43626&r1=43625&r2=43626&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportContext.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportContext.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -53,15 +53,17 @@
<value> <string>context = context.asContext(object_dict=object_dict,\n
summary_dict=summary_dict,\n
column_list=column_list,\n
- project_list=project_list,\n
- monthly_project_to_display_dict=monthly_project_to_display_dict)\n
+ project_dict=project_dict,\n
+ monthly_project_to_display_dict=monthly_project_to_display_dict,\n
+ is_total=is_total,\n
+ full_date_string=full_date_string)\n
\n
return context\n
</string> </value>
</item>
<item>
<key> <string>_params</string> </key>
- <value> <string>object_dict, summary_dict, column_list, project_list, monthly_project_to_display_dict,**kw</string> </value>
+ <value> <string>object_dict, summary_dict, column_list, project_dict, monthly_project_to_display_dict,is_total, full_date_string,**kw</string> </value>
</item>
<item>
<key> <string>id</string> </key>
Modified: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportSectionList.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportSectionList.xml?rev=43626&r1=43625&r2=43626&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportSectionList.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportSectionList.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -55,8 +55,10 @@
from Products.ZSQLCatalog.SQLCatalog import Query\n
request = context.REQUEST\n
\n
-object_dict = {} # it contains required temp object to display the report\n
-total_object_dict = {}\n
+object_dict = {} # it contains required temp object to display the listbox\n
+ # with the amount of time per worker/month/project line\n
+total_object_dict = {} # this is for listbox with amount of time\n
+ # per worker/project line\n
\n
column_list= []\n
worker_column_list = []\n
@@ -82,6 +84,8 @@ if at_date is None:\n
at_date = context.getStopDate()\n
request.set(\'at_date\',at_date)\n
simulation_state = request.get(\'simulation_state\', None)\n
+full_date_string = "%s-%s -> %s-%s" % (from_date.year(), from_date.month(),\n
+ at_date.year(), at_date.month())\n
\n
\n
\n
@@ -93,13 +97,39 @@ result_list = portal.portal_simulation.g
at_date=at_date, **inventory_kw)\n
\n
monthly_worker_quantity_dict = {} # Used to get quantity per month and per worker\n
+ # and per project line\n
monthly_project_to_display_dict = {} # Used to get project urls to display per month\n
# in the report tree\n
+total_project_to_display_dict = {} # Used to get project urls to display in the summary\n
+total_worker_quantity_dict = {} # Used to get quantity per project line and per worker for\n
+ # the full period\n
+full_date_total_worker_quantity_dict = \\\n
+ total_worker_quantity_dict.setdefault(full_date_string, {})\n
+full_date_total_object_dict = total_object_dict.setdefault(full_date_string, {})\n
+full_date_total_project_to_display_dict = \\\n
+ total_project_to_display_dict.setdefault(full_date_string, {})\n
+\n
\n
source_uid_dict = {}\n
project_uid_dict = {}\n
project_relative_url_dict = {}\n
\n
+def fillDictWithParentAndChildRelativeUrls(my_dict, document_url):\n
+ if my_dict.get(document_url) is None:\n
+ splitted_document_url = document_url.split(\'/\')\n
+ for x in xrange(0, len(splitted_document_url)):\n
+ my_dict[\'/\'.join(splitted_document_url[0:x+1])] = 1\n
+\n
+\n
+def getNextMonthStart(date):\n
+ """\n
+ return the next month date of the param date\n
+ """\n
+ if date.month()==12:\n
+ return DateTime(date.year()+1, date.month(), 1)\n
+ else:\n
+ return DateTime(date.year(), date.month()+1, 1)\n
+\n
for task_line in result_list:\n
# initialize some variables\n
source_uid = task_line.node_uid\n
@@ -135,17 +165,23 @@ for task_line in result_list:\n
project_relative_url_dict[\'/\'.join(project_value.getRelativeUrl().split(\'/\')[0:2])] = 1\n
quantity = - task_line.inventory\n
project_relative_url = project_dict[\'relative_url\']\n
+ full_date_total_worker_quantity_dict[source_relative_url] = \\\n
+ full_date_total_worker_quantity_dict.get(source_relative_url, 0) + quantity\n
+ if not full_date_total_object_dict.has_key(project_relative_url):\n
+ temp_object = temp_object_container.newContent(portal_type = \'Project Line\',\n
+ temp_object=1,\n
+ string_index = full_date_string,\n
+ category_list = [\'source_project/%s\' % project_relative_url])\n
+ full_date_total_object_dict[project_relative_url] = temp_object\n
+ current_temp_object = full_date_total_object_dict[project_relative_url]\n
+ object_quantity = quantity + current_temp_object.getProperty(source_relative_url, 0)\n
+ current_temp_object.setProperty(source_relative_url, object_quantity)\n
+\n
# diff in day between the begin and the end of the task\n
diff_day = stop_date_task - start_date_task + 1\n
\n
- def getNextMonthStart(date):\n
- """\n
- return the next month date of the param date\n
- """\n
- if date.month()==12:\n
- return DateTime(date.year()+1, date.month(), 1)\n
- else:\n
- return DateTime(date.year(), date.month()+1, 1)\n
+ fillDictWithParentAndChildRelativeUrls(full_date_total_project_to_display_dict, \n
+ project_relative_url)\n
\n
timekeeper = start_date_task\n
while timekeeper <= stop_date_task :\n
@@ -155,10 +191,7 @@ for task_line in result_list:\n
\n
worker_quantity_dict = monthly_worker_quantity_dict.setdefault(string_index, {})\n
project_to_display_dict = monthly_project_to_display_dict.setdefault(string_index, {})\n
- if project_to_display_dict.get(project_relative_url, None) is None:\n
- splitted_project_url = project_relative_url.split(\'/\')\n
- for x in xrange(0, len(splitted_project_url)):\n
- project_to_display_dict[\'/\'.join(splitted_project_url[0:x+1])] = 1\n
+ fillDictWithParentAndChildRelativeUrls(project_to_display_dict, project_relative_url)\n
\n
if not quantity_dict.has_key(project_relative_url):\n
temp_object = temp_object_container.newContent(portal_type = \'Project Line\',\n
@@ -183,6 +216,16 @@ for string_index, worker_quantity_dict i
for source_relative_url, quantity in worker_quantity_dict.items():\n
temp_object.setProperty(source_relative_url, quantity)\n
\n
+# Now build temp objects for quantity per worker\n
+total_summary_dict = {}\n
+for string_index, worker_quantity_dict in total_worker_quantity_dict.items():\n
+ temp_object = temp_object_container.newContent(portal_type = \'Project Line\',\n
+ temp_object=1,\n
+ string_index = string_index)\n
+ total_summary_dict[string_index] = temp_object\n
+ for source_relative_url, quantity in worker_quantity_dict.items():\n
+ temp_object.setProperty(source_relative_url, quantity)\n
+\n
column_list.extend(worker_column_list)\n
\n
selection_name = \'project_monthly_report_selection\'\n
@@ -193,11 +236,11 @@ result = []\n
from Products.ERP5Form.Report import ReportSection\n
param_dict = {}\n
\n
-project_list = []\n
+project_dict = {}\n
for project_relative_url in project_relative_url_dict.keys():\n
- project_list.append(portal.restrictedTraverse(project_relative_url))\n
-param_list = [object_dict, summary_dict, column_list, project_list,\n
- monthly_project_to_display_dict]\n
+ project_dict[project_relative_url] = portal.restrictedTraverse(project_relative_url)\n
+param_list = [object_dict, summary_dict, column_list, project_dict,\n
+ monthly_project_to_display_dict, False, full_date_string]\n
\n
result.append(ReportSection(\n
path=context.getPhysicalPath(),\n
@@ -205,6 +248,15 @@ result.append(ReportSection(\n
method_id=\'Project_getMonthlyReportContext\',\n
listbox_display_mode=\'ReportTreeMode\',\n
form_id=\'Project_viewMonthlyReportData\'))\n
+\n
+param_list = [total_object_dict, total_summary_dict, column_list, project_dict,\n
+ total_project_to_display_dict, True, full_date_string]\n
+result.append(ReportSection(\n
+ path=context.getPhysicalPath(),\n
+ param_list=param_list,\n
+ method_id=\'Project_getMonthlyReportContext\',\n
+ listbox_display_mode=\'ReportTreeMode\',\n
+ form_id=\'Project_viewMonthlySummaryReportData\'))\n
return result\n
Modified: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_init.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_init.xml?rev=43626&r1=43625&r2=43626&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_init.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_init.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -52,7 +52,7 @@
<key> <string>_body</string> </key>
<value> <string>"""Initialize an unique codification on project, because projects are often used as security group.\n
"""\n
-codification = context.getPortalObject().portal_ids.generateNewId(id_group=\'project.codification\', id_generator=\'uid\', default=1)\n
+codification = context.getPortalObject().portal_ids.generateNewLengthId(id_group=\'project.codification\', default=1)\n
context.setCodification(\'PROJ-%s\' % codification)\n
</string> </value>
</item>
Added: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_viewMonthlySummaryReportData.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_viewMonthlySummaryReportData.xml?rev=43626&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_viewMonthlySummaryReportData.xml (added)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_viewMonthlySummaryReportData.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -0,0 +1,148 @@
+<?xml version="1.0"?>
+<ZopeData>
+ <record id="1" aka="AAAAAAAAAAE=">
+ <pickle>
+ <global name="ERP5Form" module="Products.ERP5Form.Form"/>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>_bind_names</string> </key>
+ <value>
+ <object>
+ <klass>
+ <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+ </klass>
+ <tuple/>
+ <state>
+ <dictionary>
+ <item>
+ <key> <string>_asgns</string> </key>
+ <value>
+ <dictionary/>
+ </value>
+ </item>
+ </dictionary>
+ </state>
+ </object>
+ </value>
+ </item>
+ <item>
+ <key> <string>_objects</string> </key>
+ <value>
+ <tuple/>
+ </value>
+ </item>
+ <item>
+ <key> <string>action</string> </key>
+ <value> <string>Project_getObjectDateDict</string> </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>edit_order</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>encoding</string> </key>
+ <value> <string>UTF-8</string> </value>
+ </item>
+ <item>
+ <key> <string>enctype</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>group_list</string> </key>
+ <value>
+ <list>
+ <string>left</string>
+ <string>right</string>
+ <string>center</string>
+ <string>bottom</string>
+ <string>hidden</string>
+ </list>
+ </value>
+ </item>
+ <item>
+ <key> <string>groups</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>bottom</string> </key>
+ <value>
+ <list>
+ <string>listbox</string>
+ </list>
+ </value>
+ </item>
+ <item>
+ <key> <string>center</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>hidden</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>left</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>right</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>id</string> </key>
+ <value> <string>Project_viewMonthlySummaryReportData</string> </value>
+ </item>
+ <item>
+ <key> <string>method</string> </key>
+ <value> <string>POST</string> </value>
+ </item>
+ <item>
+ <key> <string>name</string> </key>
+ <value> <string>Project_viewMonthlyReport</string> </value>
+ </item>
+ <item>
+ <key> <string>pt</string> </key>
+ <value> <string>form_dialog</string> </value>
+ </item>
+ <item>
+ <key> <string>row_length</string> </key>
+ <value> <int>4</int> </value>
+ </item>
+ <item>
+ <key> <string>stored_encoding</string> </key>
+ <value> <string>UTF-8</string> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string>Monthly Report</string> </value>
+ </item>
+ <item>
+ <key> <string>unicode_mode</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>update_action</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+</ZopeData>
Added: erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_viewMonthlySummaryReportData/listbox.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_viewMonthlySummaryReportData/listbox.xml?rev=43626&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_viewMonthlySummaryReportData/listbox.xml (added)
+++ erp5/trunk/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_viewMonthlySummaryReportData/listbox.xml [utf8] Wed Feb 23 17:43:19 2011
@@ -0,0 +1,570 @@
+<?xml version="1.0"?>
+<ZopeData>
+ <record id="1" aka="AAAAAAAAAAE=">
+ <pickle>
+ <global name="ListBox" module="Products.ERP5Form.ListBox"/>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>id</string> </key>
+ <value> <string>listbox</string> </value>
+ </item>
+ <item>
+ <key> <string>message_values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>external_validator_failed</string> </key>
+ <value> <string>The input failed the external validator.</string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>overrides</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>all_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>alternate_name</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>anchor</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>count_method</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>css_class</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>default_params</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>domain_root_list</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>domain_tree</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>editable</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>editable_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>enabled</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>external_validator</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>global_attributes</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>hidden</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>lines</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>list_action</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>list_method</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>meta_types</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>page_template</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>portal_types</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>report_root_list</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>report_tree</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>search</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>search_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>select</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>selection_name</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>sort</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>sort_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>stat_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>stat_method</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>url_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>tales</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>all_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>alternate_name</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>anchor</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>columns</string> </key>
+ <value>
+ <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+ </value>
+ </item>
+ <item>
+ <key> <string>count_method</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>css_class</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>default_params</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>domain_root_list</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>domain_tree</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>editable</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>editable_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>enabled</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>external_validator</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>global_attributes</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>hidden</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>lines</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>list_action</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>list_method</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>meta_types</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>page_template</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>portal_types</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>report_root_list</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>report_tree</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>search</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>search_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>select</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>selection_name</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>sort</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>sort_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>stat_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>stat_method</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>url_columns</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>all_columns</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>alternate_name</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>anchor</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>columns</string> </key>
+ <value>
+ <list>
+ <tuple>
+ <string>title</string>
+ <string>Title</string>
+ </tuple>
+ </list>
+ </value>
+ </item>
+ <item>
+ <key> <string>count_method</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>css_class</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>default_display_style</string> </key>
+ <value> <string>table</string> </value>
+ </item>
+ <item>
+ <key> <string>default_params</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>display_style_list</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>domain_root_list</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>domain_tree</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>editable</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ <item>
+ <key> <string>editable_columns</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>enabled</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ <item>
+ <key> <string>external_validator</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>global_attributes</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>global_search_column</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>hidden</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>hide_rows_on_no_search_criterion</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>lines</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>list_action</string> </key>
+ <value> <string>list</string> </value>
+ </item>
+ <item>
+ <key> <string>list_method</string> </key>
+ <value>
+ <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+ </value>
+ </item>
+ <item>
+ <key> <string>meta_types</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>page_navigation_template</string> </key>
+ <value> <string>ListBox_viewSliderPageNavigationRenderer</string> </value>
+ </item>
+ <item>
+ <key> <string>page_template</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>portal_types</string> </key>
+ <value>
+ <list>
+ <tuple>
+ <string>Task</string>
+ <string>Task</string>
+ </tuple>
+ </list>
+ </value>
+ </item>
+ <item>
+ <key> <string>report_root_list</string> </key>
+ <value>
+ <list>
+ <tuple>
+ <string>project_report_monthly_domain</string>
+ <string>Month</string>
+ </tuple>
+ </list>
+ </value>
+ </item>
+ <item>
+ <key> <string>report_tree</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ <item>
+ <key> <string>row_css_method</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>search</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>search_columns</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>select</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>selection_name</string> </key>
+ <value> <string>project_monthly_report_selection</string> </value>
+ </item>
+ <item>
+ <key> <string>sort</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>sort_columns</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>stat_columns</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>stat_method</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>style_columns</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string>Monthly Summary Report</string> </value>
+ </item>
+ <item>
+ <key> <string>untranslatable_columns</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ <item>
+ <key> <string>url_columns</string> </key>
+ <value>
+ <list/>
+ </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+ <record id="2" aka="AAAAAAAAAAI=">
+ <pickle>
+ <tuple>
+ <global name="TALESMethod" module="Products.Formulator.TALESField"/>
+ <tuple/>
+ </tuple>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>_text</string> </key>
+ <value> <string>python: here.column_list</string> </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+ <record id="3" aka="AAAAAAAAAAM=">
+ <pickle>
+ <global name="Method" module="Products.Formulator.MethodField"/>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>method_name</string> </key>
+ <value> <string>Project_getMonthlyObjectList</string> </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+</ZopeData>
Modified: erp5/trunk/bt5/erp5_project/bt/revision
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/bt/revision?rev=43626&r1=43625&r2=43626&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_project/bt/revision [utf8] (original)
+++ erp5/trunk/bt5/erp5_project/bt/revision [utf8] Wed Feb 23 17:43:19 2011
@@ -1 +1 @@
-788
\ No newline at end of file
+793
\ No newline at end of file
Modified: erp5/trunk/bt5/erp5_project/bt/template_action_path_list
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_project/bt/template_action_path_list?rev=43626&r1=43625&r2=43626&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_project/bt/template_action_path_list [utf8] (original)
+++ erp5/trunk/bt5/erp5_project/bt/template_action_path_list [utf8] Wed Feb 23 17:43:19 2011
@@ -17,6 +17,7 @@ Project Milestone | create_new_file
Project Milestone | document_list
Project Milestone | view
Project Module | view
+Project Module | worker_monthly_report
Project | add_task_related
Project | bug_list
Project | content
More information about the Erp5-report
mailing list