Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Labels
Merge Requests
7
Merge Requests
7
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Jobs
Commits
Open sidebar
Jérome Perrin
erp5
Commits
0a24bdf0
Commit
0a24bdf0
authored
Aug 31, 2016
by
Jérome Perrin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
budget: time variation WIP
parent
81565015
Pipeline
#1745
skipped
Changes
19
Pipelines
1
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
2257 additions
and
1 deletion
+2257
-1
bt5/erp5_budget/ActionTemplateItem/portal_types/Time%20Budget%20Variation/view.xml
...plateItem/portal_types/Time%20Budget%20Variation/view.xml
+81
-0
bt5/erp5_budget/DocumentTemplateItem/portal_components/document.erp5.TimeBudgetVariation.py
...em/portal_components/document.erp5.TimeBudgetVariation.py
+204
-0
bt5/erp5_budget/DocumentTemplateItem/portal_components/document.erp5.TimeBudgetVariation.xml
...m/portal_components/document.erp5.TimeBudgetVariation.xml
+126
-0
bt5/erp5_budget/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
...eAllowedContentTypeTemplateItem/allowed_content_types.xml
+1
-0
bt5/erp5_budget/PortalTypeTemplateItem/portal_types/Time%20Budget%20Variation.xml
...peTemplateItem/portal_types/Time%20Budget%20Variation.xml
+139
-0
bt5/erp5_budget/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
...rtalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
+4
-0
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view.xml
...tem/portal_skins/erp5_budget/TimeBudgetVariation_view.xml
+159
-0
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_budget_variation.xml
...5_budget/TimeBudgetVariation_view/my_budget_variation.xml
+96
-0
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_int_index.xml
...ins/erp5_budget/TimeBudgetVariation_view/my_int_index.xml
+252
-0
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_interpolation_method.xml
...dget/TimeBudgetVariation_view/my_interpolation_method.xml
+279
-0
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_time_sequence_select_method_id.xml
...udgetVariation_view/my_time_sequence_select_method_id.xml
+264
-0
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_title.xml
...l_skins/erp5_budget/TimeBudgetVariation_view/my_title.xml
+260
-0
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_translated_portal_type.xml
...et/TimeBudgetVariation_view/my_translated_portal_type.xml
+260
-0
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_variation_base_category.xml
...t/TimeBudgetVariation_view/my_variation_base_category.xml
+126
-0
bt5/erp5_budget/bt/template_action_path_list
bt5/erp5_budget/bt/template_action_path_list
+1
-0
bt5/erp5_budget/bt/template_document_id_list
bt5/erp5_budget/bt/template_document_id_list
+2
-1
bt5/erp5_budget/bt/template_portal_type_allowed_content_type_list
..._budget/bt/template_portal_type_allowed_content_type_list
+1
-0
bt5/erp5_budget/bt/template_portal_type_id_list
bt5/erp5_budget/bt/template_portal_type_id_list
+1
-0
bt5/erp5_budget/bt/template_portal_type_workflow_chain_list
bt5/erp5_budget/bt/template_portal_type_workflow_chain_list
+1
-0
No files found.
bt5/erp5_budget/ActionTemplateItem/portal_types/Time%20Budget%20Variation/view.xml
0 → 100644
View file @
0a24bdf0
<?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_view
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
category
</string>
</key>
<value>
<string>
object_view
</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>
view
</string>
</value>
</item>
<item>
<key>
<string>
permissions
</string>
</key>
<value>
<tuple>
<string>
View
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
priority
</string>
</key>
<value>
<float>
1.0
</float>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
View
</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}/TimeBudgetVariation_view
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_budget/DocumentTemplateItem/portal_components/document.erp5.TimeBudgetVariation.py
0 → 100644
View file @
0a24bdf0
##############################################################################
#
# Copyright (c) 2008 Nexedi SA and Contributors. All Rights Reserved.
#
# WARNING: This program as such is intended to be used by professional
# programmers who take the whole responsability of assessing all potential
# consequences resulting from its eventual inadequacies and bugs
# End users who are looking for a ready-to-use solution with commercial
# garantees and support are strongly adviced to contract a Free Software
# Service Company
#
# This program is Free Software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
##############################################################################
import
datetime
from
AccessControl
import
ClassSecurityInfo
from
DateTime
import
DateTime
from
Products.ERP5Type
import
Permissions
,
PropertySheet
#from Products.ERP5.Document.BudgetVariation import BudgetVariation
from
erp5.component.document.BudgetVariation
import
BudgetVariation
class
TimeBudgetVariation
(
BudgetVariation
):
""" A budget variation for time
A script will return the list of possible time frames. ?
Monthly / Quarterly or script ?
This only makes sense as a cell variation, because:
- budget level always have start_date / stop_date
- we do not have a UI to dynamically generate field
Inventory Axis is not configurable, it is always "time". Note that
we could also want to configure by mirror date, but this is not implemented for now.
Enable time interpolation ?
"""
# Default Properties
property_sheets
=
(
PropertySheet
.
Base
,
PropertySheet
.
XMLObject
,
PropertySheet
.
SimpleItem
,
PropertySheet
.
SortIndex
,
PropertySheet
.
Path
,
PropertySheet
.
Predicate
,
PropertySheet
.
BudgetVariation
)
# CMF Type Definition
meta_type
=
'ERP5 Time Budget Variation'
portal_type
=
'Time Budget Variation'
add_permission
=
Permissions
.
AddPortalContent
# Declarative security
security
=
ClassSecurityInfo
()
security
.
declareObjectProtected
(
Permissions
.
AccessContentsInformation
)
# zope.interface.implements(BudgetVariation, )
security
.
declareProtected
(
Permissions
.
AccessContentsInformation
,
'asBudgetPredicate'
)
def
asBudgetPredicate
(
self
):
"""This budget variation in a predicate
"""
security
.
declareProtected
(
Permissions
.
AccessContentsInformation
,
'getCellRangeForBudgetLine'
)
def
getCellRangeForBudgetLine
(
self
,
budget_line
,
matrixbox
=
0
):
"""The cell range added by this variation
"""
base_category
=
self
.
getProperty
(
'variation_base_category'
)
return
[]
prefix
=
''
if
base_category
:
prefix
=
'%s/'
%
base_category
node_item_list
=
[(
'%s%s'
%
(
prefix
,
node
.
getRelativeUrl
()),
self
.
_getNodeTitle
(
node
))
for
node
in
self
.
_getNodeList
(
budget_line
)]
variation_category_list
=
budget_line
.
getVariationCategoryList
()
if
matrixbox
:
return
[[
i
for
i
in
node_item_list
if
i
[
0
]
in
variation_category_list
]]
return
[[
i
[
0
]
for
i
in
node_item_list
if
i
[
0
]
in
variation_category_list
]]
security
.
declareProtected
(
Permissions
.
AccessContentsInformation
,
'getConsumptionCellRangeForBudgetLine'
)
def
getConsumptionCellRangeForBudgetLine
(
self
,
budget_line
,
matrixbox
=
0
,
engaged_budget
=
False
):
"""The cell range added by this variation for consumption
"""
return
self
.
getCellRangeForBudgetLine
(
budget_line
,
matrixbox
=
matrixbox
)
security
.
declareProtected
(
Permissions
.
AccessContentsInformation
,
'getInventoryQueryDict'
)
def
getInventoryQueryDict
(
self
,
budget_cell
):
""" Query dict to pass to simulation query
"""
query_dict
=
{}
axis
=
self
.
getInventoryAxis
()
if
not
axis
:
return
query_dict
base_category
=
self
.
getProperty
(
'variation_base_category'
)
if
not
base_category
:
return
query_dict
budget_line
=
budget_cell
.
getParentValue
()
context
=
budget_cell
if
self
.
isMemberOf
(
'budget_variation/budget'
):
context
=
budget_line
.
getParentValue
()
elif
self
.
isMemberOf
(
'budget_variation/budget_line'
):
context
=
budget_line
if
axis
==
'movement'
:
axis
=
'default_%s'
%
base_category
if
axis
==
'movement_strict_membership'
:
axis
=
'default_strict_%s'
%
base_category
query_dict
[
'from_date'
]
=
DateTime
()
query_dict
[
'at_date'
]
=
DateTime
()
return
query_dict
security
.
declareProtected
(
Permissions
.
AccessContentsInformation
,
'getInventoryListQueryDict'
)
def
getInventoryListQueryDict
(
self
,
budget_line
):
"""Returns the query dict to pass to simulation query for a budget line
"""
axis
=
self
.
getInventoryAxis
()
if
not
axis
:
return
{}
base_category
=
self
.
getProperty
(
'variation_base_category'
)
if
not
base_category
:
return
{}
return
{}
def
_getCellKeyFromInventoryListBrain
(
self
,
brain
,
budget_line
,
cell_key_cache
=
None
):
"""Compute key from inventory brain, with support for virtual nodes.
"""
cell_key_cache
[
None
]
=
'%s/budget_special_node/none'
\
%
self
.
getProperty
(
'variation_base_category'
)
key
=
BudgetVariation
.
_getCellKeyFromInventoryListBrain
(
self
,
brain
,
budget_line
,
cell_key_cache
=
cell_key_cache
)
if
self
.
getProperty
(
'include_virtual_other_node'
):
if
key
not
in
budget_line
.
getVariationCategoryList
(
base_category_list
=
(
self
.
getProperty
(
'variation_base_category'
),)):
key
=
'%s/budget_special_node/all_other'
%
(
self
.
getProperty
(
'variation_base_category'
),)
return
key
security
.
declareProtected
(
Permissions
.
AccessContentsInformation
,
'getBudgetLineVariationRangeCategoryList'
)
def
getBudgetLineVariationRangeCategoryList
(
self
,
budget_line
):
"""Returns the Variation Range Category List that can be applied to this
budget line.
"""
base_category
=
self
.
getProperty
(
'variation_base_category'
)
prefix
=
''
if
base_category
:
prefix
=
'%s/'
%
base_category
return
[(
self
.
_getNodeTitle
(
node
),
'%s%s'
%
(
prefix
,
node
.
getRelativeUrl
()))
for
node
in
self
.
_getNodeList
(
budget_line
)]
security
.
declareProtected
(
Permissions
.
AccessContentsInformation
,
'getBudgetVariationRangeCategoryList'
)
def
getBudgetVariationRangeCategoryList
(
self
,
budget
):
"""Returns the Variation Range Category List that can be applied to this
budget.
"""
base_category
=
self
.
getProperty
(
'variation_base_category'
)
prefix
=
''
if
base_category
:
prefix
=
'%s/'
%
base_category
return
[(
self
.
_getNodeTitle
(
node
),
'%s%s'
%
(
prefix
,
node
.
getRelativeUrl
()))
for
node
in
self
.
_getNodeList
(
budget
)]
security
.
declareProtected
(
Permissions
.
ModifyPortalContent
,
'initializeBudgetLine'
)
def
initializeBudgetLine
(
self
,
budget_line
):
"""Initialize a budget line
"""
raise
ValueError
(
'TimeBudgetVariation are not applicable on budget line'
)
security
.
declareProtected
(
Permissions
.
ModifyPortalContent
,
'initializeBudget'
)
def
initializeBudget
(
self
,
budget
):
"""Initialize a budget.
"""
raise
ValueError
(
'TimeBudgetVariation are not applicable on budget'
)
bt5/erp5_budget/DocumentTemplateItem/portal_components/document.erp5.TimeBudgetVariation.xml
0 → 100644
View file @
0a24bdf0
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Document Component"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
TimeBudgetVariation
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
document.erp5.TimeBudgetVariation
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Document Component
</string>
</value>
</item>
<item>
<key>
<string>
sid
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
text_content_error_message
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 28, 0: \'datetime\' imported but unused
</string>
<string>
W:125, 6: local variable \'context\' is assigned to but never used
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
version
</string>
</key>
<value>
<string>
erp5
</string>
</value>
</item>
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
validate
</string>
</value>
</item>
<item>
<key>
<string>
validation_state
</string>
</key>
<value>
<string>
validated
</string>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
bt5/erp5_budget/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
View file @
0a24bdf0
...
@@ -9,6 +9,7 @@
...
@@ -9,6 +9,7 @@
<portal_type
id=
"Budget Model"
>
<portal_type
id=
"Budget Model"
>
<item>
Category Budget Variation
</item>
<item>
Category Budget Variation
</item>
<item>
Node Budget Variation
</item>
<item>
Node Budget Variation
</item>
<item>
Time Budget Variation
</item>
</portal_type>
</portal_type>
<portal_type
id=
"Budget Model Module"
>
<portal_type
id=
"Budget Model Module"
>
<item>
Budget Model
</item>
<item>
Budget Model
</item>
...
...
bt5/erp5_budget/PortalTypeTemplateItem/portal_types/Time%20Budget%20Variation.xml
0 → 100644
View file @
0a24bdf0
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Base Type"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_property_domain_dict
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
short_title
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
acquire_local_roles
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
<item>
<key>
<string>
content_icon
</string>
</key>
<value>
<string>
document_icon.gif
</string>
</value>
</item>
<item>
<key>
<string>
content_meta_type
</string>
</key>
<value>
<string>
ERP5 Node Budget Variation
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
factory
</string>
</key>
<value>
<string>
addNodeBudgetVariation
</string>
</value>
</item>
<item>
<key>
<string>
filter_content_types
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
<item>
<key>
<string>
group_list
</string>
</key>
<value>
<tuple>
<string>
budget_variation
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
Time Budget Variation
</string>
</value>
</item>
<item>
<key>
<string>
init_script
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
permission
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
type_class
</string>
</key>
<value>
<string>
TimeBudgetVariation
</string>
</value>
</item>
<item>
<key>
<string>
type_interface
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
type_mixin
</string>
</key>
<value>
<tuple/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"TranslationInformation"
module=
"Products.ERP5Type.TranslationProviderBase"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
domain_name
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
property_name
</string>
</key>
<value>
<string>
short_title
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"TranslationInformation"
module=
"Products.ERP5Type.TranslationProviderBase"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
domain_name
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
property_name
</string>
</key>
<value>
<string>
title
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_budget/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
View file @
0a24bdf0
...
@@ -35,6 +35,10 @@
...
@@ -35,6 +35,10 @@
<type>
Node Budget Variation
</type>
<type>
Node Budget Variation
</type>
<workflow>
edit_workflow
</workflow>
<workflow>
edit_workflow
</workflow>
</chain>
</chain>
<chain>
<type>
Time Budget Variation
</type>
<workflow>
edit_workflow
</workflow>
</chain>
<chain>
<chain>
<type>
Transaction Quantity Value Feasability Constraint
</type>
<type>
Transaction Quantity Value Feasability Constraint
</type>
<workflow>
dynamic_class_generation_interaction_workflow
</workflow>
<workflow>
dynamic_class_generation_interaction_workflow
</workflow>
...
...
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view.xml
0 → 100644
View file @
0a24bdf0
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ERP5 Form"
module=
"erp5.portal_type"
/>
</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>
Base_edit
</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>
<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/>
</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>
<string>
my_title
</string>
<string>
my_int_index
</string>
<string>
my_translated_portal_type
</string>
<string>
my_budget_variation
</string>
<string>
my_variation_base_category
</string>
<string>
my_time_sequence_select_method_id
</string>
</list>
</value>
</item>
<item>
<key>
<string>
right
</string>
</key>
<value>
<list>
<string>
my_interpolation_method
</string>
</list>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
TimeBudgetVariation_view
</string>
</value>
</item>
<item>
<key>
<string>
method
</string>
</key>
<value>
<string>
POST
</string>
</value>
</item>
<item>
<key>
<string>
name
</string>
</key>
<value>
<string>
TimeBudgetVariation_view
</string>
</value>
</item>
<item>
<key>
<string>
pt
</string>
</key>
<value>
<string>
form_view
</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>
Time Budget Variation
</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>
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_budget_variation.xml
0 → 100644
View file @
0a24bdf0
<?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>
title
</string>
</list>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
my_budget_variation
</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>
my_category
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Budget Variation
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_int_index.xml
0 → 100644
View file @
0a24bdf0
<?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>
my_int_index
</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></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>
Index
</string>
</value>
</item>
<item>
<key>
<string>
whitespace_preserve
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_interpolation_method.xml
0 → 100644
View file @
0a24bdf0
This diff is collapsed.
Click to expand it.
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_time_sequence_select_method_id.xml
0 → 100644
View file @
0a24bdf0
This diff is collapsed.
Click to expand it.
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_title.xml
0 → 100644
View file @
0a24bdf0
This diff is collapsed.
Click to expand it.
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_translated_portal_type.xml
0 → 100644
View file @
0a24bdf0
This diff is collapsed.
Click to expand it.
bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/TimeBudgetVariation_view/my_variation_base_category.xml
0 → 100644
View file @
0a24bdf0
<?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>
items
</string>
<string>
title
</string>
</list>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
my_variation_base_category
</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>
items
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
title
</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>
my_category
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
items
</string>
</key>
<value>
<list/>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Base Category
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"TALESMethod"
module=
"Products.Formulator.TALESField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_text
</string>
</key>
<value>
<string>
python: [(\'\', \'\')] + [(\'%s - %s\' % (x.getId(), x.getTranslatedTitle()), x.getRelativeUrl()) for x in context.portal_categories.contentValues(sort_on=(\'id\', ))]
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_budget/bt/template_action_path_list
View file @
0a24bdf0
...
@@ -21,6 +21,7 @@ Budget | transfer_line_list_view
...
@@ -21,6 +21,7 @@ Budget | transfer_line_list_view
Budget | view
Budget | view
Category Budget Variation | view
Category Budget Variation | view
Node Budget Variation | view
Node Budget Variation | view
Time Budget Variation | view
Transaction Quantity Value Feasability Constraint | predicate
Transaction Quantity Value Feasability Constraint | predicate
Transaction Quantity Value Feasability Constraint | view
Transaction Quantity Value Feasability Constraint | view
Transaction Quantity Value Validity Constraint | predicate
Transaction Quantity Value Validity Constraint | predicate
...
...
bt5/erp5_budget/bt/template_document_id_list
View file @
0a24bdf0
...
@@ -7,4 +7,5 @@ document.erp5.BudgetTransfer
...
@@ -7,4 +7,5 @@ document.erp5.BudgetTransfer
document.erp5.BudgetTransferLine
document.erp5.BudgetTransferLine
document.erp5.BudgetVariation
document.erp5.BudgetVariation
document.erp5.CategoryBudgetVariation
document.erp5.CategoryBudgetVariation
document.erp5.NodeBudgetVariation
document.erp5.NodeBudgetVariation
\ No newline at end of file
document.erp5.TimeBudgetVariation
\ No newline at end of file
bt5/erp5_budget/bt/template_portal_type_allowed_content_type_list
View file @
0a24bdf0
...
@@ -2,6 +2,7 @@ Budget Line | Budget Cell
...
@@ -2,6 +2,7 @@ Budget Line | Budget Cell
Budget Model Module | Budget Model
Budget Model Module | Budget Model
Budget Model | Category Budget Variation
Budget Model | Category Budget Variation
Budget Model | Node Budget Variation
Budget Model | Node Budget Variation
Budget Model | Time Budget Variation
Budget Module | Budget
Budget Module | Budget
Budget Transaction Module | Budget Transaction
Budget Transaction Module | Budget Transaction
Budget Transfer | Budget Transfer Line
Budget Transfer | Budget Transfer Line
...
...
bt5/erp5_budget/bt/template_portal_type_id_list
View file @
0a24bdf0
...
@@ -10,5 +10,6 @@ Budget Transfer
...
@@ -10,5 +10,6 @@ Budget Transfer
Budget Transfer Line
Budget Transfer Line
Category Budget Variation
Category Budget Variation
Node Budget Variation
Node Budget Variation
Time Budget Variation
Transaction Quantity Value Feasability Constraint
Transaction Quantity Value Feasability Constraint
Transaction Quantity Value Validity Constraint
Transaction Quantity Value Validity Constraint
\ No newline at end of file
bt5/erp5_budget/bt/template_portal_type_workflow_chain_list
View file @
0a24bdf0
...
@@ -13,5 +13,6 @@ Budget | budget_workflow
...
@@ -13,5 +13,6 @@ Budget | budget_workflow
Budget | edit_workflow
Budget | edit_workflow
Category Budget Variation | edit_workflow
Category Budget Variation | edit_workflow
Node Budget Variation | edit_workflow
Node Budget Variation | edit_workflow
Time Budget Variation | edit_workflow
Transaction Quantity Value Feasability Constraint | dynamic_class_generation_interaction_workflow
Transaction Quantity Value Feasability Constraint | dynamic_class_generation_interaction_workflow
Transaction Quantity Value Validity Constraint | dynamic_class_generation_interaction_workflow
Transaction Quantity Value Validity Constraint | dynamic_class_generation_interaction_workflow
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment